From 5e9fd965cd7b7315e243acceb12fd5b34e5006d8 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <xltys1995>
Date: 星期五, 28 八月 2020 01:07:14 +0800
Subject: [PATCH] #v2.0

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   60 +++++++++++++++++++++++++++++++-----------------------------
 1 files changed, 31 insertions(+), 29 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 240840c..f1fe7db 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -153,6 +153,7 @@
                     if (!result) {
                         throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
                     }
+                    staProtocol.setPakMk(false);
 
                 }
 
@@ -246,12 +247,12 @@
      */
     @Async
     public void crnStnToOutStn() {
-        for (DevpSlave devp : slaveProperties.getDevp()) {
-            // 閬嶅巻鎷f枡鍏ュ簱鍙�
-            for (DevpSlave.Sta outSta : devp.getOutSta()) {
+        for (CrnSlave crnSlave : slaveProperties.getCrn()) {
+            // 閬嶅巻鍫嗗灈鏈哄嚭搴撶珯
+            for (CrnSlave.CrnStn crnStn : crnSlave.getCrnOutStn()) {
                 // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅
-                DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
-                StaProtocol staProtocol = devpThread.getStation().get(outSta.getStaNo());
+                DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId());
+                StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo());
                 if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == null)) {
                     // 鏌ヨ宸ヤ綔妗�
                     WrkMast wrkMast = wrkMastMapper.selectPakOutStep2(staProtocol.getSiteId());
@@ -269,32 +270,32 @@
                         // 绉诲姩涓�
                         continue;
                     }
-                    // 鏇存柊宸ヤ綔妗g姸鎬佷负14澶辫触 todo:luxiaotao
+                    //  鍒ゆ柇鍫嗗灈鏈虹姸鎬佺瓑寰呯‘璁�
                     if (crnProtocol.modeType == CrnModeType.AUTO && crnProtocol.getTaskNo().equals(wrkMast.getWrkNo().shortValue())
-                            && crnProtocol.statusType == CrnStatusType.IDLE
+                            && crnProtocol.statusType == CrnStatusType.WAITING
                             && crnProtocol.forkPosType == CrnForkPosType.HOME) {
+
+                        // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
+
+                        // 1.澶嶄綅鍫嗗灈鏈�
+                        crnThread.setResetFlag(true);
+
+                        // 2.涓嬪彂绔欑偣淇℃伅
+                        staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue());
+                        staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
+                        if (!MessageQueue.offer(SlaveType.Devp, crnStn.getDevpPlcId(), new Task(2, staProtocol))) {
+                            throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
+                        }
+
+                        // 鏇存柊宸ヤ綔妗g姸鎬佷负14澶辫触
                         wrkMast.setWrkSts(14L);
                         wrkMast.setCrnEndTime(new Date());
                         if (wrkMastMapper.updateById(wrkMast) == 0) {
                             throw new CoolException("鏇存柊宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负14澶辫触锛屽伐浣滃彿"+wrkMast.getWrkNo());
                         }
+
                     }
 
-                    // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
-
-                    // 1.澶嶄綅鍫嗗灈鏈� 鏇存柊鍫嗗灈鏈轰俊鎭� 涓� 涓嬪彂plc鍛戒护 todo:luxiaotao
-                    crnProtocol.setStatus(CrnStatusType.IDLE);
-                    crnProtocol.setTaskNo((short)0);
-                    if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(4, crnProtocol))) {
-                        throw new CoolException("鏇存柊鍫嗗灈鏈轰俊鎭け璐�");
-                    }
-
-                    // 2.涓嬪彂绔欑偣淇℃伅
-                    staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue());
-                    staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
-                    if (!MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol))) {
-                        throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
-                    }
                 }
             }
         }
@@ -551,13 +552,14 @@
                 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());
-                        }
-                    }
+//                    // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------
+//                    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