From 70976fb9b9b778ca7c5f52163bc78ba75f0d6615 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期六, 08 八月 2020 15:44:08 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/model/DevpSlave.java              |    2 ++
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   31 +++++++++++++++++++++++++++++++
 src/main/java/com/zy/asrs/mapper/WrkMastMapper.java         |   10 ++++++++--
 src/main/java/com/zy/core/MainProcess.java                  |    3 +++
 src/main/resources/application.yml                          |    2 ++
 5 files changed, 46 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
index cddf0f1..8762dda 100644
--- a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -20,12 +20,18 @@
     List<WrkMast> selectToBeHistoryData();
 
     // wcs ---------------------------------------------
-    @Select("select top 1 wrk_no,loc_no,source_sta_no,sta_no,crn_no,wrk_sts,io_type from asr_wrk_mast where source_sta_no=#{sourceStaNo} and wrk_sts=2 and barcode=#{barcode} and (io_type=1 or io_type=10) order by io_pri desc,io_time,wrk_no ASC")
+    // 鍏ュ簱绗竴姝ワ紝鎵爜浠幏鍙栨潯鐮佷俊鎭椂鏌ヨ
+    @Select("select top 1 * from asr_wrk_mast where source_sta_no=#{sourceStaNo} and wrk_sts=2 and barcode=#{barcode} and (io_type=1 or io_type=10) order by io_pri desc,io_time,wrk_no ASC")
     WrkMast selectPakInStep1(@Param("sourceStaNo")Integer sourceStaNo, @Param("barcode")String barcode);
 
-    @Select("select top 1 loc_no,source_sta_no,sta_no,wrk_no,crn_no,wrk_sts,io_type,source_loc_no,io_time from asr_wrk_mast where wrk_no=#{workNo} and wrk_sts=14 and (io_type=103 or io_type=107 or io_type=104)")
+    // 鎷f枡鍐嶅叆搴撴椂锛岀珯鐐规湁鐗╀笖闇�姹傛椂鏌ヨ
+    @Select("select top 1 * from asr_wrk_mast where wrk_no=#{workNo} and wrk_sts=14 and (io_type=103 or io_type=107 or io_type=104)")
     WrkMast selectPickStep(@Param("workNo")Integer workNo);
 
+    // 鍑哄簱鏃讹紝浠庡爢鍨涙満鍑哄簱绔欏埌鐩爣鍑哄簱绔欙紝鍫嗗灈鏈哄嚭搴撶珯鏈夌墿鏃舵墽琛�
+    @Select("select top 1 * from dbo.asr_wrk_mast where source_sta_no=#{sourceStaNo} and wrk_sts=12 and io_type>100 order by io_pri desc,io_time desc,wrk_no ASC")
+    WrkMast selectPakOutStep1(@Param("sourceStaNo")Integer sourceStaNo);
+
     // work log -------------------------------------------------------
     @Insert("insert into asr_wrk_mast_log select * from asr_wrk_mast where wrk_no=#{workNo}")
     int saveWrkMastLog(Integer workNo);
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 6c3f29a..feefdea 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -228,4 +228,35 @@
         }
     }
 
+    /**
+     * 鍫嗗灈鏈虹珯鍑哄簱鍒板嚭搴撶珯
+     */
+    public void crnStnToOutStn() {
+        for (DevpSlave devp : slaveProperties.getDevp()) {
+            // 閬嶅巻鎷f枡鍏ュ簱鍙�
+            for (DevpSlave.Sta outSta : devp.getOutSta()) {
+                // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅
+                DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+                StaProtocol staProtocol = devpThread.getStation().get(outSta.getStaNo());
+                if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == null)) {
+                    // 鏌ヨ宸ヤ綔妗�
+                    WrkMast wrkMast = wrkMastMapper.selectPakOutStep1(staProtocol.getSiteId());
+                    if (wrkMast == null) {
+                        continue;
+                    }
+                    // 鍒ゆ柇宸ヤ綔妗f潯浠�
+                    if (wrkMast.getIoType() < 100 || wrkMast.getStaNo() == null || wrkMast.getSourceStaNo() == null) {
+                        continue;
+                    }
+                    // 鍒ゆ柇鍚婅溅鏄惁瀹為檯宸插畬鎴愶紝涓旂數鑴戠姸鎬佸湪move涓紝浠ュ鐢佃剳杩涜鏇存柊宸ヤ綔妗�
+
+
+
+                }
+
+
+            }
+        }
+    }
+
 }
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 680ac07..379343e 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -38,6 +38,9 @@
                     mainService.generateStoreWrkFile();
                     // 鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱
                     mainService.stnToCrnStnPick();
+                    // 鍫嗗灈鏈哄嚭搴撶珯鍒板嚭搴撶珯
+                    mainService.crnStnToOutStn();
+
 
 
 
diff --git a/src/main/java/com/zy/core/model/DevpSlave.java b/src/main/java/com/zy/core/model/DevpSlave.java
index dcbbe12..4b2ef50 100644
--- a/src/main/java/com/zy/core/model/DevpSlave.java
+++ b/src/main/java/com/zy/core/model/DevpSlave.java
@@ -17,6 +17,8 @@
 
     private List<Sta> inSta = new ArrayList<>();
 
+    private List<Sta> outSta = new ArrayList<>();
+
     private List<Sta> pickSta = new ArrayList<>();
 
     @Data
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index c102779..df846cd 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -49,6 +49,8 @@
     inSta[0]:
       staNo: 2
       barcode: ${wcs-slave.barcode[0].id}
+    outSta[0]:
+      staNo: 6
     # 鎷f枡鍏ュ簱鍙�
     pickSta[0]:
       staNo: 2

--
Gitblit v1.9.1