From 22a4f862b33a02ed7baccf0da690ce2c52b756fe Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期五, 02 五月 2025 16:24:53 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/model/protocol/StaProtocol.java |  181 +++++++++++++++++---------------------------
 1 files changed, 71 insertions(+), 110 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 4182f70..1cb666f 100644
--- a/src/main/java/com/zy/core/model/protocol/StaProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/StaProtocol.java
@@ -1,7 +1,7 @@
 package com.zy.core.model.protocol;
 
 import com.zy.asrs.entity.BasDevp;
-import com.zy.asrs.entity.CommandInfo;
+import com.zy.core.enums.DevpType.*;
 import lombok.Data;
 
 import java.util.ArrayList;
@@ -25,33 +25,62 @@
     // 鐩爣绔�
     private Short staNo;
 
+    //鎸囦护ID
+    private Integer commandId;
+
     // ----------------------------------------------------------------
-    // 鑷姩
-    private boolean autoing;
+    //妯″紡
+    private Short mode;
+    public DevpModeType modeType;
+    //鐘舵��
+    private Short state;
+    public DevpStateType stateType;
+    //宸ヤ綔鐘舵��
+    private Short workIo;
+    public DevpWorkType workType;
+    //璇锋眰淇″彿
+    private Short requestIo;
+    public DevpRequestType requestType;
+    //鎵樼洏鐘舵��
+    private Short trayIo;
+    public DevpTrayType trayType;
+    //搴撲綅鐘舵��
+    private Short locIo;
+    public DevpLocType locType;
+    //鏉$爜淇℃伅
+    private String barcode;
+    //閲嶉噺淇℃伅
+    private Double weightIo;
+    //澶囩敤
+    private Short spare;
 
-    // 鏈夌墿
-    private boolean loading;
+    public void setMode(Short mode) {
+        this.mode = mode;
+        this.modeType = DevpModeType.get(mode);
+    }
+    public void setState(Short state) {
+        this.state = state;
+        this.stateType = DevpStateType.get(state);
+    }
+    public void setWorkIo(Short workIo) {
+        this.workIo = workIo;
+        this.workType = DevpWorkType.get(workIo);
+    }
+    public void setRequestIo(Short requestIo) {
+        this.requestIo = requestIo;
+        this.requestType = DevpRequestType.get(requestIo);
+    }
+    public void setTrayIo(Short trayIo) {
+        this.trayIo = trayIo;
+        this.trayType = DevpTrayType.get(trayIo);
+    }
+    public void setLocIo(Short locIo) {
+        this.locIo = locIo;
+        this.locType = DevpLocType.get(locIo);
+    }
 
-    // 鍙叆
-    private boolean inEnable;
 
-    // 鍙嚭
-    private boolean outEnable;
 
-    // 绌烘澘淇″彿
-    private boolean emptyMk;
-
-    // 婊℃墭鐩�
-    private boolean fullPlt;
-
-    // 楂�
-    private boolean high = false;
-
-    // 浣�
-    private boolean low;
-
-    //agv
-    private boolean car;
 
     // 閿佸畾鏍囪
     private boolean pakMk = true;
@@ -59,11 +88,9 @@
     // 鍏ュ簱鏆傚瓨鏁�
     private Short inQty;
 
-    // 闅斿绔欑偣锛堝彴杞︿綅缃級
-    private String nearbySta;
 
-    //鎸囦护ID
-    private Integer commandId;
+
+
 
     // 澶栧舰妫�娴� ------------------------------------------------------------------------
 
@@ -105,100 +132,34 @@
 
     private Boolean upcontactErr = false; //椤跺崌鐢垫満鎺ヨЕ鍣ㄦ晠闅�
 
