From fd4ce2e507d27baceae451027ea1273c17739830 Mon Sep 17 00:00:00 2001 From: lsh <1> Date: 星期三, 24 一月 2024 19:12:44 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 77 +++++++++++++++++++++++++------------- 1 files changed, 51 insertions(+), 26 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 7aeadc4..0c3d176 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -98,6 +98,8 @@ private WrkMastStaMapper wrkMastStaMapper; @Autowired private BasRgvMapMapper basRgvMapMapper; + @Autowired + private RgvOneSignMapper rgvOneSignMapper; @Value("${wms.url}") private String wmsUrl; @@ -602,6 +604,11 @@ case 5://鏀�//鎷嗙洏 stnToCrnStnPick4(); return; + default: + return; + } + } else if (staProtocol.isAutoing() && staProtocol.isLoading()){ + switch (sign){ case 3://婊℃斁 case 6://婊℃斁 stnToCrnStnPick5(); @@ -618,8 +625,7 @@ * 2妤�212鍛煎彨绌烘澘 */ public synchronized void stnToCrnStnPick3() { - int workNo = 20211; - WrkMast wrkMast = wrkMastMapper.selectPakInStep3(workNo); + WrkMast wrkMast = wrkMastMapper.selectWrkMastUnstackingOne212(); if (Cools.isEmpty(wrkMast) || wrkMast.getWrkSts()!=61){//61銆佺瓑寰呯┖鏉� return; } @@ -640,7 +646,7 @@ || (staProtocol.getWorkNo()>9899 && staProtocol.getWorkNo()<10000)) ){ boolean result1 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol)); - staProtocol.setWorkNo(workNo-1); + staProtocol.setWorkNo(wrkMast.getWrkNo()-1); staProtocol.setStaNo(driveSta.getStaNo()==215? 217:221); boolean result2 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result2) { @@ -660,8 +666,7 @@ * 2妤�212鍛煎彨绌烘澘 */ public synchronized void stnToCrnStnPick4() { - int workNo = 20211; - WrkMast wrkMast = wrkMastMapper.selectPakInStep3(workNo); + WrkMast wrkMast = wrkMastMapper.selectWrkMastUnstackingOne212(); if (Cools.isEmpty(wrkMast) || wrkMast.getWrkSts()!=62){//62銆佺瓑寰呭皬杞︽惉杩� return; } @@ -686,10 +691,10 @@ } if (staProtocol212.isAutoing() && !staProtocol212.isLoading() && staProtocol212.getWorkNo()==0){ if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo()==0 - || (staProtocol.getWorkNo()>9899 && staProtocol.getWorkNo()<10000) || staProtocol.getWorkNo()==20210) ){ - boolean result1 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol)); + || (staProtocol.getWorkNo()>9899 && staProtocol.getWorkNo()<10000) || staProtocol.getWorkNo()==wrkMast.getWrkNo()-1) ){ +// boolean result1 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol)); - staProtocol.setWorkNo(workNo-1); + staProtocol.setWorkNo(wrkMast.getWrkNo()); staProtocol.setStaNo(212); boolean result2 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result2) { @@ -698,7 +703,7 @@ wrkMast.setWrkSts(63L); wrkMastMapper.updateById(wrkMast); - boolean result3 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(4, staProtocol)); +// boolean result3 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(4, staProtocol)); return; } } @@ -710,8 +715,7 @@ * 2妤�212鍛煎彨绌烘澘 */ public synchronized void stnToCrnStnPick5() { - int workNo = 20211; - WrkMast wrkMast = wrkMastMapper.selectPakInStep3(workNo); + WrkMast wrkMast = wrkMastMapper.selectWrkMastUnstackingOne212(); if (Cools.isEmpty(wrkMast) || wrkMast.getWrkSts()!=63){//63銆佺瓑寰呭畬鎴� return; } @@ -724,13 +728,13 @@ } else { staProtocol = staProtocol.clone(); } - if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo()==workNo ){ - boolean result1 = MessageQueue.offer(SlaveType.Devp, 2, new Task(3, staProtocol)); + if (staProtocol.isAutoing() && staProtocol.isLoading()){ +// boolean result1 = MessageQueue.offer(SlaveType.Devp, 2, new Task(3, staProtocol)); wrkMast.setWrkSts(64L); wrkMastMapper.updateById(wrkMast); - boolean result3 = MessageQueue.offer(SlaveType.Devp, 2, new Task(4, staProtocol)); +// boolean result3 = MessageQueue.offer(SlaveType.Devp, 2, new Task(4, staProtocol)); return; } } @@ -1441,6 +1445,13 @@ if (wrkMast.getIoType() < 100 || wrkMast.getSourceStaNo() == null) { log.error("鏌ヨ宸ヤ綔妗f暟鎹笉绗﹀悎鏉′欢--鍏ュ嚭绫诲瀷/绔欑偣, 宸ヤ綔鍙�={}锛屾簮搴撲綅={}锛屽叆鍑虹被鍨�={}", wrkMast.getWrkNo(), wrkMast.getSourceLocNo(), wrkMast.getIoType()); continue; + } + //閫�搴撴ā寮忚烦杩�118銆�119鍑哄簱浠诲姟 + if (wrkMast.getStaNo()==118 || wrkMast.getStaNo()==119){ + RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign(); + if (Cools.isEmpty(rgvOneSign) || rgvOneSign.getRgvOneSign()==1){ + continue; + } } // 鑾峰彇婧愬簱浣嶄俊鎭� LocMast sourceSta = locMastService.selectById(wrkMast.getSourceLocNo()); @@ -2167,6 +2178,10 @@ */ public synchronized void storeEmptyPlt3() { try{ + RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign(); + if (Cools.isEmpty(rgvOneSign) || rgvOneSign.getRgvOneSign()==1){ + return; + } for (RgvSlave rgvSlave:slaveProperties.getRgv()) { RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId()); RgvProtocol rgvProtocol = rgvThread.getRgvProtocol(); @@ -2286,6 +2301,10 @@ ledCommand.setTitle("鐩樼偣鍑哄簱"); break; case 110: + ledCommand.setTitle("绌烘澘鍑哄簱"); + ledCommand.setEmptyMk(true); + break; + case 212: ledCommand.setTitle("绌烘澘鍑哄簱"); ledCommand.setEmptyMk(true); break; @@ -3043,7 +3062,7 @@ // 鏃犳嫞鏂欐暟鎹� continue; } - if (!wrkMast.getSheetNo().equals("2") || wrkMast.getIoType()<100 || wrkMast.getWrkSts()!=14){ + if (Cools.isEmpty(wrkMast.getSheetNo()) || !wrkMast.getSheetNo().equals("2") || wrkMast.getIoType()<100 || wrkMast.getWrkSts()!=14){ continue; } if (wrkMast.getIoType()==101){ @@ -3235,9 +3254,9 @@ && staProtocol.isLoading() && basDevp.getReportSign()==0 ) {//&& staProtocol.isPakMk() && !Cools.isEmpty(barcode)) { - if (true){ - return; - } +// if (true){ +// return; +// } //浠诲姟瀹屾垚 boolean result1 = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(3, staProtocol135)); @@ -3246,7 +3265,8 @@ }catch (Exception e){ } basDevp135.setReportSign(2); basDevpService.updateById(basDevp135); - staProtocol135.setWorkNo(32222); + int workNo = commonService.getWorkNo(7); + staProtocol135.setWorkNo(workNo); staProtocol135.setStaNo(144); devpThread.setPakMk(staProtocol135.getSiteId(), false); boolean result = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(2, staProtocol135)); @@ -3416,7 +3436,8 @@ /** * 鍏ュ嚭搴� ===>> 灏忚溅浣滀笟涓嬪彂 */ - public synchronized void rgvIoExecute(Integer sign) { + public synchronized boolean rgvIoExecute(Integer sign) { + boolean rgvIoExecuteSign = false; try{ for (RgvSlave rgvSlave:slaveProperties.getRgv()) { // 鑾峰彇灏忚溅淇℃伅 @@ -3465,7 +3486,7 @@ break; } } - for (int signCount = 1;!signWork && signCount<8;signCount++){ + for (int signCount = 1;!signWork && signCount<7;signCount++){ switch (signCount){ case 1://鎵ц灏忚溅璐х墿鎼繍浠诲姟 signWork = rgvRunWrkMastFullSta(); @@ -3486,18 +3507,22 @@ // signWork = rgvRunWrkMastEmptyStaPut(); break; default: - if (sign>6){ - rgvRunWrkMastEmptyStaAvoidance();//閬胯 - signWork = true; - } break; } } - + if (!rgvIoExecuteSign){ + rgvIoExecuteSign = signWork; + } + } + if (!rgvIoExecuteSign){ + if (sign>6){ + rgvRunWrkMastEmptyStaAvoidance();//閬胯 + } } }catch (Exception e){ log.error("RGV灏忚溅浠诲姟涓嬪彂鎶ラ敊"+e); } + return rgvIoExecuteSign; } /** * 鎵ц灏忚溅鎼繍浠诲姟 -- Gitblit v1.9.1