From a8990be617f61ff8467c5b7cc6a0dfd1493607c5 Mon Sep 17 00:00:00 2001
From: TQS <56479841@qq.com>
Date: 星期四, 27 二月 2025 09:11:30 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   74 ++++++++++++++++++++++++++++--------
 1 files changed, 57 insertions(+), 17 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 72d6f90..814365d 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -7,10 +7,7 @@
 import com.core.common.Cools;
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
-import com.zy.asrs.mapper.BasCrnErrorMapper;
-import com.zy.asrs.mapper.BasDevpMapper;
-import com.zy.asrs.mapper.WrkChargeMapper;
-import com.zy.asrs.mapper.WrkMastMapper;
+import com.zy.asrs.mapper.*;
 import com.zy.asrs.service.*;
 import com.zy.asrs.utils.Utils;
 import com.zy.common.model.LocTypeDto;
@@ -95,6 +92,8 @@
     private WrkChargeMapper wrkChargeMapper;
     @Autowired
     private BasDevpMapper basDevpMapper;
+    @Autowired
+    private WaitPakinMapper waitPakinMapper;
 
     /**
      * 缁勬墭
@@ -273,9 +272,6 @@
                             }else if (inSta.getStaNo().equals(213)){
                                 staProtocol.setWorkNo((short)9995);
                                 staProtocol.setStaNo((short)214);
-                            }else {
-                                staProtocol.setWorkNo((short)9995);
-                                staProtocol.setStaNo(inSta.getBackSta().shortValue());
                             }
                             devpThread.setPakMk(staProtocol.getSiteId(), false);
                             MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
@@ -1548,9 +1544,11 @@
                 } else {
                     List<String> shallowLocs = Utils.getShallowLocs(wrkMast.getSourceLocNo());
                     if (!Cools.isEmpty(shallowLocs)) {
+                        // 娴呭簱浣嶇粍鏈夎揣
                         for (String shallowLocNo : shallowLocs) {
                             LocMast shallowLoc = locMastService.selectById(shallowLocNo);
                             WrkMast waitWrkMast = wrkMastMapper.selectByLocNo(shallowLocNo);
+                            // 娴呭簱浣嶅湪浣滀笟涓�
                             if (shallowLoc.getLocSts().equals("P") || shallowLoc.getLocSts().equals("R")) {
                                 if (Cools.isEmpty(waitWrkMast)){
                                     News.error("搴撲綅寮傚父");
@@ -1578,7 +1576,8 @@
                                         break;
                                     }
                                 }
-                            }else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) {
+                            // 娴呭簱浣嶇粍鏈夎揣锛屼笖娌℃湁鍦ㄤ綔涓氫腑
+                            } else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) {
                                 if (null == waitWrkMast) {
                                     // 鐢熸垚涓�绗旂Щ搴撲换鍔″伐浣滄。銆佹敼鍙樻祬搴撲綅鐨勬簮搴�/鐩爣搴� 搴撲綅鐘舵��
                                     // 娌℃湁浣滀笟涓殑鍑哄簱浠诲姟鏃讹紝鎵嶈兘鐢熸垚绉诲簱浠诲姟
@@ -4631,7 +4630,8 @@
             }
             LocMast loc = null;
 
-            if(shallowLoc.getLocType2() == 3){ //浣庨娣风洿鎺ュ嚭搴�
+            if(shallowLoc.getLocType2() == 3 || shallowLoc.getLocType2() == 1){
+                //浣庨娣风洿鎺ュ嚭搴�
                 // 鑾峰彇宸ヤ綔鍙�
                 int workNo = commonService.getWorkNo(0);
                 Date now = new Date();
@@ -4676,13 +4676,20 @@
                         WrkDetl wrkDetl = new WrkDetl();
                         wrkDetl.sync(locDetl);
                         wrkDetl.setWrkNo(workNo);
-                        wrkDetl.setIoTime(new Date());
+                        wrkDetl.setIoTime(now);
                         wrkDetl.setAnfme(locDetl.getAnfme());
-                        wrkDetl.setAppeTime(new Date());
-                        wrkDetl.setModiTime(new Date());
+                        wrkDetl.setAppeTime(now);
+                        wrkDetl.setModiTime(now);
                         if (!wrkDetlService.insert(wrkDetl)) {
                             throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
                         }
+                        // 鐢熸垚瀵瑰簲鐨勭粍鎵樻。
+                        WaitPakin waitPakin = new WaitPakin();
+                        waitPakin.sync(wrkDetl);
+                        waitPakin.setModiTime(now);
+                        waitPakin.setAppeTime(now);
+                        waitPakinMapper.insert(waitPakin);
+
                     }
                 }
                 // 淇敼婧愬簱浣嶇姸鎬�
@@ -4940,9 +4947,25 @@
 //                                    }
                                     }
                                 } else {
-                                    // 鍏ュ簱妯″紡
-                                    devpThread.ioModeOf3F = IoModeType.PAKIN_MODE;
-
+                                    CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, 1);
+                                    CrnProtocol crnProtocol = crnThread.getCrnProtocol();
+                                    if (crnProtocol != null) {
+                                        if (crnProtocol.getTaskNo() != 0) {
+                                            if (crnProtocol.isStatusEnd()){
+                                                // 鍑哄簱妯″紡
+                                                devpThread.ioModeOf3F = IoModeType.PAKOUT_MODE;
+                                            }  else {
+                                                // 鍏ュ簱妯″紡
+                                                devpThread.ioModeOf3F = IoModeType.PAKIN_MODE;
+                                            }
+                                        } else {
+                                            // 鍏ュ簱妯″紡
+                                            devpThread.ioModeOf3F = IoModeType.PAKIN_MODE;
+                                        }
+                                    } else {
+                                        // 鍏ュ簱妯″紡
+                                        devpThread.ioModeOf3F = IoModeType.PAKIN_MODE;
+                                    }
                                 }
                             }
                             break;
@@ -4969,8 +4992,25 @@
 //                                    }
                                     }
                                 } else {
-                                    // 鍏ュ簱妯″紡
-                                    devpThread.ioModeOf4F = IoModeType.PAKIN_MODE;
+                                    CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, 3);
+                                    CrnProtocol crnProtocol = crnThread.getCrnProtocol();
+                                    if (crnProtocol != null) {
+                                        if (crnProtocol.getTaskNo() != 0) {
+                                            if (crnProtocol.isStatusEnd()){
+                                                // 鍑哄簱妯″紡
+                                                devpThread.ioModeOf3F = IoModeType.PAKOUT_MODE;
+                                            }  else {
+                                                // 鍏ュ簱妯″紡
+                                                devpThread.ioModeOf3F = IoModeType.PAKIN_MODE;
+                                            }
+                                        } else {
+                                            // 鍏ュ簱妯″紡
+                                            devpThread.ioModeOf3F = IoModeType.PAKIN_MODE;
+                                        }
+                                    } else {
+                                        // 鍏ュ簱妯″紡
+                                        devpThread.ioModeOf3F = IoModeType.PAKIN_MODE;
+                                    }
                                 }
                             }
                             break;

--
Gitblit v1.9.1