-
-
-    private Short agvStartPick; //鍏佽鍙栬揣
-    private Short agvStartPlace; //鍏佽鏀捐揣
-    private Short agvTypeSign; //鍏佽鏀捐揣
-
-    private Short agvTargetPick; //鍙栬揣瀹屾垚
-    private Short agvTargetPlace; //鏀捐揣瀹屾垚
-    private Short agvTypeSignEnd; //鏀捐揣瀹屾垚
-
-    private List<Integer> alarm;
-
-
-    public List<Integer> getAlarm(){
-        List<Integer> alarm = new ArrayList<>();
-        if (breakerErr){
-            alarm.add(1);
+    public Boolean isErr(){
+        if (frontErr || backErr || highErr || leftErr || rightErr || weightErr || barcodeErr){
+            return true;
+        }else {
+            return false;
         }
-        if (infraredErr){
-            alarm.add(2);
-        }
-        if (outTimeErr){
-            alarm.add(3);
-        }
-        if (seizeSeatErr){
-            alarm.add(4);
-        }
-        if (wrkYgoodsN){
-            alarm.add(5);
-        }
-        if (inverterErr){
-            alarm.add(6);
-        }
-        if (contactErr){
-            alarm.add(7);
-        }
-        if (upcontactErr){
-            alarm.add(8);
-        }
-        return alarm;
     }
 
-
+    public Boolean isPakReset(){
+        if (workNo == 0 && workType == DevpWorkType.BUSY && requestType != DevpRequestType.IN){
+            return true;
+        }
+        return false;
+    }
 
     public BasDevp toSqlModel(){
         BasDevp basDevp = new BasDevp();
         basDevp.setDevNo(siteId);
         basDevp.setWrkNo(workNo.intValue());
-        basDevp.setAutoing(autoing?"Y":"N");
-        basDevp.setLoading(loading?"Y":"N");
-        if (frontErr){
-            basDevp.setStaErr(11);
-        }else if (backErr){
-            basDevp.setStaErr(12);
-        }else if (highErr){
-            basDevp.setStaErr(13);
-        }else if (leftErr){
-            basDevp.setStaErr(14);
-        }else if (rightErr){
-            basDevp.setStaErr(15);
-        }else if (weightErr){
-            basDevp.setStaErr(16);
-        }else if (barcodeErr){
-            basDevp.setStaErr(17);
-        }else if (breakerErr){
-            basDevp.setStaErr(18);
-        }else if (infraredErr){
-            basDevp.setStaErr(19);
-        }else if (outTimeErr){
-            basDevp.setStaErr(110);
-        }else if (seizeSeatErr){
-            basDevp.setStaErr(111);
-        }else if (wrkYgoodsN){
-            basDevp.setStaErr(112);
-        }else if (inverterErr){
-            basDevp.setStaErr(113);
-        }else if (contactErr){
-            basDevp.setStaErr(114);
-        }else if (upcontactErr){
-            basDevp.setStaErr(115);
-        }else {
-            if (!loading){
-                basDevp.setStaErr(0);
-            }
-        }
-        basDevp.setInEnable(inEnable?"Y":"N");
-        basDevp.setOutEnable(outEnable?"Y":"N");
+        basDevp.setAutoing(stateType == DevpStateType.AUTO?"Y":"N");
+        basDevp.setLoading(workType == DevpWorkType.BUSY?"Y":"N");
+        basDevp.setInEnable(requestType == DevpRequestType.IN?"Y":"N");
+        basDevp.setOutEnable(requestType == DevpRequestType.OUT?"Y":"N");
         basDevp.setLocType1((short) 0);  // 楂樹綆绫诲瀷{0:鏈煡,1:浣庡簱浣�,2:楂樺簱浣峿
         basDevp.setLocType2((short) 0);  // 瀹界獎绫诲瀷{0:鏈煡,1:绐勫簱浣�,2:瀹藉簱浣峿
         basDevp.setLocType3((short) 0);  // 杞婚噸绫诲瀷{0:鏈煡,1:杞诲簱浣�,2:閲嶅簱浣峿
-        basDevp.setLocType1(high != low && low ? (short) 1 : (short) 2);
-        basDevp.setInQty(inQty !=null ?(int)inQty : 0);
-//        basDevp.setAgvStartPick(agvStartPick.intValue());
-//        basDevp.setAgvStartPlace(agvStartPlace.intValue());
+        basDevp.setLocType1(DevpLocType.get(locIo).id.shortValue());
+//        basDevp.setInQty(inQty !=null ?(int)inQty : 0);
         return basDevp;
     }
 

--
Gitblit v1.9.1