From 96437322dc7ebdf4bdd5dbf6723f0cfdbbcafa9e Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期三, 11 三月 2026 15:21:47 +0800
Subject: [PATCH] 成品灌装完成后采集plc反馈的是否贴标信息随工作任务存入数据库中

---
 src/main/java/com/zy/core/thread/SiemensDevpThread.java |   45 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 45 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index d8e8d66..6ee8453 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -5,6 +5,7 @@
 import HslCommunication.Profinet.Siemens.SiemensPLCS;
 import HslCommunication.Profinet.Siemens.SiemensS7Net;
 import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
 import com.core.common.DateUtils;
 import com.core.common.SpringUtils;
@@ -18,6 +19,8 @@
 import com.zy.core.model.protocol.StaProtocol;
 import com.zy.entity.BasDevp;
 import com.zy.service.BasDevpService;
+import com.zy.system.entity.Config;
+import com.zy.system.service.ConfigService;
 import com.zy.utils.News;
 import lombok.Data;
 import lombok.extern.slf4j.Slf4j;
@@ -369,6 +372,35 @@
             }
         }
 
+        // 璇�1鍙疯緭閫佺嚎鍑哄叆搴撴ā寮�
+        if (slave.getId() == 1) {
+            OperateResultExOne<byte[]> inOrOutBoundModeResult = siemensS7Net.Read("DB101.1480", (short) 2);
+            if (inOrOutBoundModeResult.IsSuccess) {
+                // 鍑哄叆搴撴ā寮�
+                int inOrOutMode = siemensS7Net.getByteTransform().TransInt16(inOrOutBoundModeResult.Content, 0);
+                // 鏇存柊鍑哄叆搴撴ā寮忓��
+                ConfigService configService = SpringUtils.getBean(ConfigService.class);
+                Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "inOrOutBoundMode"));
+                if (config != null) {
+                    config.setValue(String.valueOf(inOrOutMode));
+                    configService.updateById(config);
+                }
+                StaProtocol staProtocol1016 = station.get(1016);
+                StaProtocol staProtocol1043 = station.get(1043);
+                StaProtocol staProtocol1019 = station.get(1019);
+                if(staProtocol1016 != null) {
+                    staProtocol1016.setInOrOutMode(inOrOutMode);
+                }
+                if(staProtocol1043 != null) {
+                    staProtocol1043.setInOrOutMode(inOrOutMode);
+                }
+                if(staProtocol1019 != null) {
+                    staProtocol1019.setInOrOutMode(inOrOutMode);
+                }
+//                log.info("璇诲彇鍒板嚭鍏ュ簱妯″紡鍊间负锛歿}",inOrOutMode);
+            }
+        }
+
         // 璇荤┖妗朵俊鎭弽棣�
         if (slave.getId() == 1) {
             OperateResultExOne<byte[]> emptyBucketsResult = siemensS7Net.Read("DB101.1320", (short) (staNosErrList1.size() * 6));
@@ -412,6 +444,19 @@
             }
         }
 
+        // 璇绘槸鍚﹁创鏍�
+        if(slave.getId() == 2) {
+            ArrayList<Integer> staNosErrList2 = getStaNosErrList();
+            OperateResultExOne<byte[]> resultErr3 = siemensS7Net.Read("DB101.838", (short) 1);
+            if (resultErr3.IsSuccess){
+                boolean[] status = siemensS7Net.getByteTransform().TransBool(resultErr3.Content, 0, 1);
+                for (int i = 0;i<staNosErrList2.size();i++){
+                    StaProtocol staProtocol = station.get(staNosErrList2.get(i));
+                    staProtocol.setLabeling(status[i]); // 鏄惁璐存爣 false 璐存爣锛宼rue 涓嶈创鏍�
+                }
+            }
+        }
+
         if (result.IsSuccess) {
 
             OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));

--
Gitblit v1.9.1