From 6e96e802901984581875ed6a16957cefc7007e5e Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期二, 25 十一月 2025 18:39:52 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/core/model/protocol/StaProtocol.java |  219 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 216 insertions(+), 3 deletions(-)

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 9dd8082..5b770dd 100644
--- a/src/main/java/com/zy/core/model/protocol/StaProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/StaProtocol.java
@@ -1,10 +1,8 @@
 package com.zy.core.model.protocol;
 
 import com.zy.asrs.entity.BasDevp;
+import com.zy.asrs.entity.BasDevpErrorLog;
 import lombok.Data;
-
-import java.util.HashMap;
-import java.util.Map;
 
 /**
  * 杈撻�佺嚎plc鍗曚釜绔欑偣璇︾粏淇℃伅
@@ -56,6 +54,9 @@
 
     // 閿佸畾鏍囪
     private boolean pakMk = true;
+    private boolean pakMkRun = true;
+    private boolean pakMkTask = true;
+    private boolean pakMkWalk = true;
 
     // 鍏ュ簱鏆傚瓨鏁�
     private Short inQty;
@@ -110,6 +111,140 @@
 
     private Boolean upcontactErr = false; //椤跺崌鐢垫満鎺ヨЕ鍣ㄦ晠闅�
 
+    // 鐢佃矾淇濇姢鍣ㄦ柇寮�
+    private boolean errOther1;
+
+    // 鍏夌數寮傚父
+    private boolean errOther2;
+
+    // 杩愯瓒呮椂
+    private boolean errOther3;
+
+    // 鍗犱綅瓒呮椂
+    private boolean errOther4;
+
+    // 鏈変换鍔℃棤璐ф晠闅�
+    private boolean errOther5;
+
+    // 鍙橀鍣ㄦ晠闅�
+    private boolean errOther6;
+
+    // 鎺ヨЕ鍣ㄦ晠闅�
+    private boolean errOther7;
+
+    // 椤跺崌鐢垫満鎺ヨЕ鍣ㄦ晠闅�
+    private boolean errOther8;
+
+    //鏁呴殰淇″彿--------------------------------------------------------
+
+    // 鏁呴殰璇诲彇閿佸畾鏍囪
+    private boolean errorMk = false;
+    //鍐欏叆鏍囪
+    private boolean writeMk = true;
+    private Boolean passTimeOut = false; //鐗╀綋杩涘嚭瓒呮椂
+    private Boolean objectNoIdError = false; //鏈夌墿浣撴棤鏁版嵁
+    private Boolean idNoObjectError = false; //鏈夋暟鎹棤鐗╀綋
+    private Boolean lmfrError = false; //绾夸綋鐢垫満鐑户鎶ヨ
+    private Boolean liftError = false; //椤跺崌鎶ヨ
+    private Boolean dlfrError = false; //椤跺崌鐢垫満鐑户鎶ヨ
+    private Boolean dmfrError = false; //椤跺崌妯Щ鐢垫満鐑户鎶ヨ
+    private Boolean vfdError = false; //鍙橀鏁呴殰
+    private Boolean srvError = false; //浼烘湇鏁呴殰
+    private Boolean res1 = false; //棰勭暀1
+    private Boolean res2 = false; //棰勭暀2
+    private Boolean res3 = false; //棰勭暀3
+    private Boolean communicationTimeOut = false; //涓庝笂浣嶆満閫氳瓒呮椂
+    private Boolean parameterIncompleteError = false; //淇℃伅鍙傛暟涓嶅叏
+    private Boolean dataNotClear = false; //淇℃伅鏁版嵁鏈竻闄�
+    private Boolean setParameterError = false; //鍙傛暟璁剧疆鎶ヨ
+    private Boolean res4 = false; //棰勭暀4
+    private Boolean res5 = false; //棰勭暀5
+    private Boolean dataError = false; //鏁版嵁閿欒
+    //閰嶇疆淇″彿
+    private Boolean sensorGArrive = false; //鐩寸嚎鍏夌數
+    private Boolean sensorGDec = false; //鍑忛�熷厜鐢�
+    private Boolean sensorGArrive2 = false; //鐩寸嚎鍑稿嚭
+    private Boolean sensorLimit = false; //闄愪綅淇濇姢鍏夌數
+    private Boolean emergency = false; //鎬ュ仠
+    private Boolean sensorGLeave = false; //鍏夌數绂诲紑1
+    private Boolean sensorGLeave2 = false; //鍏夌數绂诲紑2
+    private Boolean sensorCUp = false; //椤跺崌涓婂崌
+    private Boolean sensorCDown = false; //椤跺崌涓嬮檷
+    private Boolean liftMotorFr = false; //椤跺崌鐑户
+    private Boolean lineMotorFr = false; //鐩寸嚎鐑户
+    private Boolean tranMotorFr = false; //绉绘牻鐑户
+    private Boolean rst1 = false; //澶囩敤1
+    private Boolean rst2 = false; //澶囩敤2
+    private Boolean rst3 = false; //澶囩敤3
+    private Boolean rst4 = false; //澶囩敤4
+    private Boolean sensorArriveD = false; //鐩磋鏂瑰悜鍒颁綅
+    private Boolean sensorDecD = false; //鐩磋鏂瑰悜鍑忛��
+    private Boolean sensorArriveL = false; //宸︾Щ鏂瑰悜鍒颁綅
+    private Boolean sensorDecL = false; //宸︾Щ鏂瑰悜鍑忛��
+    private Boolean sensorArriveR = false; //鍙崇Щ鏂瑰悜鍒颁綅
+    private Boolean sensorDecR = false; //鍙崇Щ鏂瑰悜鍑忛��
+
+
+    // Super鏈夋棤淇℃伅
+    private boolean loadingSuper = true;
+
+    //鎸囦护ID
+    private Integer commandId;
+    private Double grossWt = 0D;
+    private String errorDev = "-";
+    private String barcodeNow = "-";
+
+    public BasDevpErrorLog toSqlModelError(){
+        BasDevpErrorLog basDevpErrorLog = new BasDevpErrorLog();
+        basDevpErrorLog.setDevNo(siteId); // 璁惧鍙凤紙鍋囪鏈夊畾涔� siteId锛�
+        basDevpErrorLog.setPassTimeOut(passTimeOut ? "Y" : "N");
+        basDevpErrorLog.setObjectNoIdError(objectNoIdError ? "Y" : "N");
+        basDevpErrorLog.setIdNoObjectError(idNoObjectError ? "Y" : "N");
+        basDevpErrorLog.setLmfrError(lmfrError ? "Y" : "N");
+        basDevpErrorLog.setLiftError(liftError ? "Y" : "N");
+        basDevpErrorLog.setDlfrError(dlfrError ? "Y" : "N");
+        basDevpErrorLog.setDmfrError(dmfrError ? "Y" : "N");
+        basDevpErrorLog.setVfdError(vfdError ? "Y" : "N");
+        basDevpErrorLog.setSrvError(srvError ? "Y" : "N");
+        basDevpErrorLog.setRes1(res1 ? "Y" : "N");
+        basDevpErrorLog.setRes2(res2 ? "Y" : "N");
+        basDevpErrorLog.setRes3(res3 ? "Y" : "N");
+        basDevpErrorLog.setCommunicationTimeOut(communicationTimeOut ? "Y" : "N");
+        basDevpErrorLog.setParameterIncompleteError(parameterIncompleteError ? "Y" : "N");
+        basDevpErrorLog.setDataNotClear(dataNotClear ? "Y" : "N");
+        basDevpErrorLog.setSetParameterError(setParameterError ? "Y" : "N");
+        basDevpErrorLog.setInEnable(res4 ? "Y" : "N");
+        basDevpErrorLog.setOutEnable(res5 ? "Y" : "N");
+        basDevpErrorLog.setDataError(dataError ? "Y" : "N");
+        // 閰嶇疆淇″彿
+        basDevpErrorLog.setSensorGArrive(sensorGArrive ? "Y" : "N");
+        basDevpErrorLog.setSensorGDec(sensorGDec ? "Y" : "N");
+        basDevpErrorLog.setSensorGArrive2(sensorGArrive2 ? "Y" : "N");
+        basDevpErrorLog.setSensorLimit(sensorLimit ? "Y" : "N");
+        basDevpErrorLog.setEmergency(emergency ? "Y" : "N");
+        basDevpErrorLog.setSensorGLeave(sensorGLeave ? "Y" : "N");
+        basDevpErrorLog.setSensorGLeave2(sensorGLeave2 ? "Y" : "N");
+        basDevpErrorLog.setSensorCUp(sensorCUp ? "Y" : "N");
+        basDevpErrorLog.setSensorCDown(sensorCDown ? "Y" : "N");
+        basDevpErrorLog.setLiftMotorFr(liftMotorFr ? "Y" : "N");
+        basDevpErrorLog.setLineMotorFr(lineMotorFr ? "Y" : "N");
+        basDevpErrorLog.setTranMotorFr(tranMotorFr ? "Y" : "N");
+        basDevpErrorLog.setRst1(rst1 ? "Y" : "N");
+        basDevpErrorLog.setRst2(rst2 ? "Y" : "N");
+        basDevpErrorLog.setRst3(rst3 ? "Y" : "N");
+        basDevpErrorLog.setRst4(rst4 ? "Y" : "N");
+        basDevpErrorLog.setSensorArriveD(sensorArriveD ? "Y" : "N");
+        basDevpErrorLog.setSensorDecD(sensorDecD ? "Y" : "N");
+        basDevpErrorLog.setSensorArriveL(sensorArriveL ? "Y" : "N");
+        basDevpErrorLog.setSensorDecL(sensorDecL ? "Y" : "N");
+        basDevpErrorLog.setSensorArriveR(sensorArriveR ? "Y" : "N");
+        basDevpErrorLog.setSensorDecR(sensorDecR ? "Y" : "N");
+
+        return basDevpErrorLog;
+    }
+
+
+
     public Boolean isErr(){
         if (frontErr || backErr || highErr || leftErr || rightErr || weightErr || barcodeErr){
             return true;
@@ -132,6 +267,7 @@
         basDevp.setLocType3((short) 0);  // 杞婚噸绫诲瀷{0:鏈煡,1:杞诲簱浣�,2:閲嶅簱浣峿
         basDevp.setLocType1(high != low && low ? (short) 1 : (short) 2);
         basDevp.setInQty(inQty !=null ?(int)inQty : 0);
+        basDevp.setBarcode(this.getBarcode());
         return basDevp;
     }
 
@@ -144,6 +280,83 @@
         }
         return null;
     }
+
+
+    public String getErrorDev$(){
+        if (errorDev.equals("-")){
+            boolean back = false;
+            String errMsg = "-";
+            if (this.isErrOther1()) {
+                if (!back){
+                    errMsg = "鐢佃矾淇濇姢鍣ㄦ柇寮�";
+                } else {
+                    errMsg = errMsg+"---"+"鐢佃矾淇濇姢鍣ㄦ柇寮�";
+                }
+                back = true;
+            }
+            if (this.isErrOther2()) {
+                if (!back){
+                    errMsg = "鍏夌數寮傚父";
+                } else {
+                    errMsg = errMsg+"---"+"鍏夌數寮傚父";
+                }
+                back = true;
+            }
+            if (this.isErrOther3()) {
+                if (!back){
+                    errMsg = "杩愯瓒呮椂";
+                } else {
+                    errMsg = errMsg+"---"+"杩愯瓒呮椂";
+                }
+                back = true;
+            }
+            if (this.isErrOther4()) {
+                if (!back){
+                    errMsg = "鍗犱綅瓒呮椂";
+                } else {
+                    errMsg = errMsg+"---"+"鍗犱綅瓒呮椂";
+                }
+                back = true;
+            }
+            if (this.isErrOther5()) {
+                if (!back){
+                    errMsg = "鏈変换鍔℃棤璐ф晠闅�";
+                } else {
+                    errMsg = errMsg+"---"+"鏈変换鍔℃棤璐ф晠闅�";
+                }
+                back = true;
+            }
+            if (this.isErrOther6()) {
+                if (!back){
+                    errMsg = "鍙橀鍣ㄦ晠闅�";
+                } else {
+                    errMsg = errMsg+"---"+"鍙橀鍣ㄦ晠闅�";
+                }
+                back = true;
+            }
+            if (this.isErrOther7()) {
+                if (!back){
+                    errMsg = "鎺ヨЕ鍣ㄦ晠闅�";
+                } else {
+                    errMsg = errMsg+"---"+"鎺ヨЕ鍣ㄦ晠闅�";
+                }
+                back = true;
+            }
+            if (this.isErrOther8()) {
+                if (!back){
+                    errMsg = "椤跺崌鐢垫満鎺ヨЕ鍣ㄦ晠闅�";
+                } else {
+                    errMsg = errMsg+"---"+"椤跺崌鐢垫満鎺ヨЕ鍣ㄦ晠闅�";
+                }
+                back = true;
+            }
+            if (back){
+                return errMsg;
+            }
+        }
+
+        return errorDev;
+    }
 //    public Integer getNearbySta() {
 //        if (getNearbySta == null) return 0;
 //

--
Gitblit v1.9.1