From e305c2c64ae1dc96d471c68b1f595b62da32de69 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期四, 13 十一月 2025 11:55:15 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/ConsoleController.java |   13 ++++++
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   29 ++++++++++++--
 src/main/java/com/zy/asrs/controller/MonitorController.java |    8 ++--
 src/main/java/com/zy/core/model/LedSlave.java               |    2 +
 src/main/java/com/zy/core/MainProcess.java                  |    2 
 src/main/resources/application.yml                          |   32 +++++++++++----
 6 files changed, 68 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/ConsoleController.java b/src/main/java/com/zy/asrs/controller/ConsoleController.java
index 9fdb831..bb89573 100644
--- a/src/main/java/com/zy/asrs/controller/ConsoleController.java
+++ b/src/main/java/com/zy/asrs/controller/ConsoleController.java
@@ -30,6 +30,7 @@
 import com.zy.core.enums.SlaveType;
 import com.zy.core.model.CrnSlave;
 import com.zy.core.model.DevpSlave;
+import com.zy.core.model.LedSlave;
 import com.zy.core.model.protocol.CrnProtocol;
 import com.zy.core.model.protocol.StaProtocol;
 import com.zy.core.properties.SlaveProperties;
@@ -39,6 +40,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.*;
 
 /**
@@ -361,4 +363,15 @@
         return R.ok().add(JSON.toJSONString(jsonObjects));
     }
 
+    @GetMapping("/getLedInfos")
+    public R getLedInfos(HttpServletRequest request) {
+        String remoteAddr = request.getRemoteAddr();
+        for (LedSlave slave : slaveProperties.getLed()) {
+            if (slave.getIp().equals(remoteAddr)) {
+                return R.ok().add(slave);
+            }
+        }
+        return R.ok();
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/controller/MonitorController.java b/src/main/java/com/zy/asrs/controller/MonitorController.java
index 8977b4f..7f31d4a 100644
--- a/src/main/java/com/zy/asrs/controller/MonitorController.java
+++ b/src/main/java/com/zy/asrs/controller/MonitorController.java
@@ -98,8 +98,8 @@
         }
 
         // 鑾峰彇杈撻�佺嚎plc绾跨▼
-        LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, ledId);
-        String ledContent = ledThread.getWorkNos().toString();
+//        LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, ledId);
+//        String ledContent = ledThread.getWorkNos().toString();
 //        ledContent = "ask鐨勬ā鍧楄惃婊″ぇ绠椾簡钀ㄦ弧澶т簡\n 鏄獦澧冨埌鍩冨強鍡插鍡瞈n 钀ㄨ揪濮嗘墦寮�钀ㄦ弧澶у嚡鎾掗害褰撳姵钀ㄦ弧澶ц�佸笀";
 
         return R.ok(
@@ -111,8 +111,8 @@
                 .add("yDistance", Arith.multiplys(1, Math.abs(yDistance), 1))   // 绱鍗囬檷璺濈km
                 .add("xDuration", Arith.multiplys(1, Math.abs(xDuration), 1))    // 绱璧拌鏃堕暱h
                 .add("yDuration", Arith.multiplys(1, Math.abs(yDuration), 1))    // 绱鍗囬檷鏃堕暱h
-                .add("isShow", !Cools.isEmpty(ledContent)) // 鏄惁鏄剧ず鍐呭
-                .add("content", ledContent) // 鏄剧ず鍐呭
+//                .add("isShow", !Cools.isEmpty(ledContent)) // 鏄惁鏄剧ず鍐呭
+//                .add("content", ledContent) // 鏄剧ず鍐呭
         );
     }
 
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 7c0a9b4..25392ee 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -210,7 +210,7 @@
                         } else if (jsonObject.getInteger("code").equals(700) && (!barcodeThread.getBarcode().equals("NG"))) {
                             StartupDto dto = jsonObject.getObject("data", StartupDto.class);
                             barcodeThread.setBarcode("");
-                            staProtocol.setWorkNo((short) 9991);
+                            staProtocol.setWorkNo((short) 9999);
                             staProtocol.setStaNo(inSta.getBackSta().shortValue());
                             devpThread.setPakMk(staProtocol.getSiteId(), true);
                             boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
@@ -218,7 +218,7 @@
                         } else {
                             StartupDto dto = jsonObject.getObject("data", StartupDto.class);
                             barcodeThread.setBarcode("");
-                            staProtocol.setWorkNo((short) 9991);
+                            staProtocol.setWorkNo((short) 9999);
                             staProtocol.setStaNo(inSta.getBackSta().shortValue());
                             devpThread.setPakMk(staProtocol.getSiteId(), true);
                             boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
@@ -1286,15 +1286,36 @@
 
                 // 绔欑偣鏉′欢鍒ゆ柇
                 if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable()
-                        && staProtocol.isEmptyMk() && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() == 9999 || staProtocol.getWorkNo() == 9990 || staProtocol.getWorkNo() == 9997) && staProtocol.isPakMk()) {
-
+                        && staProtocol.isEmptyMk() && staProtocol.getWorkNo() == 9996 && staProtocol.isPakMk()) {
                     try {
+                        // 鑾峰彇鏉$爜鎵弿浠俊鎭�
+                        BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, emptyInSta.getBarcode());
+                        String barcode = barcodeThread.getBarcode();
+
+                        if ((!Cools.isEmpty(barcode) && barcode.equals("00000000"))) {
+                            staProtocol.setWorkNo((short) 9999);
+                            staProtocol.setStaNo(emptyInSta.getBackSta().shortValue());
+                            devpThread.setPakMk(staProtocol.getSiteId(), false);
+                            boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+
+                            // led 寮傚父鏄剧ず
+                            LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, emptyInSta.getLed());
+                            if (ledThread != null) {
+                                MessageQueue.offer(SlaveType.Led, emptyInSta.getLed(), new Task(3, "娌℃湁鎵埌鎵樼洏鐮侊紒锛侊紒锛�"));
+                            }
+                            continue;
+                        }
+                        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", barcode).eq("io_type",101));
+                        if (!Cools.isEmpty(wrkMast)) {
+                            wrkMast.setWrkSts(15L);//鍑哄簱瀹屾垚杞巻鍙叉。
+                        }
                         LocTypeDto locTypeDto = new LocTypeDto(staProtocol);
 
                         SearchLocParam param = new SearchLocParam();
                         param.setIoType(10);
                         param.setSourceStaNo(emptyInSta.getStaNo());
                         param.setLocType1(locTypeDto.getLocType1());
+                        param.setBarcode(barcode);
                         String response = new HttpHandler.Builder()
                                 .setUri(wmsUrl)
                                 .setPath("/rpc/pakin/loc/v1")
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index cf3409a..db94bf3 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -72,7 +72,7 @@
 //                    mainService.fierCrn();
 
                     //鑷姩鍑虹┖鏉�
-                    mainService.automaticEmptyBoardOutbound();
+//                    mainService.automaticEmptyBoardOutbound();
 
                 } catch (Exception e) {
                     e.printStackTrace();
diff --git a/src/main/java/com/zy/core/model/LedSlave.java b/src/main/java/com/zy/core/model/LedSlave.java
index af02dfc..e2d3682 100644
--- a/src/main/java/com/zy/core/model/LedSlave.java
+++ b/src/main/java/com/zy/core/model/LedSlave.java
@@ -21,4 +21,6 @@
     // 鍙夎溅绔欑偣鏁扮粍
     private List<Integer> staArr = new ArrayList<>();
 
+    private Integer crnId;
+
 }
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 9be50e2..ac43165 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -9,7 +9,8 @@
   datasource:
     driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
 #    url: jdbc:sqlserver://10.12.55.200:1433;databasename=zjfnasrs
-    url: jdbc:sqlserver://178.18.1.200:1433;databasename=jxtlfasrs
+    url: jdbc:sqlserver://178.18.1.201:1433;databasename=jxtlfasrs
+
     username: sa
     password: sa@123
   mvc:
@@ -85,6 +86,9 @@
     # 绌烘澘鍏ュ簱鍙�1
     emptyInSta[0]:
       staNo: 101
+      barcode: ${wcs-slave.barcode[0].id}
+      backSta: 102
+      led: ${wcs-slave.led[0].id}
     # 鍑哄簱鍙�1
     outSta[0]:
       staNo: 104
@@ -99,17 +103,27 @@
    # LED1
   led[0]:
     id: 1
-    ip: 10.10.10.60
-    port: 5005
-    devpPlcId: ${wcs-slave.devp[0].id}
-    staArr: 101
-    # LED2
-  led[1]:
-    id: 1
-    ip: 10.10.10.60
+    ip: 178.18.1.28
     port: 5005
     devpPlcId: ${wcs-slave.devp[0].id}
     staArr: 104
+    crnId: 1
+  # LED2
+  led[1]:
+    id: 2
+    ip: 178.18.1.29
+    port: 5005
+    devpPlcId: ${wcs-slave.devp[0].id}
+    staArr: 100
+    crnId: 1
+  # LED3
+  led[2]:
+    id: 3
+    ip: 178.18.1.30
+    port: 5005
+    devpPlcId: ${wcs-slave.devp[0].id}
+    staArr: 10
+    crnId: 1
 #
 #  #socket
 #  socket[0]:

--
Gitblit v1.9.1