From 6d47cee06ff442e5277a6629b2a7350613077029 Mon Sep 17 00:00:00 2001 From: zc <zc> Date: 星期一, 29 七月 2024 14:33:03 +0800 Subject: [PATCH] 订单组托代码 --- src/main/java/com/zy/asrs/entity/param/CombParam.java | 7 +++ src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 67 +++++++++++++++++++-------------- src/main/java/com/zy/asrs/controller/MobileController.java | 11 +++++ src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java | 1 src/main/java/com/zy/asrs/controller/WorkController.java | 14 +++--- 5 files changed, 63 insertions(+), 37 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java index e3c19d1..cff4b1d 100644 --- a/src/main/java/com/zy/asrs/controller/MobileController.java +++ b/src/main/java/com/zy/asrs/controller/MobileController.java @@ -150,6 +150,15 @@ @RequestMapping("/comb/auth") @ManagerAuth(memo = "缁勬墭") public R comb(@RequestBody CombParam combParam) { + if (Cools.isEmpty(combParam.getOrderNo())) { + combParam.setOrderNo(combParam.getBillNo()); + } + List<CombParam.CombMat> combMats = combParam.getCombMats(); + combMats.forEach(elem -> { + if (Cools.isEmpty(elem.getBatch())) { + elem.setBatch(elem.getItemBatch()); + } + }); System.out.println(combParam); mobileService.comb(combParam, getUserId()); return R.ok("缁勬墭鎴愬姛"); @@ -422,7 +431,7 @@ System.out.println("-------------------------"); System.out.println(billNo); System.out.println(size); - List<OrderDetl> waitMatins = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", billNo).like("model", size).last("and anfme > work_qty")); + List<OrderDetl> waitMatins = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("pg_no", billNo).like("model", size).last("and anfme > work_qty")); // List<WaitMatin> waitMatins = waitMatinService.selectList(new EntityWrapper<WaitMatin>().eq("bill_no", billNo).last("and qty > in_qty")); //濡傛灉閫氱煡鍗曞崟鍙蜂负绌猴紝鍒欐煡璇㈣皟鎷ㄥ崟鍙� diff --git a/src/main/java/com/zy/asrs/controller/WorkController.java b/src/main/java/com/zy/asrs/controller/WorkController.java index 8b6a223..fc62677 100644 --- a/src/main/java/com/zy/asrs/controller/WorkController.java +++ b/src/main/java/com/zy/asrs/controller/WorkController.java @@ -58,13 +58,13 @@ map.put("desc", siteId + "锛堝叏鏉垮嚭搴撳彛锛�"); result.add(map); } - List<Integer> pickOutSite = basDevpService.getAvailableOutSite(103); - for (Integer siteId : pickOutSite) { - Map<String, Object> map = new HashMap<>(); - map.put("siteId", siteId); - map.put("desc", siteId + "锛堟嫞鏂欏嚭搴撳彛锛�"); - result.add(map); - } +// List<Integer> pickOutSite = basDevpService.getAvailableOutSite(103); +// for (Integer siteId : pickOutSite) { +// Map<String, Object> map = new HashMap<>(); +// map.put("siteId", siteId); +// map.put("desc", siteId + "锛堟嫞鏂欏嚭搴撳彛锛�"); +// result.add(map); +// } return R.ok().add(result); } diff --git a/src/main/java/com/zy/asrs/entity/param/CombParam.java b/src/main/java/com/zy/asrs/entity/param/CombParam.java index d1d5cfd..472fe59 100644 --- a/src/main/java/com/zy/asrs/entity/param/CombParam.java +++ b/src/main/java/com/zy/asrs/entity/param/CombParam.java @@ -12,6 +12,9 @@ public class CombParam { // 鍗曟嵁缂栧彿 + private String billNo; + + // 鍗曟嵁缂栧彿 private String orderNo; // 鎵樼洏鏉$爜 @@ -28,6 +31,10 @@ // 鐗╂枡缂栧彿 private String matnr; + + // 搴忓垪鐮� + private String itemBatch; + // 搴忓垪鐮� private String batch; diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java index 52b1e21..07bd873 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -94,16 +94,16 @@ throw new CoolException(param.getBarcode() + "鏁版嵁姝e湪杩涜鍏ュ簱"); } - if(param.getBarcode().length()!=8){ + if (param.getBarcode().length() != 8) { throw new CoolException("鏉$爜闀垮害涓嶆槸8浣�===>>" + param.getBarcode()); } // if (param.getCombMats().size()>1){ // throw new CoolException("涓嶅厑璁告贩鏂�===>>" + param.getBarcode()); // } - int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode())); - int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode())); - int countwait = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",param.getBarcode())); + int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", param.getBarcode())); + int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet", param.getBarcode())); + int countwait = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBarcode())); if (countLoc > 0 || countWrk > 0 || countwait > 0) { throw new CoolException("缁勬墭妗�/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + param.getBarcode()); } @@ -147,9 +147,13 @@ throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�"); } } - // 鍏宠仈缁勬墭 + // 鍏宠仈缁勬墭 } else { - Order order = orderService.selectByNo(param.getOrderNo()); + List<OrderDetl> pg_no = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("pg_no", param.getOrderNo())); + if (pg_no == null || pg_no.isEmpty()) { + throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�"); + } + Order order = orderService.selectByNo(pg_no.get(0).getOrderNo()); if (Cools.isEmpty(order) || order.getSettle() > 2) { throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�"); } @@ -214,15 +218,15 @@ } // 鑾峰彇鍟嗗搧鍒楄〃 - for(CombParam.CombMat combMat : param.getCombMats()){ + for (CombParam.CombMat combMat : param.getCombMats()) { Mat mat = matService.selectByMatnr(combMat.getMatnr()); - if (Cools.isEmpty(mat)){ + if (Cools.isEmpty(mat)) { throw new CoolException(combMat.getMatnr() + ":鍟嗗搧妗f涓嶅瓨鍦紒"); } - if (Cools.isEmpty(combMat.getAnfme()) || combMat.getAnfme()==0){ + if (Cools.isEmpty(combMat.getAnfme()) || combMat.getAnfme() == 0) { throw new CoolException(combMat.getMatnr() + ":鍟嗗搧鏁伴噺鏈夎锛�"); } - if (Cools.isEmpty(combMat.getBatch())){ + if (Cools.isEmpty(combMat.getBatch())) { // throw new CoolException(combMat.getMatnr() + ":鍟嗗搧鎵瑰彿鏈夎锛�"); } ManLocDetl manLocDetl = new ManLocDetl(); @@ -243,16 +247,16 @@ @Override public void offSale(OffSaleParam offSaleParam) { ManLocDetl manLocDetl = manLocDetlMapper.selectLocNo0(offSaleParam.getLocNo(), offSaleParam.getMatnr()); - if (Cools.isEmpty(manLocDetl)){ + if (Cools.isEmpty(manLocDetl)) { throw new CoolException("鏃犳鍟嗗搧锛�"); } double anfme = manLocDetl.getAnfme() - offSaleParam.getAnfme(); if (anfme < 0) { throw new CoolException("鍟嗗搧搴撳瓨涓嶈冻锛�"); - } else if (anfme == 0){ + } else if (anfme == 0) { manLocDetlMapper.deleteLocNo0(offSaleParam.getLocNo(), offSaleParam.getMatnr()); } - manLocDetlMapper.updateAnfme0(anfme,manLocDetl.getNodeId()); + manLocDetlMapper.updateAnfme0(anfme, manLocDetl.getNodeId()); } // 鏌ユ壘鍟嗗搧 @@ -311,7 +315,9 @@ // 娣诲姞鏄庣粏 for (WrkDetl wrkDetl : list) { - if (wrkDetl.getAnfme() == 0.0D) { continue; } + if (wrkDetl.getAnfme() == 0.0D) { + continue; + } // todo 鐩樼偣璁板綍銆佷繚瀛樿皟鏁磋褰� String orderNo = wrkDetl.getOrderNo(); Mat mat = matService.selectByMatnr(wrkDetl.getMatnr()); @@ -327,7 +333,7 @@ } // 淇敼鐩樼偣浠诲姟涓绘。鐘舵�� - wrkMast.setFullPlt(wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()).size() != 0?"Y":"N"); + wrkMast.setFullPlt(wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()).size() != 0 ? "Y" : "N"); wrkMast.setModiTime(now); wrkMast.setModiUser(userId); if (!wrkMastService.updateById(wrkMast)) { @@ -404,10 +410,10 @@ if (jsonObject.getInteger("code").equals(200)) { success = true; } else if (jsonObject.getInteger("code").equals(500)) { - log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL+MesConstant.PACK_DOWN_URL, JSON.toJSONString(mesCombParam), response); + log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL + MesConstant.PACK_DOWN_URL, JSON.toJSONString(mesCombParam), response); throw new CoolException(jsonObject.getString("msg")); } else { - log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL+MesConstant.PACK_DOWN_URL, JSON.toJSONString(mesCombParam), response); + log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL + MesConstant.PACK_DOWN_URL, JSON.toJSONString(mesCombParam), response); throw new CoolException("涓婃姤mes绯荤粺澶辫触"); } } catch (Exception e) { @@ -425,7 +431,9 @@ response, success ); - } catch (Exception e) { log.error("", e); } + } catch (Exception e) { + log.error("", e); + } } } @@ -501,20 +509,21 @@ BasDevp sta = basDevpService.checkSiteStatus(staNo); //鏍规嵁璁㈠崟鍙风敓鎴愬嚭搴撲换鍔″伐浣滄。 - Order order = orderService.selectOne(new EntityWrapper<Order>().eq("order_no", orderNo)); - if (order.getSettle() != 1 && order.getSettle() != 2){ + List<OrderDetl> pg_no = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("pg_no",orderNo)); + Order order = orderService.selectOne(new EntityWrapper<Order>().eq("order_no", pg_no.get(0).getOrderNo())); + if (order.getSettle() != 1 && order.getSettle() != 2) { throw new CoolException("璇ヨ鍗曞凡澶勭悊"); } List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", orderNo)); Date now = new Date(); - for(OrderDetl orderDetl : orderDetls){ + for (OrderDetl orderDetl : orderDetls) { //鏌ヨ鎵�鏈夊簱浣嶇姸鎬佷负F鐨勫簱浣嶄俊鎭� - List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(),orderDetl.getBatch(),null,null); + List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(), orderDetl.getBatch(), null, null); if (locDetls.size() == 0) { throw new CoolException("搴撳瓨涓病鏈夎鐗╂枡"); } - for(LocDetl locDetl : locDetls){ + for (LocDetl locDetl : locDetls) { //濡傛灉璇ュ簱浣嶅嚭搴撹矾绾挎墍鐢ㄧ殑鍫嗗灈鏈簅ut_enable涓嶄负Y,璺宠繃璇ュ惊鐜� LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>() .eq("loc_no", locDetl.getLocNo())); @@ -523,13 +532,13 @@ } BasCrnp crn_no = basCrnpService.selectOne(new EntityWrapper<BasCrnp>() .eq("crn_no", locMast.getCrnNo())); - if (Cools.isEmpty(crn_no) || !crn_no.getOutEnable().equals("Y")){ + if (Cools.isEmpty(crn_no) || !crn_no.getOutEnable().equals("Y")) { continue; } //鍙嚭搴撴暟閲� = 璁㈠崟鏁伴噺 - 浣滀笟涓暟閲� Double outQty = orderDetl.getAnfme() - orderDetl.getWorkQty(); - if(outQty <= 0){ + if (outQty <= 0) { break; } // 鍒ゆ柇鍏ュ嚭搴撶被鍨嬶細101.鍏ㄦ澘鍑哄簱 or 103.鎷f枡鍑哄簱 @@ -541,18 +550,18 @@ order.setSettle(2L); order.setUpdateBy(userId); order.setUpdateTime(now); - if(!orderService.update(order, new EntityWrapper<Order>().eq("order_no", orderNo))){ + if (!orderService.update(order, new EntityWrapper<Order>().eq("order_no", orderNo))) { throw new CoolException("鏇存柊璁㈠崟鐘舵�佸け璐�"); } orderDetl.setWorkQty(orderDetl.getWorkQty() + curOutQty); orderDetl.setUpdateBy(userId); orderDetl.setUpdateTime(now); Wrapper wrapper = new EntityWrapper<OrderDetl>().eq("order_no", orderNo) - .eq("matnr",orderDetl.getMatnr()); - if(!Cools.isEmpty(orderDetl.getBatch())){ + .eq("matnr", orderDetl.getMatnr()); + if (!Cools.isEmpty(orderDetl.getBatch())) { wrapper.eq("batch", orderDetl.getBatch()); } - if(!orderDetlService.update(orderDetl, wrapper)){ + if (!orderDetlService.update(orderDetl, wrapper)) { throw new CoolException("鏇存柊璁㈠崟鏄庣粏澶辫触"); } } diff --git a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java index a0dfd48..9631276 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java @@ -44,6 +44,7 @@ @Transactional public ReturnT<String> start(WrkMast wrkMast) { try { + System.out.println("-----------------------------------------------------"); System.out.println(DateUtils.convert(new Date())); List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); // 淇敼璁㈠崟鐘舵�� 浣滀笟涓� ===>> 宸插畬鎴� -- Gitblit v1.9.1