From f10eba767c09d40ea890d0cf82698a9e855d55b1 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <xltys1995> Date: 星期五, 28 八月 2020 14:07:52 +0800 Subject: [PATCH] #v2.1 --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 41 ++++++++++++++++++++++++++--------------- 1 files changed, 26 insertions(+), 15 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 7aa1291..10614c8 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -368,26 +368,26 @@ // 濡傛灉鏈�杩戜竴娆℃槸鍏ュ簱妯″紡 if (crnProtocol.getLastIo().equals("I")) { if (basCrnp.getInEnable().equals("Y")) { - this.crnStnToLoc(crn); // 鍏ュ簱 + this.crnStnToLoc(crn, crnProtocol); // 鍏ュ簱 crnProtocol.setLastIo("O"); } else if (basCrnp.getOutEnable().equals("Y")) { - this.locToCrnStn(crn); // 鍑哄簱 + this.locToCrnStn(crn, crnProtocol); // 鍑哄簱 crnProtocol.setLastIo("I"); } } // 濡傛灉鏈�杩戜竴娆℃槸鍑哄簱妯″紡 else if (crnProtocol.getLastIo().equals("O")) { if (basCrnp.getOutEnable().equals("Y")) { - this.locToCrnStn(crn); // 鍑哄簱 + this.locToCrnStn(crn, crnProtocol); // 鍑哄簱 crnProtocol.setLastIo("I"); } else if (basCrnp.getInEnable().equals("Y")) { - this.crnStnToLoc(crn); // 鍏ュ簱 + this.crnStnToLoc(crn, crnProtocol); // 鍏ュ簱 crnProtocol.setLastIo("O"); } } } // 搴撲綅绉昏浆 - this.locToLoc(crn); + this.locToLoc(crn, crnProtocol); } } @@ -395,7 +395,7 @@ * 鍏ュ簱 ===>> 鍫嗗灈鏈虹珯鍒板簱浣� */ @Async - public void crnStnToLoc(CrnSlave slave){ + public void crnStnToLoc(CrnSlave slave, CrnProtocol crnProtocol){ for (CrnSlave.CrnStn crnStn : slave.getCrnInStn()) { boolean flag = false; // 鑾峰彇鍫嗗灈鏈哄叆搴撶珯淇℃伅 @@ -430,6 +430,11 @@ continue; } + // 鍫嗗灈鏈烘帶鍒惰繃婊� + if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) { + continue; + } + // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- CrnCommand crnCommand = new CrnCommand(); crnCommand.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙� @@ -461,7 +466,7 @@ * 鍑哄簱 ===>> 搴撲綅鍒板爢鍨涙満绔� */ @Async - public void locToCrnStn(CrnSlave slave){ + public void locToCrnStn(CrnSlave slave, CrnProtocol crnProtocol){ for (CrnSlave.CrnStn crnStn : slave.getCrnOutStn()) { // 鑾峰彇宸ヤ綔鐘舵�佷负11锛堢敓鎴愬嚭搴揑D锛夌殑鍑哄簱宸ヤ綔妗� WrkMast wrkMast = wrkMastMapper.selectPakOutStep1(slave.getId()); @@ -492,6 +497,11 @@ if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() !=null && staDetl.getCanouting().equals("Y") && staProtocol.getWorkNo() == 0) { // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- + + // 鍫嗗灈鏈烘帶鍒惰繃婊� + if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) { + continue; + } // 1.鍫嗗灈鏈哄紑濮嬬Щ鍔� CrnCommand crnCommand = new CrnCommand(); @@ -525,7 +535,7 @@ * 搴撲綅绉昏浆 */ @Async - public void locToLoc(CrnSlave slave){ + public void locToLoc(CrnSlave slave, CrnProtocol crnProtocol){ // 鑾峰彇宸ヤ綔妗d俊鎭� WrkMast wrkMast = wrkMastMapper.selectLocMove(slave.getId()); if (null == wrkMast) { @@ -552,6 +562,12 @@ if (!basCrnp.getInEnable().equals("Y") && !basCrnp.getOutEnable().equals("Y")) { return; } + + // 鍫嗗灈鏈烘帶鍒惰繃婊� + if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) { + return; + } + // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- CrnCommand crnCommand = new CrnCommand(); crnCommand.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙� @@ -576,6 +592,7 @@ log.error("銆愬簱浣嶇Щ杞�� 淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo()); } } + } /** @@ -610,13 +627,7 @@ wrkMast.setModiTime(now); // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 if (wrkMastMapper.updateById(wrkMast) > 0) { -// // 鍛戒护涓嬪彂鍖� ------------------------------------------------------------------------- -// if (crnProtocol.getStatusType().equals(CrnStatusType.WAITING)) { -// // 鍫嗗灈鏈哄浣� -// if (!MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(3, new CrnCommand()))) { -// log.error("鍫嗗灈鏈哄浣嶅懡浠や笅鍙戝け璐ワ紝宸ヤ綔鍙�={}", wrkMast.getWrkNo()); -// } -// } + // 鍫嗗灈鏈哄浣� crnThread.setResetFlag(true); } -- Gitblit v1.9.1