From aa2ef2ef37c7d95cfb1d3833a023328d05ea5060 Mon Sep 17 00:00:00 2001 From: lsh <1> Date: 星期日, 21 一月 2024 15:06:53 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 101 +++++++++++++++++++++----------------------------- 1 files changed, 43 insertions(+), 58 deletions(-) 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 886ec7b..1e23c30 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -83,6 +83,8 @@ private ManLocDetlMapper manLocDetlMapper; @Autowired private DocTypeService docTypeService; + @Autowired + private LocDetlRullUpDetailService locDetlRullUpDetailService; @Override @@ -96,81 +98,53 @@ throw new CoolException("鍙傛暟锛氭墭鐩樼爜涓虹┖"); } } + param.setPalletizingNo(147); + //鍒ゆ柇param鍙傛暟 if (Cools.isEmpty(param.getPalletizingNo())){ - throw new CoolException("鍙傛暟锛氱珯鐐圭紪鍙蜂负绌�"); - }else if (Cools.isEmpty(param.getOrderNo())){ - throw new CoolException("鍙傛暟锛氶��璐у崟鍗曞彿 orderNo涓虹┖"); - }else if (Cools.isEmpty(param.getMatList()) || param.getMatList().size() != 1){ - throw new CoolException("鍙傛暟锛氱墿鏂欐槑缁� matLists涓虹┖"); - }else if (param.getSouSta()==145 || param.getMatList().size() != 1){ - + throw new CoolException("鍙傛暟锛氬師绔欑偣缂栧彿涓虹┖"); + }else if (param.getSouSta()==145 && param.getMatList().size() != 1){ + throw new CoolException("鍙傛暟锛氱墿鏂欐槑缁� matLists涓虹┖ 鎴栬�� 澶т簬1涓槑缁�"); + }else if (Cools.isEmpty(param.getMatList()) || param.getMatList().size() > 2){ + throw new CoolException("鍙傛暟锛氱墿鏂欐槑缁� matLists涓虹┖ 鎴栬�� 澶т簬2涓槑缁�"); } - Order order = orderService.selectByNo(param.getOrderNo()); - if (Cools.isEmpty(order)){ - throw new CoolException("鏈煡璇㈠埌姝よ鍗曪紝鍗曞彿锛�"+param.getOrderNo()); - } - DocType docType = docTypeService.selectById(order.getDocType()); - if (Cools.isEmpty(docType) || !docType.getDocName().equals("閫�璐у叆搴撳崟")){ - throw new CoolException("鍗曞彿锛�"+param.getOrderNo()+"涓嶆槸閫�璐у叆搴撳崟"); - } - - List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId()); - if (Cools.isEmpty(orderDetls) || orderDetls.size()==0){ - throw new CoolException("鏈煡璇㈠埌姝よ鍗曟槑缁嗭紝鍗曞彿锛�"+param.getOrderNo()); - } - List<String> orderBoxNoList = new ArrayList<>(); - for (OrderDetl orderDetl: orderDetls){ - if (orderDetl.getWorkQty()==0){ - orderBoxNoList.add(orderDetl.getBatch()); - } - } - if (orderBoxNoList.size()==0 || orderBoxNoList.size()<param.getMatList().size()){ - throw new CoolException("鍗曞彿锛�"+param.getOrderNo()+" 閫�璐ф暟閲忓ぇ浜庢槑缁嗘暟閲�"); - } - List<String> matListBoxNoList = new ArrayList<>(); - for (TrussCombParam.MatList matList: param.getMatList()){ - if (!orderBoxNoList.contains(matList.getBoxNo())){ - throw new CoolException("鍗曞彿锛�"+param.getOrderNo()+" 绠卞彿锛�"+matList.getBatch()+"涓嶅睘浜庢璁㈠崟鎴栬�呭凡缁忓叆搴�"); - }else { - matListBoxNoList.add(matList.getBoxNo()); - } - } - List<OrderDetl> orderDetlList = new ArrayList<>(); - for (OrderDetl orderDetl: orderDetls){ - if (matListBoxNoList.contains(orderDetl.getBatch())){ - orderDetl.setBrand("1"); - orderDetlList.add(orderDetl); - } - } String matnr = null; List<WaitPakin> waitPakins = new ArrayList<>(); - - for (OrderDetl orderDetl:orderDetlList){ - Mat mat = matService.selectByMatnr(orderDetl.getMatnr()); + for (TrussCombParam.MatList matList:param.getMatList()){ + long rollUp = new Date().getTime(); + Mat mat = matService.selectByMatnr(matList.getMatnr()); if (Cools.isEmpty(mat)) { - throw new CoolException(orderDetl.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�"); + throw new CoolException(matList.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�"); } matnr = mat.getMatnr(); WaitPakin waitPakin = new WaitPakin(); waitPakin.sync(mat); - waitPakin.setModel(orderDetl.getModel()); //鎵规 - waitPakin.setSpecs(orderDetl.getSpecs()); //瑙勬牸 - waitPakin.setBatch(orderDetl.getBatch()); //鏈ㄧ缂栫爜 + waitPakin.setModel(matList.getModel()); //鎵规 + waitPakin.setSpecs(matList.getSpecs()); //瑙勬牸 + waitPakin.setBatch(matList.getBatch()); //鏈ㄧ缂栫爜 waitPakin.setBrand(param.getBoxType()); //鏈ㄧ绫诲瀷 waitPakin.setZpallet(param.getBarcode()); //鎵樼洏鐮� - waitPakin.setOrigin(orderDetl.getOrigin()); //鏈ㄧ鍦ㄦ墭鐩樹笂鐨勪綅缃� + waitPakin.setOrigin(matList.getPosition()); //鏈ㄧ鍦ㄦ墭鐩樹笂鐨勪綅缃� waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵�� - waitPakin.setAnfme(orderDetl.getAnfme()); // 鏈ㄧ涓摐绠旀暟閲� + waitPakin.setAnfme((double)matList.getAnfme()); // 鏈ㄧ涓摐绠旀暟閲� waitPakin.setStatus("Y"); // 鐘舵�� waitPakin.setAppeUser(userId); waitPakin.setAppeTime(now); waitPakin.setModiUser(userId); waitPakin.setModiTime(now); - waitPakin.setRollUp(orderDetl.getRollUp()); + waitPakin.setRollUp(rollUp); + if (!Cools.isEmpty(matList.getMatDetlList())){ + for (TrussCombParam.MatDetlList matDetlList:matList.getMatDetlList()){ + LocDetlRullUpDetail locDetlRullUpDetail = new LocDetlRullUpDetail(); + locDetlRullUpDetail.setUuid(rollUp); + locDetlRullUpDetail.setRollNo(matDetlList.getBoxNoDetl()); + locDetlRullUpDetail.setRollWeight(matDetlList.getWeightDetl().toString()); + locDetlRullUpDetailService.insert(locDetlRullUpDetail); + } + } if (!waitPakinService.insert(waitPakin)) { throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�"); } @@ -180,7 +154,7 @@ LocTypeDto locTypeDto = new LocTypeDto(); locTypeDto.setLocType1((short)1); - StartupDto dto = commonService.getLocNo(1, 1, 145, matnr,null,null, locTypeDto); + StartupDto dto = commonService.getLocNo(1, 1, param.getSouSta(), matnr,null,null, locTypeDto); int workNo = dto.getWorkNo(); // 鐢熸垚宸ヤ綔妗� @@ -240,6 +214,7 @@ public void trussCombOrder(TrussCombParam param, Long userId) { Date now = new Date(); param.setBarcode(String.valueOf(now.getTime())); + param.setPalletizingNo(147); //鍒ゆ柇param鍙傛暟 if (Cools.isEmpty(param.getPalletizingNo())){ @@ -251,8 +226,8 @@ } Order order = orderService.selectByNo(param.getOrderNo()); - if (Cools.isEmpty(order)){ - throw new CoolException("鏈煡璇㈠埌姝よ鍗曪紝鍗曞彿锛�"+param.getOrderNo()); + if (Cools.isEmpty(order) || order.getSettle() > 2) { + throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈燂紝鍗曞彿锛�"+param.getOrderNo()); } DocType docType = docTypeService.selectById(order.getDocType()); if (Cools.isEmpty(docType) || !docType.getDocName().equals("閫�璐у叆搴撳崟")){ @@ -274,9 +249,12 @@ } List<String> matListBoxNoList = new ArrayList<>(); for (TrussCombParam.MatList matList: param.getMatList()){ - if (!orderBoxNoList.contains(matList.getBoxNo())){ + if (!orderBoxNoList.contains(matList.getBatch())){ throw new CoolException("鍗曞彿锛�"+param.getOrderNo()+" 绠卞彿锛�"+matList.getBatch()+"涓嶅睘浜庢璁㈠崟鎴栬�呭凡缁忓叆搴�"); }else { +// if (matList.getAnfme() > orderDetls.get(0).getAnfme()) { +// throw new CoolException("绠卞彿锛�"+orderDetls.get(0).getBatch() + "鍏ュ簱鏁伴噺涓嶅悎娉�"); +// } matListBoxNoList.add(matList.getBoxNo()); } } @@ -298,6 +276,7 @@ matnr = mat.getMatnr(); WaitPakin waitPakin = new WaitPakin(); waitPakin.sync(mat); + waitPakin.setOrderNo(order.getOrderNo()); // 鍗曟嵁缂栧彿 waitPakin.setModel(orderDetl.getModel()); //鎵规 waitPakin.setSpecs(orderDetl.getSpecs()); //瑙勬牸 waitPakin.setBatch(orderDetl.getBatch()); //鏈ㄧ缂栫爜 @@ -353,6 +332,7 @@ waitPakins.forEach(waitPakin -> { WrkDetl wrkDetl = new WrkDetl(); wrkDetl.sync(waitPakin); + wrkDetl.setOrderNo(order.getOrderNo()); wrkDetl.setWrkNo(wrkMast.getWrkNo()); wrkDetl.setIoTime(wrkMast.getIoTime()); wrkDetl.setAppeTime(now); @@ -373,6 +353,11 @@ } else { throw new CoolException(dto.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤"); } + // 淇敼璁㈠崟浣滀笟鏁伴噺 + if (!orderDetlService.increaseWorkQty(order.getId(), orderDetls.get(0).getMatnr(), orderDetls.get(0).getBatch(), orderDetls.get(0).getAnfme())) { + throw new CoolException("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触"); + } + orderService.updateSettle(order.getId(), 2L, userId); } @Override @Transactional -- Gitblit v1.9.1