From d17c089f1d7ff3be848b05161917346e7f664a1d Mon Sep 17 00:00:00 2001 From: mrzhssss <pro6@qq.com> Date: 星期二, 26 四月 2022 15:17:53 +0800 Subject: [PATCH] # --- src/main/java/zy/cloud/wms/manager/controller/ReceiveDetlController.java | 113 +++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 99 insertions(+), 14 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 0dc4932..d4335cb 100644 --- a/src/main/java/zy/cloud/wms/manager/controller/ReceiveDetlController.java +++ b/src/main/java/zy/cloud/wms/manager/controller/ReceiveDetlController.java @@ -6,14 +6,10 @@ 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 org.springframework.transaction.annotation.Transactional; +import zy.cloud.wms.manager.entity.*; 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 zy.cloud.wms.manager.service.*; import com.core.annotations.ManagerAuth; import com.core.common.BaseRes; import com.core.common.Cools; @@ -21,7 +17,6 @@ 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.*; @@ -36,6 +31,8 @@ private NodeService nodeService; @Autowired private ReceiveLogService receiveLogService; + @Autowired + private ReceiveService receiveService; @RequestMapping(value = "/receiveDetl/{id}/auth") @ManagerAuth @@ -43,7 +40,7 @@ return R.ok(receiveDetlService.selectById(String.valueOf(id))); } - @RequestMapping(value = "/receiveDetl/list/auth") + @RequestMapping(value ="/receiveDetl/list/auth") @ManagerAuth public R list(@RequestParam(defaultValue = "1")Integer curr, @RequestParam(defaultValue = "10")Integer limit, @@ -51,10 +48,11 @@ @RequestParam(required = false)String orderByType, @RequestParam Map<String, Object> param){ EntityWrapper<ReceiveDetl> wrapper = new EntityWrapper<>(); + param.values(); excludeTrash(param); convert(param, wrapper); if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} - return R.ok(receiveDetlService.selectPage(new Page<>(curr, limit), wrapper)); + return R.ok(receiveDetlService.selectPage(new Page<>(curr, limit), wrapper.orderBy("id",false))); } private void convert(Map<String, Object> map, EntityWrapper wrapper){ @@ -144,7 +142,7 @@ /** * 鎺х涓庢暟鎹垵濮嬪寲 */ - if (Cools.isEmpty(putShelfDTO.getId(),putShelfDTO.getBatch(),putShelfDTO.getRemain(),putShelfDTO.getSelect())){ + if (Cools.isEmpty(putShelfDTO.getId(),putShelfDTO.getRemain(),putShelfDTO.getSelect())){ return R.error("杈撳叆鏁版嵁鏈夎,璇烽噸鏂拌緭鍏�"); } Date date = new Date(); @@ -156,8 +154,6 @@ } Node targetLoc = nodeService.selectOne(new EntityWrapper<Node>() .eq("id", putShelfDTO.getSelect())); - - /** * 鏇存柊搴撳瓨 */ @@ -193,10 +189,43 @@ ReceiveDetl targetRece = receiveDetlService.selectOne(new EntityWrapper<ReceiveDetl>() .eq("id", putShelfDTO.getId())); - targetRece.setInQty((int) (targetRece.getInQty() + remain)); + targetRece.setInQty((targetRece.getInQty() + remain)); receiveDetlService.update(targetRece,new EntityWrapper<ReceiveDetl>() .eq("id",targetRece.getId())); + /** + * 鍙嶅啓璁㈠崟鐘舵�� + */ + if(!Cools.isEmpty(putShelfDTO.getOrderNo())){ + List<ReceiveDetl> list = receiveDetlService.selectList(new EntityWrapper<ReceiveDetl>().eq("order_no",putShelfDTO.getOrderNo())); + boolean flag = true; + if(list.size()>0){ + for (ReceiveDetl receiveDetl : list){ + if(receiveDetl.getInQty() < receiveDetl.getCount()){ + flag = false; + break; + } + } + } + + if(flag){ + Receive receive = receiveService.selectOne(new EntityWrapper<Receive>().eq("order_no",putShelfDTO.getOrderNo())); + receive.setSettle(Long.valueOf(4)); + receiveService.updateById(receive); + } +// ReceiveDetl receiveDetl = receiveDetlService.selectOne(new EntityWrapper<ReceiveDetl>().eq("order_no",putShelfDTO.getOrderNo()).eq("matnr",putShelfDTO.getMatnr())); +// for(int i=0;i<list.size();i++){ +// if(list.get(i).getMatnr().equals(receiveDetl.getMatnr())){ +// if(list.get(i).getInQty()>=list.get(i).getCount()){ +// Receive receive = receiveService.selectOne(new EntityWrapper<Receive>().eq("order_no",putShelfDTO.getOrderNo())); +// receive.setSettle(Long.valueOf(4)); +// receiveService.updateById(receive); +// break; +// } +// } +// } + + } /** * 涓婃灦瀹屾垚涔嬪悗,瀛樻斁鏁版嵁鑷充笂鏋剁粺璁¤〃 man_receive_log */ @@ -209,8 +238,64 @@ receiveLog.setBatch(putShelfDTO.getBatch()); receiveLog.setCreateBy(getUserId()); receiveLog.setUpdateBy(getUserId()); + receiveLog.setIoType(1); receiveLogService.insert(receiveLog); return R.ok("娣诲姞鎴愬姛"); } + /** + * 鎾ら攢涓婃灦鎿嶄綔 + */ + @RequestMapping("/receiveDetl/renew/auth") + @ManagerAuth + @Transactional + public R renew(@RequestBody ReceiveDetl receiveDetl){ + /** + * 鎺х + */ + if (receiveDetl.getInQty() <= 0){ + return R.error("娌℃湁涓婃灦璁板綍,鏃犳硶鎾ゅ洖"); + } + Receive receive = receiveService.selectOne(new EntityWrapper<Receive>() + .eq("id", receiveDetl.getOrderId())); + if (Cools.isEmpty(receive)) { + return R.error("鎵句笉鍒拌鍗曟嵁,璇疯仈绯荤鐞嗗憳"); + } + if (receive.getSettle() == 4){ + return R.error("璇ュ崟鎹凡缁忓畬缁�"); + } + + /** + * 淇敼搴撳瓨鏁伴噺,鍚屾椂鎾ゅ洖涓婃灦瀹屾垚鍚�,灏嗘搷浣滆褰曞弽鍐欏洖涓婃灦缁熻琛� man_receive_log + */ + List<ReceiveLog> receiveLogs = receiveLogService.selectList(new EntityWrapper<ReceiveLog>() + .eq("order_no", receiveDetl.getOrderNo()) + .eq("matnr", receiveDetl.getMatnr()) + .eq("batch", receiveDetl.getBatch()) + .eq("io_type", 1)); + if (Cools.isEmpty(receiveLogs)) { + return R.error("鎵句笉鍒板叆搴撹褰�"); + } + for (ReceiveLog receiveLog : receiveLogs) { + locDetlService.delete(new EntityWrapper<LocDetl>() + .eq("loc_no",receiveLog.getNodeName()) + .eq("matnr",receiveLog.getMatnr()) + .eq("batch",receiveLog.getBatch())); + receiveLog.setIoType(101); + receiveLog.setCreateBy(getUserId()); + receiveLog.setUpdateBy(getUserId()); + receiveLogService.insert(receiveLog); + } + + /** + * 鍙嶅啓鍥炲叆搴撴。 + */ + receiveDetl.setInQty(0.0); + receiveDetl.setUpdateTime(new Date()); + receiveDetl.setUpdateBy(getUserId()); + receiveDetlService.update(receiveDetl,new EntityWrapper<ReceiveDetl>() + .eq("id",receiveDetl.getId())); + return R.ok("鎾ゅ洖鎴愬姛"); + } + } -- Gitblit v1.9.1