From b43b90ed4ff5e61df7c87553c8cab5daea66cb8e Mon Sep 17 00:00:00 2001 From: lsh <1> Date: 星期六, 17 二月 2024 21:34:46 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 82 +++++++++++++++++++++++++++++++++++----- 1 files changed, 71 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java index 4e1d5b8..4972b51 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -185,8 +185,11 @@ @Override @Transactional public void startupFullTakeStoreOrder(StockOutParam param, Long userId) { - if (Cools.isEmpty(param) || Cools.isEmpty(param.getOrderNo()) || Cools.isEmpty(param.getLocDetls())){ + if (Cools.isEmpty(param) || Cools.isEmpty(param.getLocDetls())){ throw new CoolException("鍙傛暟涓虹┖"); + } + if (Cools.isEmpty(param.getOrderNo())){ + throw new CoolException("璁㈠崟鍙峰弬鏁颁负绌�"); } DocType docType = docTypeService.selectOrAdd("鎵嬪姩鍑哄簱鍗�", Boolean.FALSE); Order order = orderService.selectByNo(param.getOrderNo()); @@ -220,7 +223,8 @@ null, // 鍙戣揣鏃堕棿 null, // 鐗╂祦鍚嶇О null, // 鐗╂祦鍗曞彿 - 2L, // 璁㈠崟鐘舵�� +// 2L, // 璁㈠崟鐘舵�� + 1L, // 璁㈠崟鐘舵�� 1, // 鐘舵�� userId, // 娣诲姞浜哄憳 now, // 娣诲姞鏃堕棿 @@ -250,9 +254,13 @@ orderDetl.setModel(locDetl.getModel());//鎵规 orderDetl.setSpecs(locDetl.getSpecs());//瑙勬牸 orderDetl.setBrand(locDetl.getBrand());//鏈ㄧ绫诲瀷 - orderDetl.setWorkQty(locDetl.getAnfme()); + orderDetl.setBarcode(locDetl.getZpallet());//鏈ㄧ绫诲瀷 + orderDetl.setWeight(locDetl.getWeight()); +// orderDetl.setWorkQty(locDetl.getAnfme()); + orderDetl.setWorkQty(0.0); orderDetl.setOrderId(order.getId()); orderDetl.setOrderNo(order.getOrderNo()); + orderDetl.setOrigin(locDetl.getOrigin()); orderDetl.setCreateBy(userId); orderDetl.setCreateTime(now); orderDetl.setUpdateBy(userId); @@ -264,10 +272,10 @@ } } - List<StockOutParam> stockOutParams = OutboundAllocationUtil.OutboundClassification(param); - for (StockOutParam stockOutParam : stockOutParams){ - startupFullTakeStore(stockOutParam,userId); - } +// List<StockOutParam> stockOutParams = OutboundAllocationUtil.OutboundClassification(param); +// for (StockOutParam stockOutParam : stockOutParams){ +// startupFullTakeStore(stockOutParam,userId); +// } } else { throw new CoolException("璁㈠崟鍙烽噸澶嶏紝璁㈠崟"+param.getOrderNo()+"宸插瓨鍦紒锛侊紒"); @@ -337,6 +345,9 @@ wrkMast.setEmptyMk("N"); // 绌烘澘 wrkMast.setLinkMis("N"); wrkMast.setSheetNo("0"); + if (staDesc.getStnNo()<118 || staDesc.getStnNo()>121){ + wrkMast.setSheetNo("3"); + } wrkMast.setBarcode(locMast.getBarcode()); wrkMast.setAppeUser(userId); // 鎿嶄綔浜哄憳鏁版嵁 wrkMast.setAppeTime(now); @@ -525,6 +536,7 @@ if (Cools.isEmpty(param.getOutSite())) { throw new CoolException("绔欑偣涓嶅瓨鍦�"); } + List<String> locNoOtherList = new ArrayList<>(); for (String locNo : param.getLocNos()) { // 鑾峰彇宸ヤ綔鍙� int workNo = commonService.getWorkNo(WorkNoType.PAKOUT.type); @@ -580,6 +592,48 @@ throw new CoolException("鏇存柊搴撲綅鐘舵�佸け璐�"); } } + } + } + + public String[] staNoOther(String locNo){ + String[] strings = new String[2]; + int row = Utils.getRow(locNo); + if (row==1 || row==5 ){ + strings[0] = locNo; + strings[1] = getDeepLoc2(locNo,row); + return strings; + } else if (row == 4 || row == 8){ + strings[0] = getDeepLoc2(locNo,row); + strings[1] = locNo; + return strings; + }else { + return null; + } + } + + /** + * 鑾峰彇 娴呭簱浣嶅搴旂殑娣卞簱浣嶅彿 + */ + public static String getDeepLoc(String shallowLoc,int row) { + if (row == 2 || row == 6) { + return Utils.zerofill(String.valueOf(row-1), 2) + shallowLoc.substring(2); + } else if (row == 3 || row == 7) { + return Utils.zerofill(String.valueOf(row+1), 2) + shallowLoc.substring(2); + }else { + return shallowLoc; + } + } + + /** + * 鑾峰彇 娣卞簱浣嶅搴旂殑娴呭簱浣嶅彿 + */ + public static String getDeepLoc2(String shallowLoc,int row) { + if (row == 1 || row == 5) { + return Utils.zerofill(String.valueOf(row+1), 2) + shallowLoc.substring(2); + } else if (row == 4 || row == 8) { + return Utils.zerofill(String.valueOf(row-1), 2) + shallowLoc.substring(2); + }else { + return null; } } @@ -771,15 +825,17 @@ if (wrkMast.getWrkSts() < 4 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()==11)) { wrkMast.setWrkSts(4L); // 鍑哄簱 - } else if (wrkMast.getWrkSts() > 10) { + } else if (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()!=202) { wrkMast.setWrkSts(14L); + }else if (wrkMast.getIoType()==202){ + wrkMast.setWrkSts(57L); } Date now = new Date(); wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true)); wrkMast.setCrnEndTime(now); wrkMast.setModiTime(now); wrkMast.setModiUser(userId); - wrkMast.setSheetNo("2"); + wrkMast.setSheetNo("3"); // 瀹屾垚鎿嶄綔浜哄憳璁板綍 wrkMast.setManuType("鎵嬪姩瀹屾垚"); if (!wrkMastService.updateById(wrkMast)) { @@ -936,7 +992,7 @@ locMastService.updateById(locMast); } // 鍑哄簱鍙栨秷锛堜慨鏀规簮搴撲綅锛� - } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14) { + } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14 && wrkMast.getIoType()!=202) { locNo = wrkMast.getSourceLocNo(); // 鍑哄簱 ===>> F.鍦ㄥ簱 if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) { @@ -957,6 +1013,7 @@ locMast.setModiUser(userId); locMastService.updateById(locMast); } + } else if (wrkMast.getIoType()==202 || wrkMast.getIoType()==212){ } else { throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�"); } @@ -1043,6 +1100,9 @@ } // 鍒犻櫎宸ヤ綔妗f槑缁� boolean wrkDetlRes = wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", workNo)); + } + if (wrkMast.getIoType()==202 || wrkMast.getIoType()==212){ + return; } // 淇敼搴撲綅鐘舵�� @@ -1230,7 +1290,7 @@ } List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", param.getLocDetls().get(0).getMatnr())); if (Cools.isEmpty(locDetls) || locDetls.size()<1){ - throw new CoolException("寰呬慨鏀瑰晢鍝佹棤搴撳瓨锛屾棤闇�淇敼锛� 鍝佸彿锛�"+param.getLocDetls().get(0).getMatnr()); + throw new CoolException("寰呬慨鏀瑰晢鍝佹棤搴撳瓨锛屾棤闇�淇敼锛� 瑙勬牸锛�"+param.getLocDetls().get(0).getMatnr()); } try { locDetlService.updateMatTurn(param.getLocDetls().get(0).getMatnr(),mat.getMatnr()); -- Gitblit v1.9.1