From 62412bd446b916e9011a4ff4d8bc46766501d62a Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期二, 20 十二月 2022 14:44:07 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 61 +++++++++++++++++++++--------- 1 files changed, 42 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java index 98ed695..838f9b4 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -6,9 +6,7 @@ import com.core.common.Cools; import com.core.exception.CoolException; import com.zy.asrs.entity.*; -import com.zy.asrs.mapper.BasCrnErrorMapper; -import com.zy.asrs.mapper.WrkChargeMapper; -import com.zy.asrs.mapper.WrkMastMapper; +import com.zy.asrs.mapper.*; import com.zy.asrs.service.*; import com.zy.asrs.utils.Utils; import com.zy.common.model.LocTypeDto; @@ -17,6 +15,7 @@ import com.zy.common.model.StartupDto; import com.zy.common.model.enums.WrkChargeType; import com.zy.common.service.CommonService; +import com.zy.common.service.erp.ErpService; import com.zy.common.utils.CollectionUtils; import com.zy.common.utils.HttpHandler; import com.zy.core.CrnThread; @@ -92,6 +91,12 @@ private CommonService commonService; @Autowired private WrkChargeMapper wrkChargeMapper; + @Autowired + private ErpService erpService; + @Autowired + private OrderMapper orderMapper; + @Autowired + private OrderDetlMapper orderDetlMapper; /** * 缁勬墭 @@ -152,7 +157,7 @@ // 閫�鍥� if (back) { log.warn("鎵爜鍏ュ簱澶辫触锛寋}鍏ュ簱绔欏洜{}寮傚父锛屾墭鐩樺凡琚��鍥�", inSta.getStaNo(), errMsg); - staProtocol.setWorkNo((short) 9995); + staProtocol.setWorkNo((short) 32002); staProtocol.setStaNo(inSta.getBackSta().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); @@ -174,7 +179,7 @@ if(!Cools.isEmpty(barcode)) { // log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode); if("NG".endsWith(barcode) || "NoRead".equals(barcode) || "empty".equals(barcode)) { - staProtocol.setWorkNo((short) 9995); + staProtocol.setWorkNo((short) 32002); staProtocol.setStaNo(inSta.getBackSta().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); @@ -188,7 +193,7 @@ continue; } } else { - staProtocol.setWorkNo((short) 9995); + staProtocol.setWorkNo((short) 32002); staProtocol.setStaNo(inSta.getBackSta().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); @@ -251,7 +256,7 @@ } log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response); } else if (code == 700) { - staProtocol.setWorkNo((short) 9995); + staProtocol.setWorkNo((short) 32002); staProtocol.setStaNo(inSta.getBackSta().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); @@ -331,7 +336,7 @@ // 閫�鍥� if (back) { log.warn("鎵爜鍏ュ簱澶辫触锛寋}鍏ュ簱绔欏洜{}寮傚父锛屾墭鐩樺凡琚��鍥�", inSta.getStaNo(), errMsg); - staProtocol.setWorkNo((short) 9995); + staProtocol.setWorkNo((short) 32002); staProtocol.setStaNo(inSta.getBackSta().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); @@ -415,7 +420,7 @@ // if(!Cools.isEmpty(barcode)) { // log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", pickSta.getBarcode(), barcode); // if("NG".endsWith(barcode) || "NoRead".equals(barcode) || "empty".equals(barcode)) { -// staProtocol.setWorkNo((short) 9995); +// staProtocol.setWorkNo((short) 32002); // staProtocol.setStaNo(pickSta.getBackSta().shortValue()); // devpThread.setPakMk(staProtocol.getSiteId(), false); // MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); @@ -429,7 +434,7 @@ // continue; // } // } else { -// staProtocol.setWorkNo((short) 9995); +// staProtocol.setWorkNo((short) 32002); // staProtocol.setStaNo(pickSta.getBackSta().shortValue()); // devpThread.setPakMk(staProtocol.getSiteId(), false); // MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); @@ -529,7 +534,7 @@ } log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response); } else { - staProtocol.setWorkNo((short) 9995); + staProtocol.setWorkNo((short) 32002); staProtocol.setStaNo(pickSta.getBackSta().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); @@ -692,6 +697,15 @@ // log.error("{}绔欑偣鏌ヨ鏃犲緟鍏ュ簱鏁版嵁 宸ヤ綔鍙�={}", crnStn.getStaNo(), staProtocol.getWorkNo()); continue; } + + // 鍚屽簱浣嶇粍杩涜鏍¢獙 + List<String> groupLocNo = Utils.getGroupLocNo(wrkMast.getLocNo()); + if (!Cools.isEmpty(groupLocNo)) { + if (null != wrkMastMapper.selectPakoutWorkingByGroupLoc(groupLocNo)) { + continue; + } + } + if (wrkMast.getWrkSts() < 3) { if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() > 0 && staProtocol.isInEnable() && staDetl.getCanining()!=null && staDetl.getCanining().equals("Y")) { @@ -965,6 +979,14 @@ if (!sourceSta.getLocSts().equals("R") &&!sourceSta.getLocSts().equals("P")) { log.error("鍑哄簱鎿嶄綔搴撲綅鐘舵�佷笉绗﹀悎--鐘舵��, 搴撲綅鍙�={}锛屽簱浣嶇姸鎬�={}", wrkMast.getLocNo(), sourceSta.getLocSts()); continue; + } + + // 鍚屽簱浣嶇粍杩涜鏍¢獙 + List<String> groupLocNo = Utils.getGroupLocNo(wrkMast.getSourceLocNo()); + if (!Cools.isEmpty(groupLocNo)) { + if (null != wrkMastMapper.selectPakinWorkingByGroupLoc(groupLocNo)) { + continue; + } } // 鍒ゆ柇鏄惁鏈夊悓搴撲綅缁勭殑鍑哄簱浠诲姟锛屽鏋滄湁锛屽垯鏆傚仠 @@ -2467,14 +2489,15 @@ ledCommand.setStaNo(wrkMast.getStaNo()); if (wrkMast.getIoType() != 110) { List<WrkDetl> wrkDetls = wrkDetlService.findByWorkNo(wrkMast.getWrkNo()); - wrkDetls.forEach(wrkDetl -> { - if (wrkMast.getIoType() == 101) { - ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getAnfme())); + try { + WrkDetl wrkDetl = wrkDetls.get(0); + if (!Cools.isEmpty(wrkDetl.getOrderNo())) { + OrderDetl orderDetl = orderDetlMapper.selectItemNoneOfBatch(wrkDetl.getOrderNo(), wrkDetl.getMatnr()); + ledCommand.getMatDtos().add(new MatDto(orderDetl)); } - if (wrkMast.getIoType() == 103 && (null == wrkDetl.getInspect() || 0 == wrkDetl.getInspect())) { - ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getAnfme())); - } - }); + } catch (Exception e) { + log.error("led execute fail", e); + } } commands.add(ledCommand); } @@ -2614,7 +2637,7 @@ } while (false); if (steCharge == null) { - log.warn("{}鍙峰皬杞︺�愮數閲忥細{}銆戝厖鐢靛け璐ワ紝鍘熷洜锛氭病鏈夌┖闂插厖鐢垫々銆�", ste.getId(), steProtocol.getCharge()); +// log.warn("{}鍙峰皬杞︺�愮數閲忥細{}銆戝厖鐢靛け璐ワ紝鍘熷洜锛氭病鏈夌┖闂插厖鐢垫々銆�", ste.getId(), steProtocol.getCharge()); continue; } String chargeLocNo = steCharge.locNo; -- Gitblit v1.9.1