From e6743906faa31b015c5162a3d0beb9914bde1893 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期三, 26 六月 2024 15:28:17 +0800
Subject: [PATCH] #

---
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java       |   44 ++++++++++++++++++++++++++++++++------------
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/domain/param/CreateInTaskParam.java     |    3 +++
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SuopaiSiemensDevpThread.java |    2 +-
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SiemensBarcodeThread.java    |    4 ++--
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/controller/OpenController.java          |    1 +
 5 files changed, 39 insertions(+), 15 deletions(-)

diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/controller/OpenController.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/controller/OpenController.java
index 0dfc21b..9a3d13a 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/controller/OpenController.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/controller/OpenController.java
@@ -164,6 +164,7 @@
         task.setOriginLoc(null);
         task.setDestSite(destSite);
         task.setDestLoc(param.getDestLoc());
+        task.setZpallet(param.getBarcode());
         task.setIoTime(new Date());
         task.setStartTime(new Date());
         task.setStatus(1);
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/domain/param/CreateInTaskParam.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/domain/param/CreateInTaskParam.java
index f97c7f8..1594352 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/domain/param/CreateInTaskParam.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/domain/param/CreateInTaskParam.java
@@ -20,4 +20,7 @@
     //浼樺厛绾�
     private Integer priority;
 
+    //鏉$爜
+    private String barcode;
+
 }
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java
index d99c407..c2592f2 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/MainServiceImpl.java
@@ -420,18 +420,38 @@
     // 瑙f瀽鍏ュ簱宸ヤ綔妗�
     public synchronized void analyzeInBoundTask() {
         for (Task task : taskService.selectWaitAnalyzeInBoundTask()) {
-//            BasConveyorSta basConveyorSta = basConveyorStaService.getOne(new LambdaQueryWrapper<BasConveyorSta>().eq(BasConveyorSta::getSiteNo, task.getDestSite()));
-//            if (basConveyorSta == null) {
-//                continue;
-//            }
-//            DeviceBarcode deviceBarcode = deviceBarcodeService.getById(basConveyorSta.getBarcodeId());
-//            if (deviceBarcode == null) {
-//                continue;
-//            }
-//            BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, Integer.parseInt(deviceBarcode.getDeviceId()));
-//            if (barcodeThread == null) {
-//                continue;
-//            }
+            BasConveyorSta basConveyorSta = basConveyorStaService.getOne(new LambdaQueryWrapper<BasConveyorSta>().eq(BasConveyorSta::getSiteNo, task.getDestSite()));
+            if (basConveyorSta == null) {
+                continue;
+            }
+            BasConveyor basConveyor = basConveyorService.getById(basConveyorSta.getConveyorId());
+            if (basConveyor == null) {
+                continue;
+            }
+            DeviceBarcode deviceBarcode = deviceBarcodeService.getById(basConveyorSta.getBarcodeId());
+            if (deviceBarcode == null) {
+                continue;
+            }
+            BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, Integer.parseInt(deviceBarcode.getDeviceId()));
+            if (barcodeThread == null) {
+                continue;
+            }
+            if (!barcodeThread.getBarcode().equals(task.getZpallet())) {
+                continue;
+            }
+            DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Conveyor, basConveyor.getDeviceId().intValue());
+            if (devpThread == null) {
+                continue;
+            }
+            StaProtocol staProtocol = devpThread.getStation().get(basConveyorSta.getSiteNo());
+            if (staProtocol == null) {
+                continue;
+            }
+            if (!(staProtocol.isAutoing()
+                    && staProtocol.isLoading()
+                    && staProtocol.isInEnable())) {
+                continue;
+            }
 
 
             if (Cools.isEmpty(task.getShuttleNo())) {
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SiemensBarcodeThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SiemensBarcodeThread.java
index a5aca2d..f67ed48 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SiemensBarcodeThread.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SiemensBarcodeThread.java
@@ -27,7 +27,7 @@
     private RedisUtil redisUtil;
     private SiemensS7Net siemensS7Net;
     private StringBuffer barcode = new StringBuffer();
-    private String lastBarcode;
+    private String lastBarcode = "";
 
     public SiemensBarcodeThread(Device device, RedisUtil redisUtil) {
         this.device = device;
@@ -41,10 +41,10 @@
 
     @Override
     public boolean setBarcode(String barcode) {
-        this.lastBarcode = String.valueOf(this.barcode);
         this.barcode.delete(0, this.barcode.length());
         this.barcode.append(barcode);
         if(!Cools.isEmpty(barcode) && !this.lastBarcode.equals(barcode)) {
+            this.lastBarcode = String.valueOf(this.barcode);
             News.info("{}鍙锋潯鐮佸櫒锛屾绱㈡暟鎹細{}", device.getId(), this.barcode);
             JSONObject jsonObject = new JSONObject();
             jsonObject.put("time", DateUtils.convert(new Date(), DateUtils.yyyyMMddHHmmss_F));
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SuopaiSiemensDevpThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SuopaiSiemensDevpThread.java
index dec340d..d154f42 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SuopaiSiemensDevpThread.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SuopaiSiemensDevpThread.java
@@ -127,7 +127,7 @@
                 staProtocol.setOutEnable(siemensS7Net.getByteTransform().TransInt16(result.Content, i * 40 + 14) == 2);// 鍙嚭
                 staProtocol.setWorkMode((int) siemensS7Net.getByteTransform().TransInt16(result.Content, i * 40 + 8));// 宸ヤ綔妯″紡
 
-                String barcode = siemensS7Net.getByteTransform().TransString(result.Content,56,10, "UTF-8");// 鏉$爜
+                String barcode = siemensS7Net.getByteTransform().TransString(result.Content,58,8, "UTF-8");// 鏉$爜
                 BasConveyorStaService basConveyorStaService = SpringUtils.getBean(BasConveyorStaService.class);
                 DeviceBarcodeService deviceBarcodeService = SpringUtils.getBean(DeviceBarcodeService.class);
                 BasConveyorSta basConveyorSta = basConveyorStaService.getOne(new LambdaQueryWrapper<BasConveyorSta>().eq(BasConveyorSta::getSiteNo, siteId));

--
Gitblit v1.9.1