From b6dd05e2397b5280add41464b36a67ef312a9a86 Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期四, 14 十二月 2023 11:31:32 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 133 +++++++++---------------------------------- 1 files changed, 29 insertions(+), 104 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 990265b..6b15116 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -113,6 +113,8 @@ private ConfigService configService; @Autowired private NavigateMapUtils navigateMapUtils; + @Autowired + private WrkDetlLogService wrkDetlLogService; /** @@ -409,10 +411,6 @@ for (DevpSlave devp : slaveProperties.getDevp()) { // 閬嶅巻鎷f枡鍏ュ簱鍙� for (DevpSlave.Sta pickSta : devp.getPickInSta()) { - if (pickSta.getStaNo() == 325 || pickSta.getStaNo() == 331 || pickSta.getStaNo() == 333 || pickSta.getStaNo() == 339) { - continue; - } - // 鑾峰彇鎷f枡鍏ュ簱绔欎俊鎭� DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); StaProtocol staProtocol = devpThread.getStation().get(pickSta.getStaNo()); @@ -541,11 +539,7 @@ try { for (DevpSlave devp : slaveProperties.getDevp()) { // 閬嶅巻鎷f枡鍏ュ簱鍙� - for (DevpSlave.Sta pickSta : devp.getPickInSta()) { - if (!(pickSta.getStaNo() == 325 || pickSta.getStaNo() == 331 || pickSta.getStaNo() == 333 || pickSta.getStaNo() == 339)) { - continue; - } - + for (DevpSlave.Sta pickSta : devp.getPickInSta2()) { // 鑾峰彇鎷f枡鍏ュ簱绔欎俊鎭� DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); StaProtocol staProtocol = devpThread.getStation().get(pickSta.getStaNo()); @@ -561,91 +555,15 @@ && staProtocol.isPakMk()) { WrkMast wrkMast = wrkMastMapper.selectByWorkNo(staProtocol.getWorkNo().intValue()); - if (wrkMast == null) {//鎵句笉鍒板伐浣滄。 + if (wrkMast == null) { continue; } - - if ((wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104) - || Cools.isEmpty(wrkMast.getStaNo()) || Cools.isEmpty(wrkMast.getSourceStaNo())) { - continue; - } - -// //*********************鍚屽簱浣嶇粍鏍¢獙********************* -// boolean flag = false; -// String th = ""; -// List<String> innerLoc = Utils.getGroupInnerLoc(wrkMast.getSourceLocNo()); -// for (String loc : innerLoc) { -// LocMast locMast = locMastService.selectById(loc); -// if (locMast == null) { -// continue; -// } -// -// if (!locMast.getLocSts().equals("F")) { -// flag = true; -// th = loc + "搴撲綅瀛樺湪鏈洖搴撲换鍔�"; -// break; -// } -// } -// if (flag) { -// News.info(th); -// continue; -// } -// //*********************鍚屽簱浣嶇粍鏍¢獙********************* - - // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗� - if (wrkMastMapper.saveWrkMastLog(wrkMast.getWrkNo()) == 0) { - News.info(wrkMast.getWrkNo() + "淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�"); - continue; - } - - try { - LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo());//婧愬簱浣� - SearchLocParam param = new SearchLocParam(); - param.setWrkNo(wrkMast.getWrkNo()); - param.setBarcode(wrkMast.getBarcode()); - param.setIoType(wrkMast.getIoType()); - param.setSourceStaNo(pickSta.getStaNo()); - param.setLocType1(locMast.getLocType1()); - String response = new HttpHandler.Builder() - .setUri(wmsUrl) - .setPath("/rpc/pakin/loc/v2") - .setJson(JSON.toJSONString(param)) - .build() - .doPost(); - JSONObject jsonObject = JSON.parseObject(response); - Integer code = jsonObject.getInteger("code"); - if (code.equals(200)) { - StartupDto dto = jsonObject.getObject("data", StartupDto.class); - - //鑾峰彇鍥炲簱鎻愬崌鏈虹洰鏍囩珯 - LiftStaProtocol liftStaProtocol = NyLiftUtils.getLiftStaByLev(pickSta.getLiftNo(), Utils.getLev(dto.getLocNo())); - if (liftStaProtocol == null) { - News.info(wrkMast.getWrkNo() + "鑾峰彇鍥炲簱鎻愬崌鏈虹洰鏍囩珯澶辫触"); - continue; - } - - // 鏇存柊宸ヤ綔妗f暟鎹姸鎬� - wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54 - wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋 - wrkMast.setSourceStaNo(dto.getSourceStaNo()); // 婧愮珯 - wrkMast.setStaNo(liftStaProtocol.getStaNo());//鐩爣绔� - wrkMast.setLocNo(dto.getLocNo()); // 鐩爣搴撲綅 - wrkMast.setShuttleNo(null); // 绌挎杞︽竻绌� - wrkMast.setLiftNo(null);// 鎻愬崌鏈烘竻绌� - wrkMast.setModiTime(new Date()); - if (wrkMastMapper.updateById(wrkMast) == 0) { - News.info(wrkMast.getWrkNo() + "鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�"); - continue; - } - - staProtocol.setStaNo(dto.getSourceStaNo().shortValue());//鍐欏叆鐩爣绔� - MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - } else if (code == 500) { - News.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response); - } - } catch (Exception e) { - e.printStackTrace(); - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + if (wrkMast.getSteNo() == null) { + wrkMast.setSteNo(1); + wrkMastMapper.updateById(wrkMast); + staProtocol.setStaNo((short) 341);//鍐欏叆鐩爣绔� + staProtocol.setPakMk(false); + MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); } } } @@ -748,8 +666,8 @@ continue; } - staProtocol.setStaNo(dto.getSourceStaNo().shortValue());//鍐欏叆鐩爣绔� - MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); +// staProtocol.setStaNo(dto.getSourceStaNo().shortValue());//鍐欏叆鐩爣绔� +// MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); } else if (code == 500) { News.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response); @@ -1285,15 +1203,15 @@ return false;//鍑哄簱绔欑偣涓嶅瓨鍦� } - if (!basDevp.getAutoing().equals("Y")) { - News.info("{}浠诲姟锛寋}绔欑偣锛屼笉鏄嚜鍔ㄧ姸鎬�",wrkMast.getWrkNo(),basDevp.getDevNo()); - return false;//涓嶆槸鑷姩鐘舵�� - } - - if (!basDevp.getOutEnable().equals("Y")) { - News.info("{}浠诲姟锛寋}绔欑偣锛屾病鏈夊彲鍑轰俊鍙�", wrkMast.getWrkNo(), basDevp.getDevNo()); - return false;//鍑哄簱绔欑偣涓嶅彲鍑� - } +// if (!basDevp.getAutoing().equals("Y")) { +// News.info("{}浠诲姟锛寋}绔欑偣锛屼笉鏄嚜鍔ㄧ姸鎬�",wrkMast.getWrkNo(),basDevp.getDevNo()); +// return false;//涓嶆槸鑷姩鐘舵�� +// } +// +// if (!basDevp.getOutEnable().equals("Y")) { +// News.info("{}浠诲姟锛寋}绔欑偣锛屾病鏈夊彲鍑轰俊鍙�", wrkMast.getWrkNo(), basDevp.getDevNo()); +// return false;//鍑哄簱绔欑偣涓嶅彲鍑� +// } Integer liftNo = basDevp.getLiftNo();//鎼滅储鍑哄簱鎻愬崌鏈烘槸鍚﹀瓨鍦ㄥ叆搴撲换鍔★紝濡傚瓨鍦ㄧ姝㈠嚭搴� List<WrkMast> liftWrkMasts = wrkMastMapper.selectInWrkMastByLiftNo(liftNo); @@ -2981,6 +2899,13 @@ wrkDetls.forEach(wrkDetl -> { ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getAnfme(), wrkDetl.getAnfme(), wrkDetl.getSpecs(), wrkDetl.getSuppCode())); }); + + if (wrkDetls.isEmpty()) {//浠庡巻鍙叉。鏌ヨ + List<WrkDetlLog> wrkDetlLogs = wrkDetlLogService.selectLatestByWorkNo(wrkMast.getWrkNo()); + wrkDetlLogs.forEach(wrkDetl -> { + ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getAnfme(), wrkDetl.getAnfme(), wrkDetl.getSpecs(), wrkDetl.getSuppCode())); + }); + } } } @@ -3081,7 +3006,7 @@ // 鑾峰彇led绾跨▼ LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, led.getId()); // led鏄剧ず榛樿鍐呭 - if (reset && !ledThread.isLedMk()) { + if (reset) { ledThread.setLedMk(true); if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(2, new ArrayList<>()))) { log.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort()); -- Gitblit v1.9.1