From eb96c650d25d9d17ea3c582cd091dbeff9909bf1 Mon Sep 17 00:00:00 2001
From: tqs <56479841@qq.com>
Date: 星期五, 23 十二月 2022 08:52:07 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 insertions(+), 0 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 3d1d248..4ff55ab 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -571,6 +571,69 @@
     }
 
     /**
+     * 鎷f枡/鐩樼偣杞叏鏉垮悗锛�300绔欎换鍔¤浆100/200绔欏幓
+     */
+    public synchronized void transPickToFullChangeStn() {
+        for (DevpSlave devp : slaveProperties.getDevp()) {
+            // 閬嶅巻鎷f枡鍑哄簱鍙�
+            for (DevpSlave.Sta pickSta : devp.getPickOutSta()) {
+                // 鑾峰彇鎷f枡鍑哄簱绔欎俊鎭�
+                DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+                StaProtocol staProtocol = devpThread.getStation().get(pickSta.getStaNo());
+                if (staProtocol == null) {
+                    continue;
+                } else {
+                    staProtocol = staProtocol.clone();
+                }
+
+                if (staProtocol.isAutoing()
+                        && staProtocol.isLoading()
+                        && staProtocol.isInEnable()
+                        && staProtocol.getWorkNo() > 0
+                        && staProtocol.getStaNo().equals(staProtocol.getSiteId().shortValue())
+                        && staProtocol.isPakMk()){
+                    WrkMast wrkMast = wrkMastMapper.selectById(staProtocol.getWorkNo());
+                    if(Cools.isEmpty(wrkMast)){
+                        log.error("鎷f枡/鐩樼偣杞叏鏉�,浠诲姟鍙峰伐浣滄。涓嶅瓨鍦�===>>[浠诲姟鍙�:{}]", staProtocol.getWorkNo());
+                        continue;
+                    }
+                    if (wrkMast.getIoType() != 101) { continue; }
+
+                    //鎷f枡杞叏鏉块粯璁ゅ嚭搴撶珯100绔欙紝褰�100绔欐湁鐗╂椂锛岀洰鏍囨敼200绔�
+                    Integer staNo = 100;
+                    StaProtocol staProtocol100 = devpThread.getStation().get(staNo);
+                    if (staProtocol100 == null) {
+                        continue;
+                    } else {
+                        staProtocol100 = staProtocol100.clone();
+                    }
+                    if (staProtocol100.isLoading()) {
+                        staNo = 200;
+                    }
+
+                    // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
+                    staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue());
+                    staProtocol.setStaNo(staNo.shortValue());
+                    devpThread.setPakMk(staProtocol.getSiteId(), false);
+                    boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                    if (!result) {
+                        log.error("鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
+                    } else {
+                        wrkMast.setStaNo(staNo);
+                        wrkMast.setModiTime(new Date());
+                        if (wrkMastMapper.updateById(wrkMast) == 0) {
+                            log.error("鏇存柊宸ヤ綔妗g殑鐩爣绔欏け璐ワ紒锛侊紒 [宸ヤ綔鍙�:{}]", wrkMast.getWrkNo());
+                        }
+                    }
+
+                }
+            }
+
+
+        }
+    }
+
+    /**
      * 鍫嗗灈鏈虹珯鍑哄簱鍒板嚭搴撶珯
      */
     public synchronized void crnStnToOutStn() {

--
Gitblit v1.9.1