From 996926db15b776bc3fd01837f317976e3e74b6cf Mon Sep 17 00:00:00 2001 From: tqs <56479841@qq.com> Date: 星期四, 02 二月 2023 17:33:03 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 117 +++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 74 insertions(+), 43 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 2f671c0..4a38951 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -115,21 +115,25 @@ Short workNo = staProtocol.getWorkNo(); //20230201. 2鍙峰爢鍨涙満鏈夊嚭搴撲换鍔℃椂锛岀姝㈡柊鏉垮叆搴� - if ( inSta.getStaNo()==103 && devpThread.ioModeOf1F == IoModeType.PAKOUT_MODE) { - //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� - staProtocol.setWorkNo((short) 9999); - staProtocol.setStaNo((short)100); - devpThread.setPakMk(staProtocol.getSiteId(), false); - boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - continue; - } - if ( inSta.getStaNo()==203 && devpThread.ioModeOf2F == IoModeType.PAKOUT_MODE) { - //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� - staProtocol.setWorkNo((short) 9999); - staProtocol.setStaNo((short)200); - devpThread.setPakMk(staProtocol.getSiteId(), false); - boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - continue; + if (staProtocol.isLoading() && staProtocol.getWorkNo() == 9995) { + if ( inSta.getStaNo()==103 && devpThread.ioModeOf1F == IoModeType.PAKOUT_MODE) { + //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� + staProtocol.setWorkNo((short) 9999); + staProtocol.setStaNo((short)100); + devpThread.setPakMk(staProtocol.getSiteId(), false); + boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); + News.error("MainServiceImpl generateStoreWrkFile"+"103涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); + continue; + } + if ( inSta.getStaNo()==203 && devpThread.ioModeOf2F == IoModeType.PAKOUT_MODE) { + //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� + staProtocol.setWorkNo((short) 9999); + staProtocol.setStaNo((short)200); + devpThread.setPakMk(staProtocol.getSiteId(), false); + boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); + News.error("MainServiceImpl generateStoreWrkFile"+"203涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); + continue; + } } // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 @@ -834,7 +838,7 @@ WrkMast one = wrkMastMapper.selectLocMoveData(slave.getId()); if(!Cools.isEmpty(one)){ News.error("鍏ュ簱 ===>> 瀛樺湪绉诲簱鏈畬鎴愪换鍔★紝涓嶈兘鍏ュ簱銆傜Щ搴撲换鍔″彿={},鍫嗗灈鏈哄彿={}", one.getWrkNo(), slave.getId()); - continue; +// continue; } // 鑾峰彇宸ヤ綔鐘舵�佷负 2,3,4,5,6 鐨勫叆搴撳伐浣滄。 @@ -1045,7 +1049,25 @@ continue; } + // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅 + SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId()); + StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo()); + if (staProtocol == null) { + continue; + } else { + staProtocol = staProtocol.clone(); + } + if (wrkMast.getCrnNo().equals(2)){ + if (wrkMast.getStaNo() == 103 && devpThread.ioModeOf1F != IoModeType.PAKOUT_MODE) { + News.error("MainServiceImpl locToCrnStn"+"103闈炲嚭搴撴ā寮忥紝绂佹鍑哄簱銆備换鍔″彿:{}锛侊紒锛�",wrkMast.getWrkNo()); + continue; + } + if (wrkMast.getStaNo() == 203 && devpThread.ioModeOf2F != IoModeType.PAKOUT_MODE) { + News.error("MainServiceImpl locToCrnStn"+"203闈炲嚭搴撴ā寮忥紝绂佹鍑哄簱銆備换鍔″彿:{}锛侊紒锛�",wrkMast.getWrkNo()); + continue; + } + if (wrkMast.getWrkSts() == 11 && (wrkMast.getIoType() == 103 || wrkMast.getIoType() == 107)){ Integer sour = wrkMast.getSourceStaNo(); List<WrkMast> wrkMasts = wrkMastMapper.selectWrkStsAndIoType0(sour); @@ -1108,7 +1130,9 @@ if (wrkMastMapper.updateById(waitWrkMast) == 0) { News.error("璋冩暣宸ヤ綔妗d紭鍏堢骇澶辫触锛佸伐浣滃彿={}", waitWrkMast.getWrkNo()); } - flag = true; + if (waitWrkMast.getWrkSts() != 17) { + flag = true; + } break; } } @@ -1156,14 +1180,7 @@ News.error("鍑哄簱鎿嶄綔搴撲綅鐘舵�佷笉绗﹀悎--鐘舵��, 搴撲綅鍙�={}锛屽簱浣嶇姸鎬�={}", wrkMast.getLocNo(), sourceSta.getLocSts()); continue; } - // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅 - DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId()); - StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo()); - if (staProtocol == null) { - continue; - } else { - staProtocol = staProtocol.clone(); - } + // 鏌ヨ绔欑偣璇︾粏淇℃伅 BasDevp staDetl = basDevpService.selectById(crnStn.getStaNo()); if (staDetl == null) { @@ -1568,7 +1585,7 @@ if(deepLoc != null && !deepLoc.getLocSts().equals("F") && !deepLoc.getLocSts().equals("D") && !deepLoc.getLocSts().equals("O") - && (waitWrkMast!=null && waitWrkMast.getWrkSts()<17)){ + && (waitWrkMast!=null && waitWrkMast.getWrkSts()<18)){ News.error("绉诲簱鍐嶅洖搴撴椂锛屾繁搴撲綅缁勬繁搴撲綅鐘舵�佷负浣滀笟涓� ===>> deepLoc={},loc_sts={}", deepLoc.getLocNo(), deepLoc.getLocSts()); flag = true; break; @@ -3231,21 +3248,25 @@ } //20230201. 2鍙峰爢鍨涙満鏈夊嚭搴撲换鍔℃椂锛岀姝㈡柊鏉垮叆搴� - if ( emptyInSta.getStaNo()==103 && devpThread.ioModeOf1F == IoModeType.PAKOUT_MODE) { - //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� - staProtocol.setWorkNo((short) 9999); - staProtocol.setStaNo((short)100); - devpThread.setPakMk(staProtocol.getSiteId(), false); - boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - continue; - } - if ( emptyInSta.getStaNo()==203 && devpThread.ioModeOf2F == IoModeType.PAKOUT_MODE) { - //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� - staProtocol.setWorkNo((short) 9999); - staProtocol.setStaNo((short)200); - devpThread.setPakMk(staProtocol.getSiteId(), false); - boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - continue; + if (staProtocol.isLoading() && staProtocol.getWorkNo() == 9995) { + if ( emptyInSta.getStaNo()==103 && devpThread.ioModeOf1F == IoModeType.PAKOUT_MODE) { + //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� + staProtocol.setWorkNo((short) 9999); + staProtocol.setStaNo((short)100); + devpThread.setPakMk(staProtocol.getSiteId(), false); + boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); + News.error("MainServiceImpl storeEmptyPlt"+"103涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); + continue; + } + if ( emptyInSta.getStaNo()==203 && devpThread.ioModeOf2F == IoModeType.PAKOUT_MODE) { + //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� + staProtocol.setWorkNo((short) 9999); + staProtocol.setStaNo((short)200); + devpThread.setPakMk(staProtocol.getSiteId(), false); + boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); + News.error("MainServiceImpl storeEmptyPlt"+"203涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); + continue; + } } // 绔欑偣鏉′欢鍒ゆ柇 @@ -3823,8 +3844,18 @@ if(Utils.getGroupRow(one.getLocNo()) != Utils.getGroupRow(shallowLoc.getLocNo()) || Utils.getBay(one.getLocNo()) != Utils.getBay(shallowLoc.getLocNo()) || Utils.getLev(one.getLocNo()) != Utils.getLev(shallowLoc.getLocNo())){ - loc = one; - break; + + boolean success = true; + List<String> insideLoc = Utils.getGroupInsideLoc(one.getLocNo()); + for (String inside : insideLoc) { + if (!locMastService.selectById(inside).getLocSts().equals("O")) { + success = false; break; + } + } + if (success) { + loc = one; + break; + } } } -- Gitblit v1.9.1