package com.slcf.controller;
|
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpServletRequest;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
import com.slcf.pojo.UserBean;
|
import com.slcf.bean.AdjDetailCondition;
|
import com.slcf.bean.LocDetailCondition;
|
import com.slcf.pojo.AdjDetailBean;
|
import com.slcf.pojo.LocDetailBean;
|
import com.slcf.pojo.LocationBean;
|
import com.slcf.pojo.MatCodeBean;
|
import com.slcf.pojo.SysLogBean;
|
import com.slcf.service.AdjDetailService;
|
import com.slcf.service.LocDetailService;
|
import com.slcf.service.MatCodeService;
|
import com.slcf.service.RoleService;
|
import com.slcf.service.LocationService;
|
import com.slcf.service.SysLogService;
|
import com.slcf.util.AuthorityCode;
|
|
/**
|
* 库存调整控制器层
|
* @author admin
|
* @date 2018年11月15日
|
*/
|
@Controller
|
@RequestMapping("/stock")
|
public class AdjDetailController {
|
|
@Resource
|
AdjDetailService adjDetailService;
|
@Autowired
|
LocDetailService locDetailService;
|
@Autowired
|
MatCodeService matCodeService;
|
@Autowired
|
LocationService locationService;
|
@Autowired
|
SysLogService sysLogService;
|
@Autowired
|
RoleService roleService;
|
|
@RequestMapping("goAdjDetail.action")
|
public String goAdjDetailPage(HttpServletRequest request){
|
try {
|
String rid = request.getSession().getAttribute("ROLEID").toString();
|
String authCode = roleService.getAuthListByRoleMenu(Integer.parseInt(rid),
|
AuthorityCode.AdjDetailCode);
|
request.getSession().setAttribute("AUTHCODE",authCode);
|
// 插入日志
|
UserBean user = (UserBean) request.getSession().getAttribute("USER");
|
SysLogBean sysLog = new SysLogBean();
|
sysLog.setLogin_no(user.getUser_account());
|
sysLog.setMachine_ip(request.getRemoteAddr());
|
sysLog.setForm_no("goAdjDetail.action");
|
sysLog.setTts_keyname("访问:库存调整");
|
sysLog.setModi_user(user.getUser_account());
|
sysLogService.insertSysLog(sysLog);
|
}catch (Exception e) {
|
System.out.println(e.getMessage());
|
}
|
return "adjDetail";
|
}
|
|
/**
|
* 添加
|
* @param adjDetail
|
* @param request
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/insertAdjLoc.action")
|
public Integer insertAdjLoc(AdjDetailCondition adjDetailCon,HttpServletRequest request){
|
int result=0;
|
try {
|
UserBean user=(UserBean)request.getSession().getAttribute("USER");
|
if(adjDetailCon != null) {
|
LocDetailBean detail = locDetailService.queryLocDetailById(adjDetailCon.getLoc_no(), adjDetailCon.getMat_no());
|
if(detail!=null) {//修改
|
int s_qty = detail.getQty();
|
int s_ctns = detail.getCtns();
|
double s_wt = detail.getWt();
|
detail.setQty(s_qty + adjDetailCon.getAdj_qty());
|
detail.setCtns(s_ctns + adjDetailCon.getAdj_ctns());
|
detail.setWt(s_wt + adjDetailCon.getAdj_wt());
|
detail.setMemo(adjDetailCon.getMemo());
|
result = locDetailService.upLocDetail(detail);
|
|
if(result>0) {
|
AdjDetailBean adjDetail = new AdjDetailBean();
|
adjDetail.setLoc_no(adjDetailCon.getLoc_no());
|
adjDetail.setMat_no(adjDetailCon.getMat_no());
|
adjDetail.setS_qty(s_qty);
|
adjDetail.setS_ctns(s_ctns);
|
adjDetail.setS_wt(s_wt);
|
adjDetail.setAdj_qty(adjDetailCon.getAdj_qty());
|
adjDetail.setAdj_ctns(adjDetailCon.getAdj_ctns());
|
adjDetail.setAdj_wt(adjDetailCon.getAdj_wt());
|
adjDetail.setQty(detail.getQty());
|
adjDetail.setCtns(detail.getCtns());
|
adjDetail.setWt(detail.getWt());
|
adjDetail.setMemo(adjDetailCon.getMemo());
|
adjDetail.setModi_user(user.getUser_account());
|
adjDetailService.insertAdjDetail(adjDetail);
|
}
|
}
|
else {//插入
|
LocDetailBean locDetail = new LocDetailBean();
|
locDetail.setLoc_no(adjDetailCon.getLoc_no());
|
locDetail.setMat_no(adjDetailCon.getMat_no());
|
locDetail.setQty(adjDetailCon.getAdj_qty());
|
locDetail.setCtns(adjDetailCon.getAdj_ctns());
|
locDetail.setWt(adjDetailCon.getAdj_wt());
|
locDetail.setMemo(adjDetailCon.getMemo());
|
locDetail.setModi_user(user.getUser_account());
|
result = locDetailService.insertLocDetail(locDetail);
|
|
if(result>0) {
|
AdjDetailBean adjDetail = new AdjDetailBean();
|
adjDetail.setLoc_no(adjDetailCon.getLoc_no());
|
adjDetail.setMat_no(adjDetailCon.getMat_no());
|
adjDetail.setS_qty(0);
|
adjDetail.setS_ctns(0);
|
adjDetail.setS_wt(0);
|
adjDetail.setAdj_qty(adjDetailCon.getAdj_qty());
|
adjDetail.setAdj_ctns(adjDetailCon.getAdj_ctns());
|
adjDetail.setAdj_wt(adjDetailCon.getAdj_wt());
|
adjDetail.setQty(adjDetailCon.getAdj_qty());
|
adjDetail.setCtns(adjDetailCon.getAdj_ctns());
|
adjDetail.setWt(adjDetailCon.getAdj_wt());
|
adjDetail.setMemo(adjDetailCon.getMemo());
|
adjDetail.setModi_user(user.getUser_account());
|
adjDetailService.insertAdjDetail(adjDetail);
|
}
|
}
|
|
}
|
|
if(result>0) {
|
// 插入日志
|
// UserBean user = (UserBean) request.getSession().getAttribute("USER");
|
SysLogBean sysLog = new SysLogBean();
|
sysLog.setLogin_no(user.getUser_account());
|
sysLog.setMachine_ip(request.getRemoteAddr());
|
sysLog.setForm_no("insertAdjLoc.action");
|
sysLog.setTts_keyname("库存调整插入明细:" + adjDetailCon.getLoc_no() + "-"+ adjDetailCon.getMat_no());
|
sysLog.setModi_user(user.getUser_account());
|
sysLogService.insertSysLog(sysLog);
|
}
|
}catch(Exception e) {
|
System.out.println(e.getMessage());
|
result=0;
|
}
|
return result;
|
}
|
|
/**
|
* 分页查询所有
|
* @param pageNumber
|
* @param pageSize
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/adjLocList.action")
|
public Map<String,Object> queryLocDetailListByPages(LocDetailCondition locDetailCon){
|
if(locDetailCon.getLoc_no()==null || locDetailCon.getLoc_no().equals("")) {
|
return null;
|
}
|
Map<String,Object>map=locDetailService.queryLocDetailList(locDetailCon);
|
return map;
|
}
|
|
/**
|
* 分页查询所有
|
* @param pageNumber
|
* @param pageSize
|
* @return
|
*/
|
// @ResponseBody
|
// @RequestMapping("/adjDetailList.action")
|
// public Map<String,Object> queryAdjDetailListByPages(AdjDetailCondition adjDetailCon){
|
// Map<String,Object>map=adjDetailService.queryAdjDetailList(adjDetailCon);
|
// return map;
|
// }
|
|
/**
|
* 根据id查询信息
|
* @param id
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/queryAdjDetailById.action")
|
public AdjDetailBean queryAdjDetailById(@RequestParam("did")int id){
|
try {
|
return adjDetailService.queryAdjDetailById(id);
|
}catch(Exception e) {
|
System.out.println(e.getMessage());
|
return null;
|
}
|
}
|
|
/**
|
* 根据id查询信息
|
* @param id
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/queryAdjLocById.action")
|
public LocDetailBean queryAdjLocById(@RequestParam("loc_no")String loc_no,
|
@RequestParam("mat_no")String mat_no,HttpServletRequest request){
|
try {
|
return locDetailService.queryLocDetailById(loc_no, mat_no);
|
}catch(Exception e) {
|
System.out.println(e.getMessage());
|
return null;
|
}
|
}
|
|
/**
|
* 验证物料编号是否存在
|
* @param did
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/checkCode.action")
|
public Map<String,Object> checkMatCode(@RequestParam("did")String id,@RequestParam("loc_no")String loc_no){
|
Map<String,Object> map=new HashMap<String, Object>();
|
// boolean flag=userService.validUserAccount(account, uid);
|
try {
|
MatCodeBean matCode = matCodeService.queryMatCodeById(id);
|
LocationBean location = locationService.queryLocationById(loc_no);
|
if(matCode!=null && location!=null){
|
map.put("msg", "代号可用");
|
}else{
|
map.put("msg", "库位号/物料号不存在");
|
}
|
}catch(Exception e) {
|
System.out.println(e.getMessage());
|
}
|
return map;
|
}
|
|
/**
|
* 验证代号是否唯一
|
* @param did
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/checkAdjDetail.action")
|
public Map<String,Object> checkAdjDetail(@RequestParam("did")int id){
|
Map<String,Object> map=new HashMap<String, Object>();
|
// boolean flag=userService.validUserAccount(account, uid);
|
try {
|
AdjDetailBean AdjDetail = adjDetailService.queryAdjDetailById(id);
|
if(AdjDetail==null){
|
map.put("msg", "代号可用");
|
}else{
|
map.put("msg", "代号不可用");
|
}
|
}catch(Exception e) {
|
System.out.println(e.getMessage());
|
}
|
return map;
|
}
|
|
/**
|
* 修改信息
|
* @param adjDetailCon
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/upAdjDetail.action")
|
public Integer upAdjDetail(AdjDetailCondition adjDetailCon,HttpServletRequest request){
|
int result = 0;
|
try {
|
UserBean user=(UserBean)request.getSession().getAttribute("USER");
|
String loc_no = adjDetailCon.getLoc_no();
|
String mat_no = adjDetailCon.getMat_no();
|
LocDetailBean locDetail = locDetailService.queryLocDetailById(loc_no, mat_no);
|
if (locDetail != null) {
|
if(adjDetailCon.getAdj_qty()!=0) {
|
int qty = locDetail.getQty()>=adjDetailCon.getAdj_qty() ? (locDetail.getQty() + adjDetailCon.getAdj_qty()) : 0;
|
locDetail.setQty(qty);
|
}
|
if(adjDetailCon.getAdj_ctns()!=0) {
|
int ctns = locDetail.getCtns()>=adjDetailCon.getAdj_ctns() ? (locDetail.getCtns() + adjDetailCon.getAdj_ctns()) : 0;
|
locDetail.setCtns(ctns);
|
}
|
if(adjDetailCon.getAdj_wt()!=0 ) {
|
double wt = locDetail.getWt()>=adjDetailCon.getAdj_wt() ? (locDetail.getWt() + adjDetailCon.getAdj_wt()) : 0;
|
locDetail.setWt(wt);
|
}
|
locDetail.setMemo(adjDetailCon.getMemo());
|
result = locDetailService.upLocDetail(locDetail);
|
|
if(result>0) {
|
AdjDetailBean adjDetail = new AdjDetailBean();
|
adjDetail.setLoc_no(loc_no);
|
adjDetail.setMat_no(mat_no);
|
|
adjDetail.setS_qty(adjDetailCon.getQty());
|
adjDetail.setS_ctns(adjDetailCon.getCtns());
|
adjDetail.setS_wt(adjDetailCon.getWt());
|
adjDetail.setAdj_qty(adjDetailCon.getAdj_qty());
|
adjDetail.setAdj_ctns(adjDetailCon.getAdj_ctns());
|
adjDetail.setAdj_wt(adjDetailCon.getAdj_wt());
|
adjDetail.setQty(locDetail.getQty());
|
adjDetail.setCtns(locDetail.getCtns());
|
adjDetail.setWt(locDetail.getWt());
|
adjDetail.setMemo(adjDetailCon.getMemo());
|
adjDetail.setModi_user(user.getUser_account());
|
adjDetailService.insertAdjDetail(adjDetail);
|
}
|
}
|
|
if(result>0) {
|
// 插入日志
|
// UserBean user = (UserBean) request.getSession().getAttribute("USER");
|
SysLogBean sysLog = new SysLogBean();
|
sysLog.setLogin_no(user.getUser_account());
|
sysLog.setMachine_ip(request.getRemoteAddr());
|
sysLog.setForm_no("upAdjDetail.action");
|
sysLog.setTts_keyname("库存调整修改明细:" + adjDetailCon.getLoc_no() + "-"+ adjDetailCon.getMat_no());
|
sysLog.setModi_user(user.getUser_account());
|
sysLogService.insertSysLog(sysLog);
|
}
|
}catch(Exception e) {
|
System.out.println(e.getMessage());
|
}
|
return result;
|
}
|
|
/**
|
* 删除信息
|
* @param id
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/delAdjDetl.action")
|
public int delAdjDetail(@RequestParam("loc_no")String loc_no,
|
@RequestParam("mat_no")String mat_no,HttpServletRequest request){
|
int result = 0;
|
UserBean user = (UserBean) request.getSession().getAttribute("USER");
|
try {
|
LocDetailBean locDetail = locDetailService.queryLocDetailById(loc_no, mat_no);
|
if (locDetail != null) {
|
result = locDetailService.delLocDetail(loc_no, mat_no);
|
|
if(result>0) {
|
AdjDetailBean adjDetail = new AdjDetailBean();
|
adjDetail.setLoc_no(loc_no);
|
adjDetail.setMat_no(mat_no);
|
|
adjDetail.setS_qty(locDetail.getQty());
|
adjDetail.setS_ctns(locDetail.getCtns());
|
adjDetail.setS_wt(locDetail.getWt());
|
adjDetail.setAdj_qty(0-locDetail.getQty());
|
adjDetail.setAdj_ctns(0-locDetail.getCtns());
|
adjDetail.setAdj_wt(0-locDetail.getWt());
|
adjDetail.setQty(0);
|
adjDetail.setCtns(0);
|
adjDetail.setWt(0);
|
// adjDetail.setMemo("");
|
adjDetail.setModi_user(user.getUser_account());
|
adjDetailService.insertAdjDetail(adjDetail);
|
}
|
}
|
|
if(result>0) {
|
// 插入日志
|
// UserBean user = (UserBean) request.getSession().getAttribute("USER");
|
SysLogBean sysLog = new SysLogBean();
|
sysLog.setLogin_no(user.getUser_account());
|
sysLog.setMachine_ip(request.getRemoteAddr());
|
sysLog.setForm_no("delAdjDetail.action");
|
sysLog.setTts_keyname("库存调整删除明细:" + loc_no+"-"+mat_no);
|
sysLog.setModi_user(user.getUser_account());
|
sysLogService.insertSysLog(sysLog);
|
}
|
}catch(Exception e) {
|
System.out.println(e.getMessage());
|
}
|
return result;
|
}
|
|
/**
|
* 查询所有
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/getAdjDetail.action")
|
public List<AdjDetailBean> getAdjDetail(){
|
try {
|
return adjDetailService.getAdjDetailList();
|
}catch(Exception e) {
|
System.out.println(e.getMessage());
|
return null;
|
}
|
}
|
|
}
|