From 526a013303588e54db3bd1ad26ad789c69fb983a Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 06 十二月 2022 12:47:50 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   26 +++++++++++++++++++-------
 1 files changed, 19 insertions(+), 7 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 598e97e..164bf82 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -39,7 +39,6 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
-import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
@@ -537,7 +536,6 @@
     /**
      * 鍫嗗灈鏈虹珯鍑哄簱鍒板嚭搴撶珯
      */
-    @Async
     public void crnStnToOutStn() {
         for (CrnSlave crnSlave : slaveProperties.getCrn()) {
             // 閬嶅巻鍫嗗灈鏈哄嚭搴撶珯
@@ -953,7 +951,7 @@
             List<String> outsideLoc = Utils.getGroupOutsideLoc(wrkMast.getSourceLocNo());
             if (!Cools.isEmpty(outsideLoc)) {
                 if (!Cools.isEmpty(wrkMastMapper.selectWorkingOfPakOutBySource(outsideLoc))) {
-                    log.warn("{}宸ヤ綔妗e嚭搴撳け璐ワ紝鍘熷洜锛氬灞傚簱浣峽}姝e湪鎵ц鍑哄簱浠诲姟锛�", wrkMast.getWrkNo(), JSON.toJSONString(outsideLoc));
+//                    log.warn("{}宸ヤ綔妗e嚭搴撳け璐ワ紝鍘熷洜锛氬灞傚簱浣峽}姝e湪鎵ц鍑哄簱浠诲姟锛�", wrkMast.getWrkNo(), JSON.toJSONString(outsideLoc));
                     continue;
                 }
             }
@@ -1646,7 +1644,6 @@
     /**
      * 鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣�
      */
-    @Async
     @Transactional
     public void storeFinished() {
         for (CrnSlave crn : slaveProperties.getCrn()) {
@@ -2312,7 +2309,6 @@
     /**
      * 绌烘爤鏉垮垵濮嬪寲鍏ュ簱,鍙夎溅鍏ュ簱绔欐斁璐�
      */
-    @Async
     public void storeEmptyPlt(){
         for (DevpSlave devp : slaveProperties.getDevp()) {
             // 閬嶅巻绌烘澘鍏ュ簱鍙�
@@ -2401,7 +2397,6 @@
     /**
      * 鍑哄簱  ===>> 宸ヤ綔妗d俊鎭啓鍏ed鏄剧ず鍣�
      */
-    @Async
     public void ledExecute() {
         for (LedSlave led : slaveProperties.getLed()) {
             // 鑾峰彇杈撻�佺嚎plc绾跨▼
@@ -2502,7 +2497,6 @@
     /**
      * 鍏朵粬  ===>> LED鏄剧ず鍣ㄥ浣嶏紝鏄剧ず榛樿淇℃伅
      */
-    @Async
     public void ledReset() {
         for (LedSlave led : slaveProperties.getLed()) {
             // 鑾峰彇杈撻�佺嚎plc绾跨▼
@@ -2712,6 +2706,11 @@
             // 22.灏忚溅寰呮惉
             if (wrkCharge.getWrkSts() == 22) {
 
+                // 鍏ュ嚭搴撲换鍔′紭鍏�
+                if (null != wrkMastMapper.selectWorkingByCrn(wrkCharge.getCrnNo())) {
+                    return;
+                }
+
                 // 鎼皬杞﹁嚦灏忚溅璧板悜閫氶亾
                 List<String> channel = slaveProperties.getChannel();
                 for (String channelLocNo : channel) {
@@ -2787,6 +2786,11 @@
             } else if (wrkCharge.getWrkSts() == 26) {
                 // 鍥哄畾鍫嗗灈鏈�
                 int crnNo = 1;
+                // 鍏ュ嚭搴撲换鍔′紭鍏�
+                if (null != wrkMastMapper.selectWorkingByCrn(crnNo)) {
+                    return;
+                }
+
                 // 鍏呯數浣�
                 LocMast chargeLoc = locMastService.selectById(wrkCharge.getLocNo());
 
@@ -2942,6 +2946,10 @@
                 } else {
                     // 鍥哄畾鍫嗗灈鏈�
                     int crnNo = 1;
+                    if (null != wrkMastMapper.selectWorkingByCrn(crnNo)) {
+                        return;
+                    }
+
                     LocMast channelLoc = locMastService.selectById(channelLocNo);
 
                     CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crnNo);
@@ -3006,6 +3014,10 @@
                 }
             }
         } else if (wrkCharge.getWrkSts() == 45L) {
+            if (null != wrkMastMapper.selectWorkingByCrn(wrkCharge.getCrnNo())) {
+                return;
+            }
+
             LocMast idleLoc = locMastService.selectById(basSte.getIdleLoc());
 
             Integer otherSte = existOtherSte(idleLoc.getLocNo(), wrkCharge.getSteNo());

--
Gitblit v1.9.1