From 297aaba86ef2c39dc6b8e9160365b8d3c026d5b8 Mon Sep 17 00:00:00 2001 From: 野心家 <1051256694@qq.com> Date: 星期四, 01 六月 2023 13:16:04 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/zjfnwcs' into zjfnwcs --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 75 +++++++++++++++++++++++++++++++++---- 1 files changed, 67 insertions(+), 8 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 9e6a2d6..c17bc8b 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -131,7 +131,7 @@ // // 鍏ュ嚭搴撴ā寮忓垽鏂� // if ( inSta.getStaNo()==180 && devpThread.ioMode != IoModeType.PAKIN_MODE) { continue; } - + staProtocol.setPakMk(true); // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() @@ -165,7 +165,11 @@ // } try { - String pack=barcode.substring(6);//pack鐮� + String pack =null;//pack鐮� + if(barcode.length()>6){ + pack=barcode.substring(6); + } + //String pack="MJY0136 0400"; barcode=barcode.substring(0,6);//鎵樼洏鐮� LocTypeDto locTypeDto = new LocTypeDto(staProtocol); locTypeDto.setLocType1((short)1); @@ -184,7 +188,6 @@ JSONObject jsonObject = JSON.parseObject(response); if (jsonObject.getInteger("code").equals(200)) { StartupDto dto = jsonObject.getObject("data", StartupDto.class); - barcodeThread.setBarcode(""); staProtocol.setWorkNo(dto.getWorkNo().shortValue()); staProtocol.setStaNo(dto.getStaNo().shortValue()); @@ -750,7 +753,7 @@ crnCommand.setDestinationPosX(locMast.getRow1().shortValue()); // 鐩爣搴撲綅鎺� crnCommand.setDestinationPosY(locMast.getBay1().shortValue()); // 鐩爣搴撲綅鍒� crnCommand.setDestinationPosZ(locMast.getLev1().shortValue()); // 鐩爣搴撲綅灞俓 - crnCommand.setBarcode(wrkMast.getBarcode()); + crnCommand.setBarcode(wrkMast.getBarcode());//鎵樼洏鐮� if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) { log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand)); } else { @@ -1082,6 +1085,7 @@ crnCommand.setDestinationPosX(sta.getRow1().shortValue()); // 鐩爣搴撲綅鎺� crnCommand.setDestinationPosY(sta.getBay1().shortValue()); // 鐩爣搴撲綅鍒� crnCommand.setDestinationPosZ(sta.getLev1().shortValue()); // 鐩爣搴撲綅灞� + crnCommand.setBarcode(wrkMast.getBarcode());//鎵樼洏鐮� if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) { log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand)); } else { @@ -2025,7 +2029,7 @@ case 3://娴嬭瘯瀹屾垚 olsStatus = 4;//娴嬭瘯瀹屾垚 newStatus = 4;//娴嬭瘯瀹屾垚 - newSingle = 4;//娴嬭瘯瀹屾垚锛屽瘎瀛樺櫒鍦板潃锛�3===>>4 + newSingle = 4;//锛圢G:4\OK:41锛夋祴璇曞畬鎴愶紝瀵勫瓨鍣ㄥ湴鍧�锛�3===>>4\41 break; case 5://NG娴嬭瘯淇″彿 case 6://瀹屾垚娴嬭瘯淇″彿 @@ -2059,8 +2063,8 @@ newSingle = 0;//澶嶄綅锛屽瘎瀛樺櫒鍦板潃锛�12===>>0 break; default: - log.error("璇诲彇娴嬭瘯搴撲綅淇″彿鍑洪敊"); - break; + log.info("璇诲彇閫氶亾"+(i+1)+"娴嬭瘯搴撲綅鎸夐挳淇″彿:涓�"+devpThread.startSignal[i][0]); + continue; } TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>() @@ -2069,11 +2073,26 @@ boolean sign=false; switch (devpThread.startSignal[i][0]){ case 0: + if (!Cools.isEmpty(testMast)){ + locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("channel",(i+1))); + if (!Cools.isEmpty(locMast) && locMast.getLocSts().equals("F")){ + sign=true; + } + } + break; case 3: if (!Cools.isEmpty(testMast)){ locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("channel",(i+1))); if (!Cools.isEmpty(locMast) && locMast.getLocSts().equals("F")){ sign=true; + if (locMast.getPackStatus()==3){ + newSingle=41; + }else if (locMast.getPackStatus()==4){ + newSingle=4; + }else { + log.info("璇诲彇閫氶亾"+(i+1)+"娴嬭瘯搴撲綅鎸夐挳淇″彿:涓�"+devpThread.startSignal[i][0]+"閫氶亾搴撲綅pack鐘舵�佷俊鎭紓甯�"+locMast.getPackStatus()); + sign=false; + } } } break; @@ -2178,7 +2197,7 @@ sign=true; break; default: - log.error("璇诲彇娴嬭瘯搴撲綅淇″彿鍑洪敊"); + log.info("璇诲彇閫氶亾"+(i+1)+"娴嬭瘯搴撲綅鎸夐挳淇″彿:涓�"+devpThread.startSignal[i][0]); continue; } if (sign){ @@ -2188,6 +2207,12 @@ } else { devpThread.startSignal[i][0] = newSingle; } + } + try{ + locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("channel",(i+1))); + messageQueueOffer2(i,(short)((int)locMast.getFireStatus()),SlaveType.Devp, devp.getId()); + }catch (Exception e){ + log.error("鐏 ===>> 缁欒緭閫佺嚎鍙戦�佽鎶ュけ璐�,閫氶亾鍙凤細", i+1); } } @@ -2207,6 +2232,14 @@ staProtocol.setSiteId(i*2);//瀵勫瓨鍣ㄥ湴鍧� staProtocol.setStaNo(newSingle);//淇敼PLC瀵勫瓨鍣ㄥ湴鍧�鍊�,8==>0 return MessageQueue.offer(devp, id, new Task(3, staProtocol)); + } + + public boolean messageQueueOffer2(int i ,short newSingle,SlaveType devp,Integer id){ + //澶嶄綅PLC淇″彿锛屽�熺敤杈撻�佺珯鐐瑰疄浣撶被 + StaProtocol staProtocol = new StaProtocol(); + staProtocol.setSiteId(i*2);//瀵勫瓨鍣ㄥ湴鍧� + staProtocol.setStaNo(newSingle);//淇敼PLC瀵勫瓨鍣ㄥ湴鍧�鍊�,8==>0 + return MessageQueue.offer(devp, id, new Task(5, staProtocol)); } /** @@ -2239,4 +2272,30 @@ } } + /** + * 103绔欑偣鏈夌墿涓嬪彂pack鐮� + */ + @Transactional + public void packDevp() { + try { + // 鏍规嵁杈撻�佺嚎plc閬嶅巻 + for (DevpSlave devp : slaveProperties.getDevp()) { + BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("bas_devp",103)); + if (Cools.isEmpty(basDevp)){ + log.error("103绔欑偣鏌ヨ澶辫触-MainServiceImpl.java-2255琛�"); + } + if (basDevp.getAutoing().equals("Y") && basDevp.getWrkNo()>0 && basDevp.getLoading().equals("Y") ){ + WrkDetl wrkDetl = wrkDetlService.devpPackNo(basDevp.getWrkNo()); + if (Cools.isEmpty(wrkDetl)){ + log.error("103绔欑偣鏌ヨ澶辫触-MainServiceImpl.java-2255琛�"); + } + MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(4,wrkDetl.getMatnr())); + } + } + } catch (Exception e) { + log.error("103 ===>> 缁欒緭閫佺嚎鍙戦�丳ack鐮佸け璐�", e); + e.printStackTrace(); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + } + } } -- Gitblit v1.9.1