From cd92182d01a20e85f60f6a5a595506ee8ed31ffc Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期四, 02 十一月 2023 12:05:15 +0800 Subject: [PATCH] 库存统计明细修复 --- src/main/java/com/zy/asrs/controller/MobileController.java | 98 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 97 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java index bae8839..9796c20 100644 --- a/src/main/java/com/zy/asrs/controller/MobileController.java +++ b/src/main/java/com/zy/asrs/controller/MobileController.java @@ -8,6 +8,7 @@ import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.CombParam; import com.zy.asrs.entity.param.MobileAdjustParam; +import com.zy.asrs.entity.param.ModifyPakoutParam; import com.zy.asrs.entity.param.NodePakoutParam; import com.zy.asrs.entity.result.MobileAdjustResult; import com.zy.asrs.service.*; @@ -56,6 +57,10 @@ private MatService matService; @Autowired private WaitPakinService waitPakinService; + @Autowired + private LocRuleService locRuleService; + @Autowired + private NodeService nodeService; // 缁勬墭 ---------------------------------------------------------------------------------------------------- @@ -337,8 +342,26 @@ public R recommendNodeLoc(@RequestBody HashMap<String,String> param){ String zpallet = param.get("zpallet"); + List<WaitPakin> waitPakinList = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", zpallet)); + for (WaitPakin waitPakin : waitPakinList){ + List<LocRule> locRules = locRuleService.find(waitPakin.getMatnr()); + if(!Cools.isEmpty(locRules)){ + if(!Cools.isEmpty(findNodeLoc(locRules))){ + return R.ok(findNodeLoc(locRules)).add(waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet",zpallet))); + } + } - return R.ok("DT-C-010202").add(waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet",zpallet))); + if(!Cools.isEmpty(waitPakin.getBrand())){ + List<LocRule> locCodeRules = locRuleService.find(waitPakin.getBrand().substring(0, 4)); + if(!Cools.isEmpty(locRules)){ + if(!Cools.isEmpty(findNodeLoc(locRules))){ + return R.ok(findNodeLoc(locRules)).add(waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet",zpallet))); + } + } + } + } + + return R.ok("").add(waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet",zpallet))); } @@ -404,6 +427,79 @@ return R.ok("涓婃灦鎴愬姛"); } + @RequestMapping("/check/waitPakin/auth") + @ManagerAuth(memo = "鏌ヨ鎵樼洏鏄惁缁勬墭") + public R waitPakins(@RequestBody String barcode){ + return R.ok().add(waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", barcode))); + } + @RequestMapping("/untie/auth") + @ManagerAuth(memo = "瑙g粦") + public R untie(@RequestBody String barcode){ + List<WaitPakin> waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", barcode)); + for (WaitPakin waitPakin : waitPakins) { + if (!waitPakinService.delete(new EntityWrapper<WaitPakin>().eq("zpallet", barcode))) { + return R.error("瑙g粦澶辫触"); + } + } + return R.ok().add(waitPakins); + } + @RequestMapping("/wrkdetl/auth") + //@ManagerAuth(memo = "鎷f枡淇℃伅") + public R checkWrkDetl(@RequestBody String barcode){ + WrkMast wrkMast = wrkMastService.selectByBarcode(barcode); + if(Cools.isEmpty(wrkMast)){ + return R.error("璇ユ墭鐩樻病鏈夊伐浣滄。"); + } + List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); + return R.ok().add(wrkDetls); + } + + @RequestMapping("/modify/wrkdetl/auth") + //@ManagerAuth(memo = "淇敼鎷f枡淇℃伅") + public R modifyWrkDetl(@RequestBody ModifyPakoutParam param){ + + String barcode = param.getBarcode(); + WrkMast wrkMast = wrkMastService.selectByBarcode(barcode); + List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); + + Double allPakoutAnfme = 0.0; + Double allModifyPakoutAnfme = 0.0; + for (WrkDetl wrkDetl : wrkDetls){ + allPakoutAnfme += wrkDetl.getAnfme(); + } + for (ModifyPakoutParam.CA ca : param.getParams()){ + allModifyPakoutAnfme += ca.getAnfme(); + } + + if(!allPakoutAnfme.equals(allModifyPakoutAnfme)){ + return R.error("淇敼鍚庢嫞鏂欑殑鏁伴噺涓庡師鏁伴噺涓嶇鍚堬紝璇烽噸鏂版牳瀵规嫞鏂欐暟閲�"); + } + + mobileService.modifyWrkDetl(wrkDetls,param.getParams(),getUserId()); + return R.ok(); + + } + + private String findNodeLoc(List<LocRule> locRules){ + for (LocRule locRule : locRules) { + if (Cools.isEmpty(locRule.getOther())) { + continue; + } + EntityWrapper<Node> wrapper = new EntityWrapper<>(); + wrapper.between("row1", locRule.getRowBeg(), locRule.getRowEnd()) + .between("bay1", locRule.getBayBeg(), locRule.getBayEnd()) + .between("lev1", locRule.getLevBeg(), locRule.getLevEnd()) + .eq("parent_name", locRule.getOther()) + .eq("status", "1"); + + Node node = nodeService.selectOne(wrapper); + if (Cools.isEmpty(node)) { + continue; + } + return node.getName(); + } + return null; + } } -- Gitblit v1.9.1