From 2be455062a2161e9c7eebcecbf47b075f78cb031 Mon Sep 17 00:00:00 2001 From: mrzhssss <pro6@qq.com> Date: 星期三, 16 三月 2022 15:12:24 +0800 Subject: [PATCH] # --- src/main/java/zy/cloud/wms/manager/controller/ReceiveDetlController.java | 93 +++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 90 insertions(+), 3 deletions(-) diff --git a/src/main/java/zy/cloud/wms/manager/controller/ReceiveDetlController.java b/src/main/java/zy/cloud/wms/manager/controller/ReceiveDetlController.java index 65af884..0dc4932 100644 --- a/src/main/java/zy/cloud/wms/manager/controller/ReceiveDetlController.java +++ b/src/main/java/zy/cloud/wms/manager/controller/ReceiveDetlController.java @@ -6,7 +6,13 @@ import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.plugins.Page; import com.core.common.DateUtils; +import zy.cloud.wms.manager.entity.LocDetl; +import zy.cloud.wms.manager.entity.Node; import zy.cloud.wms.manager.entity.ReceiveDetl; +import zy.cloud.wms.manager.entity.ReceiveLog; +import zy.cloud.wms.manager.entity.dto.PutShelfDTO; +import zy.cloud.wms.manager.service.LocDetlService; +import zy.cloud.wms.manager.service.NodeService; import zy.cloud.wms.manager.service.ReceiveDetlService; import com.core.annotations.ManagerAuth; import com.core.common.BaseRes; @@ -15,6 +21,7 @@ import zy.cloud.wms.common.web.BaseController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import zy.cloud.wms.manager.service.ReceiveLogService; import java.util.*; @@ -23,6 +30,12 @@ @Autowired private ReceiveDetlService receiveDetlService; + @Autowired + private LocDetlService locDetlService; + @Autowired + private NodeService nodeService; + @Autowired + private ReceiveLogService receiveLogService; @RequestMapping(value = "/receiveDetl/{id}/auth") @ManagerAuth @@ -120,10 +133,84 @@ return R.ok(); } + /** + * 涓婃灦鍔ㄤ綔,鎻掑叆搴撳瓨鏄庣粏,鏇存柊鍗曟嵁鏄庣粏 + * @param putShelfDTO + * @return + */ @RequestMapping("/receiveDetl/addIn") - public R addIn(@RequestBody ReceiveDetl receiveDetl){ - System.out.println("receiveDetl = " + receiveDetl); - return R.ok(); + @ManagerAuth + public R addIn(@RequestBody PutShelfDTO putShelfDTO){ + /** + * 鎺х涓庢暟鎹垵濮嬪寲 + */ + if (Cools.isEmpty(putShelfDTO.getId(),putShelfDTO.getBatch(),putShelfDTO.getRemain(),putShelfDTO.getSelect())){ + return R.error("杈撳叆鏁版嵁鏈夎,璇烽噸鏂拌緭鍏�"); + } + Date date = new Date(); + double remain = Double.parseDouble(putShelfDTO.getRemain()); + double anfme = Double.parseDouble(putShelfDTO.getAnfme()); + double inQty = Double.parseDouble(putShelfDTO.getInQty()); + if (anfme - (remain + inQty) < 0){ + return R.error("鏈鍏ュ簱鏁伴噺澶т簬鎵�闇�鍏ュ簱鏁伴噺"); + } + Node targetLoc = nodeService.selectOne(new EntityWrapper<Node>() + .eq("id", putShelfDTO.getSelect())); + + + /** + * 鏇存柊搴撳瓨 + */ + LocDetl checkLoc = locDetlService.selectOne(new EntityWrapper<LocDetl>() + .eq("loc_no", targetLoc.getName()) + .eq("matnr", putShelfDTO.getMatnr()) + .eq("batch", putShelfDTO.getBatch())); + if (Cools.isEmpty(checkLoc)) { + LocDetl locDetl = new LocDetl(); + locDetl.setHostId(getHostId()); + locDetl.setLocNo(targetLoc.getName()); + locDetl.setNodeId(targetLoc.getId()); + locDetl.setAnfme(remain); + locDetl.setMatnr(putShelfDTO.getMatnr()); + locDetl.setMaktx(putShelfDTO.getMaktx()); + locDetl.setCreateBy(getUserId()); + locDetl.setCreateTime(date); + locDetl.setUpdateBy(getUserId()); + locDetl.setUpdateTime(date); + locDetl.setBatch(putShelfDTO.getBatch()); + locDetlService.insert(locDetl); + }else { + checkLoc.setAnfme(checkLoc.getAnfme() + remain); + locDetlService.update(checkLoc,new EntityWrapper<LocDetl>() + .eq("loc_no", targetLoc.getName()) + .eq("matnr", putShelfDTO.getMatnr()) + .eq("batch", putShelfDTO.getBatch())); + } + + /** + * 鍙嶅啓璁㈠崟鏁伴噺 + */ + + ReceiveDetl targetRece = receiveDetlService.selectOne(new EntityWrapper<ReceiveDetl>() + .eq("id", putShelfDTO.getId())); + targetRece.setInQty((int) (targetRece.getInQty() + remain)); + receiveDetlService.update(targetRece,new EntityWrapper<ReceiveDetl>() + .eq("id",targetRece.getId())); + + /** + * 涓婃灦瀹屾垚涔嬪悗,瀛樻斁鏁版嵁鑷充笂鏋剁粺璁¤〃 man_receive_log + */ + ReceiveLog receiveLog = new ReceiveLog(); + receiveLog.setOrderNo(putShelfDTO.getOrderNo()); + receiveLog.setNodeId(targetLoc.getId()); + receiveLog.setNodeName(targetLoc.getName()); + receiveLog.setMatnr(putShelfDTO.getMatnr()); + receiveLog.setAnfme(remain); + receiveLog.setBatch(putShelfDTO.getBatch()); + receiveLog.setCreateBy(getUserId()); + receiveLog.setUpdateBy(getUserId()); + receiveLogService.insert(receiveLog); + return R.ok("娣诲姞鎴愬姛"); } } -- Gitblit v1.9.1