From 4b175490981693bd59bd96c750bc5bf91a1366a9 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 10 八月 2020 13:38:13 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   50 +++++++++++++++++++++---
 src/main/java/com/zy/core/MainProcess.java                  |    6 +--
 src/main/java/com/zy/core/model/protocol/CrnProtocol.java   |    7 +++
 3 files changed, 52 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 ea4177b..4f0f320 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -290,11 +290,10 @@
         }
     }
 
-
     /**
-     * 鍏ュ簱  ===>>  鍫嗗灈鏈虹珯鍒板簱浣�
+     * 鍏ュ嚭搴�  ===>>  鍫嗗灈鏈虹珯鍒板簱浣� 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂
      */
-    public void crnStnToLoc(){
+    public void crnIoExecute(){
         for (Slave crn : slaveProperties.getCrn()) {
             // 鑾峰彇鍫嗗灈鏈轰俊鎭�
             CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crn.getId());
@@ -305,16 +304,53 @@
             }
             // 鍙湁褰撳爢鍨涙満绌洪棽 鎴栬�� 鏃犱换鍔℃椂鎵嶇户缁墽琛�
             if (crnProtocol.getStatusType() == CrnStatusType.IDLE || crnProtocol.getTaskNo() == 0) {
-
+                // 濡傛灉鏈�杩戜竴娆℃槸鍏ュ簱妯″紡
+                if (crnProtocol.getLastIo().equals("I")) {
+                    if (basCrnp.getInEnable().equals("Y")) {
+                        this.crnStnToLoc(); //  鍏ュ簱
+                        crnProtocol.setLastIo("O");
+                    } else if (basCrnp.getOutEnable().equals("Y")) {
+                        this.locToCrnStn(); //  鍑哄簱
+                        crnProtocol.setLastIo("I");
+                    }
+                }
+                // 濡傛灉鏈�杩戜竴娆℃槸鍑哄簱妯″紡
+                else if (crnProtocol.getLastIo().equals("O")) {
+                    if (basCrnp.getOutEnable().equals("Y")) {
+                        this.locToCrnStn(); //  鍑哄簱
+                        crnProtocol.setLastIo("I");
+                    } else if (basCrnp.getInEnable().equals("Y")) {
+                        this.crnStnToLoc(); //  鍏ュ簱
+                        crnProtocol.setLastIo("O");
+                    }
+                }
             }
-
-
-
+            // 搴撲綅绉昏浆
+            this.locToLoc();
 
         }
     }
 
+    /**
+     * 鍏ュ簱  ===>>  鍫嗗灈鏈虹珯鍒板簱浣�
+     */
+    private void crnStnToLoc(){
 
+    }
+
+    /**
+     * 鍑哄簱  ===>>  搴撲綅鍒板爢鍨涙満绔�
+     */
+    private void locToCrnStn(){
+
+    }
+
+    /**
+     * 搴撲綅绉昏浆
+     */
+    private void locToLoc(){
+
+    }
 
     /**
      * 鎵ц瀵瑰伐浣滄。鐨勫叆搴撳畬鎴�
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index a33376e..94ae174 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -40,10 +40,8 @@
                     mainService.stnToCrnStnPick();
                     // 鍑哄簱  ===>>  鍫嗗灈鏈哄嚭搴撶珯鍒板嚭搴撶珯
                     mainService.crnStnToOutStn();
-
-
-                    // 鍏ュ簱  ===>>  鍫嗗灈鏈虹珯鍒板簱浣�
-                    mainService.crnStnToLoc();
+                    // 鍏ュ嚭搴�  ===>>  鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂
+                    mainService.crnIoExecute();
 
 
 
diff --git a/src/main/java/com/zy/core/model/protocol/CrnProtocol.java b/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
index ef9d7a0..1baf7b3 100644
--- a/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
@@ -166,4 +166,11 @@
         this.status = CrnStatusType.get(type).id.shortValue();
     }
 
+    /**
+     * 鏈�杩戜竴娆″叆鍑哄簱绫诲瀷
+     *       I:鍏ュ簱
+     *       O:鍑哄簱
+     */
+    private String lastIo = "I";
+
 }

--
Gitblit v1.9.1