From 44d6711c1afb71dccd78a39948dffe432c8989de Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期五, 21 八月 2020 13:25:05 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/model/protocol/StaProtocol.java |   14 ++++++++++++++
 src/main/java/com/zy/core/thread/CrnThread.java           |   12 ++++++++++++
 src/main/java/com/zy/core/model/protocol/CrnProtocol.java |    7 +++++++
 src/main/java/com/zy/core/thread/DevpThread.java          |   22 ++++++++++++++++++++++
 src/main/java/com/zy/core/enums/CrnModeType.java          |    1 +
 5 files changed, 56 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/core/enums/CrnModeType.java b/src/main/java/com/zy/core/enums/CrnModeType.java
index 2d8cdb8..4925f47 100644
--- a/src/main/java/com/zy/core/enums/CrnModeType.java
+++ b/src/main/java/com/zy/core/enums/CrnModeType.java
@@ -2,6 +2,7 @@
 
 public enum CrnModeType {
 
+    STOP(0),    // 鍋滄満鐘舵��
     HAND(1),   // 鎵嬪姩妯″紡涓�
     HALF_AUTO(2),  // 鍗婅嚜鍔ㄦā寮忎腑
     AUTO(3),   // 鐢佃剳妯″紡涓�/鑷姩妯″紡
diff --git a/src/main/java/com/zy/core/model/protocol/CrnProtocol.java b/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
index b7c4bc5..f1f265a 100644
--- a/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
@@ -1,5 +1,6 @@
 package com.zy.core.model.protocol;
 
+import com.zy.asrs.entity.BasCrnp;
 import com.zy.core.enums.CrnForkPosType;
 import com.zy.core.enums.CrnLiftPosType;
 import com.zy.core.enums.CrnModeType;
@@ -313,4 +314,10 @@
      */
     private String lastIo = "I";
 
+
+    public BasCrnp toSqlModel(BasCrnp basCrnp){
+        basCrnp.setCrnErr(alarm1.longValue());
+        basCrnp.setWrkNo(taskNo.intValue());
+        return basCrnp;
+    }
 }
diff --git a/src/main/java/com/zy/core/model/protocol/StaProtocol.java b/src/main/java/com/zy/core/model/protocol/StaProtocol.java
index 436f03b..4c141f2 100644
--- a/src/main/java/com/zy/core/model/protocol/StaProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/StaProtocol.java
@@ -1,5 +1,6 @@
 package com.zy.core.model.protocol;
 
+import com.zy.asrs.entity.BasDevp;
 import lombok.Data;
 
 /**
@@ -42,5 +43,18 @@
     // 閿佸畾鏍囪
     private boolean pakMk;
 
+    public BasDevp toSqlModel(){
+        BasDevp basDevp = new BasDevp();
+        basDevp.setDevNo(siteId);
+        basDevp.setWrkNo(workNo.intValue());
+        // 绔欑偣 todo:luxiaotao
+        basDevp.setAutoing(autoing?"Y":"N");
+        basDevp.setLoading(loading?"Y":"N");
+        basDevp.setInEnable(inEnable?"Y":"N");
+        basDevp.setOutEnable(outEnable?"Y":"N");
+        basDevp.setInreq1(inreq1?"Y":"N");
+        return basDevp;
+    }
+
 
 }
diff --git a/src/main/java/com/zy/core/thread/CrnThread.java b/src/main/java/com/zy/core/thread/CrnThread.java
index ad3e99b..fcc56e1 100644
--- a/src/main/java/com/zy/core/thread/CrnThread.java
+++ b/src/main/java/com/zy/core/thread/CrnThread.java
@@ -6,6 +6,9 @@
 import HslCommunication.Profinet.Siemens.SiemensS7Net;
 import com.alibaba.fastjson.JSON;
 import com.core.common.DateUtils;
+import com.core.common.SpringUtils;
+import com.zy.asrs.entity.BasCrnp;
+import com.zy.asrs.service.BasCrnpService;
 import com.zy.core.ThreadHandler;
 import com.zy.core.cache.MessageQueue;
 import com.zy.core.cache.OutputQueue;
@@ -151,6 +154,15 @@
                 crnCommand.setAckFinish((short)1);
                 write(crnCommand);
             }
+
+            // 鏍规嵁瀹炴椂淇℃伅鏇存柊鏁版嵁搴�
+            BasCrnpService basCrnpService = SpringUtils.getBean(BasCrnpService.class);
+            BasCrnp basCrnp = new BasCrnp();
+            basCrnp.setCrnNo(slave.getId());
+            if (basCrnpService.updateById(crnProtocol.toSqlModel(basCrnp))){
+                log.error("鍫嗗灈鏈簆lc鏁版嵁搴撴洿鏂板け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
+            }
+
         } else {
             OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆戣鍙栧爢鍨涙満plc鐘舵�佷俊鎭け璐� ===>> [id:{1}] [ip:{2}] [port:{3}] [rack:{4}] [slot:{5}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot()));
             log.error("璇诲彇鍫嗗灈鏈簆lc鐘舵�佷俊鎭け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
diff --git a/src/main/java/com/zy/core/thread/DevpThread.java b/src/main/java/com/zy/core/thread/DevpThread.java
index b75d3f5..7382103 100644
--- a/src/main/java/com/zy/core/thread/DevpThread.java
+++ b/src/main/java/com/zy/core/thread/DevpThread.java
@@ -6,6 +6,9 @@
 import HslCommunication.Profinet.Siemens.SiemensS7Net;
 import com.alibaba.fastjson.JSON;
 import com.core.common.DateUtils;
+import com.core.common.SpringUtils;
+import com.zy.asrs.entity.BasDevp;
+import com.zy.asrs.service.BasDevpService;
 import com.zy.core.ThreadHandler;
 import com.zy.core.cache.MessageQueue;
 import com.zy.core.cache.OutputQueue;
@@ -17,7 +20,9 @@
 import lombok.extern.slf4j.Slf4j;
 
 import java.text.MessageFormat;
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
@@ -130,6 +135,23 @@
         }
         if (result.IsSuccess && result1.IsSuccess) {
             OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
+
+            // 鏍规嵁瀹炴椂淇℃伅鏇存柊鏁版嵁搴�
+            try {
+                List<BasDevp> basDevps = new ArrayList<>();
+                for (int i = 1; i <= 8; i++) {
+                    StaProtocol staProtocol = station.get(i);
+                    basDevps.add(staProtocol.toSqlModel());
+                }
+                BasDevpService basDevpService = SpringUtils.getBean(BasDevpService.class);
+                if (!basDevpService.updateBatchById(basDevps)) {
+                    throw new Exception("鏇存柊鏁版嵁搴撴暟鎹け璐�");
+                }
+            } catch (Exception e) {
+                OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戞洿鏂版暟鎹簱鏁版嵁澶辫触 ===>> [id:{1}] [ip:{2}] [port:{3}] [rack:{4}] [slot:{5}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot()));
+                log.error("鏇存柊鏁版嵁搴撴暟鎹け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
+            }
+
         } else {
             OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戣鍙栬緭閫佺嚎plc鐘舵�佷俊鎭け璐� ===>> [id:{1}] [ip:{2}] [port:{3}] [rack:{4}] [slot:{5}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot()));
             log.error("璇诲彇鍫嗗灈鏈簆lc鐘舵�佷俊鎭け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());

--
Gitblit v1.9.1