From dd7c162741e0bd7d559432bd385eaf1fa85892c1 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期六, 12 十月 2024 09:34:04 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/model/protocol/StaProtocol.java |  149 ++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 126 insertions(+), 23 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 a050efb..f98f31a 100644
--- a/src/main/java/com/zy/core/model/protocol/StaProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/StaProtocol.java
@@ -1,6 +1,8 @@
 package com.zy.core.model.protocol;
 
 import com.zy.asrs.entity.BasDevp;
+import com.zy.core.enums.CrnModeType;
+import com.zy.core.enums.DevpType.*;
 import lombok.Data;
 
 /**
@@ -8,56 +10,157 @@
  * Created by vincent on 2020/8/6
  */
 @Data
-public class StaProtocol {
+public class StaProtocol implements Cloneable {
 
     // 绔欑偣缂栧彿
     private Integer siteId;
 
     // ----------------------------------------------------------------
     // 宸ヤ綔鍙�
-    private Short workNo = 0;
+    private Integer workNo = 0;
 
     // ----------------------------------------------------------------
     // 鐩爣绔�
     private Short staNo;
 
     // ----------------------------------------------------------------
-    // 鑷姩
-    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;
-
-    // 闇�姹�1
-    private boolean inreq1;
 
     // 閿佸畾鏍囪
     private boolean pakMk = true;
 
-    // 鍙拌溅浣嶇疆
-    private Integer position;
+    // 鍏ュ簱鏆傚瓨鏁�
+    private Short inQty;
+
+
+
+
+
+    // 澶栧舰妫�娴� ------------------------------------------------------------------------
+
+    // 鍓嶈秴闄�
+    private boolean frontErr = false;
+
+    // 鍚庤秴闄�
+    private boolean backErr = false;
+
+    // 楂樿秴闄�
+    private boolean highErr = false;
+
+    // 宸﹁秴闄�
+    private boolean leftErr = false;
+
+    // 鍙宠秴闄�
+    private boolean rightErr = false;
+
+    // 瓒呴噸
+    private boolean weightErr = false;
+
+    // 鎵爜澶辫触
+    private boolean barcodeErr = false;
+
+    //鏁呴殰-----------------------------------------------------------------------
+    private Boolean breakerErr = false; //鏂矾鍣ㄦ晠闅�
+
+    private Boolean infraredErr = false; //鍏夌數寮傚父
+
+    private Boolean outTimeErr = false; //杩愯瓒呮椂
+
+    private Boolean seizeSeatErr = false; //鍗犱綅瓒呮椂
+
+    private Boolean wrkYgoodsN = false;//鏈変换鍔℃棤璐ф晠闅�
+
+    private Boolean inverterErr = false; //鍙橀鍣ㄦ晠闅�
+
+    private Boolean contactErr = false; //鐢垫満鎺ヨЕ鍣ㄦ晠闅�
+
+    private Boolean upcontactErr = false; //椤跺崌鐢垫満鎺ヨЕ鍣ㄦ晠闅�
+
+    public Boolean isErr(){
+        if (frontErr || backErr || highErr || leftErr || rightErr || weightErr || barcodeErr){
+            return true;
+        }else {
+            return false;
+        }
+    }
 
     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");
+        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(DevpLocType.get(locIo).id.shortValue());
+        basDevp.setInQty(inQty !=null ?(int)inQty : 0);
         return basDevp;
     }
 
+    @Override
+    public StaProtocol clone() {
+        try {
+            return (StaProtocol) super.clone();
+        } catch (CloneNotSupportedException e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+
 
 }

--
Gitblit v1.9.1