From 18a81e48e6559009ec39d2c2e28d64312f204189 Mon Sep 17 00:00:00 2001 From: 野心家 <1051256694@qq.com> Date: 星期六, 11 三月 2023 13:58:10 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 104 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 93 insertions(+), 11 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 95435d8..8a63999 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -517,8 +517,35 @@ String methodName = Thread.currentThread().getStackTrace()[1].getMethodName(); for (CrnSlave crnSlave : slaveProperties.getCrn()) { - // 閬嶅巻鍫嗗灈鏈哄嚭搴撶珯 - for (CrnSlave.CrnStn crnStn : crnSlave.getCrnOutStn()) { + //鏌ヨ宸ヤ綔妗� + List<WrkMast> wrkMasts= wrkMastService.selectList(new EntityWrapper<WrkMast>() + .eq("crn_no",crnSlave.getCrnOutStn()) + .and() + .gt("io_type",100) + .orderBy("appe_time") + ); + if(Cools.isEmpty(wrkMasts)){ + continue; + } + //閬嶅巻浠诲姟妗o紝鎸夌敓鎴愭椂闂磋繘琛屾帓搴� + for (WrkMast wrkMast: wrkMasts) { + // 鍒ゆ柇宸ヤ綔妗f潯浠� + if (wrkMast.getStaNo() == null || wrkMast.getSourceStaNo() == null) { + continue; + } + CrnSlave.CrnStn crnStn = null; + for (CrnSlave.CrnStn crnStn1 : crnSlave.getCrnOutStn()) { + if (crnStn1.getStaNo() == wrkMast.getSourceStaNo()) { + crnStn = crnStn1; + break; + } else { + continue; + } + } + if (Cools.isEmpty(crnStn)) { + continue; + } + // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅 DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId()); StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo()); @@ -528,15 +555,8 @@ staProtocol = staProtocol.clone(); } if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == null)) { - // 鏌ヨ宸ヤ綔妗� - WrkMast wrkMast = wrkMastMapper.selectPakOutStep2(staProtocol.getSiteId()); - if (wrkMast == null) { - continue; - } - // 鍒ゆ柇宸ヤ綔妗f潯浠� - if (wrkMast.getIoType() < 100 || wrkMast.getStaNo() == null || wrkMast.getSourceStaNo() == null) { - continue; - } + + // 鍒ゆ柇鍚婅溅鏄惁瀹為檯宸插畬鎴愶紝涓旂數鑴戠姸鎬佸湪move涓紝浠ュ鐢佃剳杩涜鏇存柊宸ヤ綔妗� CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, wrkMast.getCrnNo()); CrnProtocol crnProtocol = crnThread.getCrnProtocol(); @@ -575,6 +595,68 @@ } } +// public synchronized void crnStnToOutStn1() { +// String methodName = Thread.currentThread().getStackTrace()[1].getMethodName(); +// +// for (CrnSlave crnSlave : slaveProperties.getCrn()) { +// // 閬嶅巻鍫嗗灈鏈哄嚭搴撶珯 +// for (CrnSlave.CrnStn crnStn : crnSlave.getCrnOutStn()) { +// // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅 +// DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId()); +// StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo()); +// if (staProtocol == null) { +// continue; +// } else { +// staProtocol = staProtocol.clone(); +// } +// if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == null)) { +// // 鏌ヨ宸ヤ綔妗� +// WrkMast wrkMast = wrkMastMapper.selectPakOutStep2(staProtocol.getSiteId()); +// if (wrkMast == null) { +// continue; +// } +// // 鍒ゆ柇宸ヤ綔妗f潯浠� +// if (wrkMast.getIoType() < 100 || wrkMast.getStaNo() == null || wrkMast.getSourceStaNo() == null) { +// continue; +// } +// // 鍒ゆ柇鍚婅溅鏄惁瀹為檯宸插畬鎴愶紝涓旂數鑴戠姸鎬佸湪move涓紝浠ュ鐢佃剳杩涜鏇存柊宸ヤ綔妗� +// CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, wrkMast.getCrnNo()); +// CrnProtocol crnProtocol = crnThread.getCrnProtocol(); +// if (crnProtocol.statusType == CrnStatusType.FETCHING || crnProtocol.statusType == CrnStatusType.PUTTING) { +// // 绉诲姩涓� +// continue; +// } +// // 鍒ゆ柇鍫嗗灈鏈虹姸鎬佺瓑寰呯‘璁� +// if (crnProtocol.modeType == CrnModeType.AUTO && crnProtocol.getTaskNo().equals(wrkMast.getWrkNo().shortValue()) +// && crnProtocol.statusType == CrnStatusType.WAITING +// && crnProtocol.forkPosType == CrnForkPosType.HOME) { +// +// // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- +// +// // 涓嬪彂绔欑偣淇℃伅 +// staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue()); +// staProtocol.setStaNo(wrkMast.getStaNo().shortValue()); +// if (!MessageQueue.offer(SlaveType.Devp, crnStn.getDevpPlcId(), new Task(2, staProtocol))) { +// continue; +// } +// +// // 鏇存柊宸ヤ綔妗g姸鎬佷负14澶辫触 +// wrkMast.setWrkSts(14L); +// wrkMast.setCrnEndTime(new Date()); +// if (wrkMastMapper.updateById(wrkMast) != 0) { +// // 澶嶄綅鍫嗗灈鏈� +// crnThread.setResetFlag(true); +// } else { +// News.error(methodName + ":鏇存柊宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负14澶辫触锛侊紒锛� [宸ヤ綔鍙�:{}]", wrkMast.getWrkNo()); +// } +// +// } +// +// } +// } +// } +// } + /** * 鍏ュ嚭搴� ===>> 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂 */ -- Gitblit v1.9.1