From 6278a504fb7d4f3dfb1f6d5d2890304ab784d139 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期一, 09 六月 2025 17:08:47 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/model/protocol/RgvProtocol.java |  228 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 228 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/core/model/protocol/RgvProtocol.java b/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
new file mode 100644
index 0000000..3c0ed08
--- /dev/null
+++ b/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
@@ -0,0 +1,228 @@
+package com.zy.core.model.protocol;
+
+import com.zy.asrs.entity.BasRgv;
+import com.zy.core.enums.RgvModeType;
+import com.zy.core.enums.RgvStatusType;
+import lombok.Data;
+
+import java.util.HashMap;
+import java.util.Map;
+
+@Data
+public class RgvProtocol implements Cloneable{
+
+    private Integer RgvNo;
+
+    /**
+     * 1 = 鎵嬪姩妯″紡
+     * 2 = 鑷姩妯″紡
+     * 3 = 鐢佃剳妯″紡
+     */
+    public Short mode;
+
+    public RgvModeType modeType;
+
+    /**
+     * RGV褰撳墠鐘舵��
+     * 0锛氱┖闂诧紝鏃犱换鍔�
+     * 1锛氫綔涓氫腑
+     * 2锛氭姤璀�
+     */
+    public Short status;
+
+    /**
+     * 鐘舵�佹灇涓�
+     */
+    public RgvStatusType statusType;
+
+    /**
+     * 宸ヤ綅1浠诲姟鍙�
+     */
+    public Short taskNo1 = 0;
+
+    /**
+     * RGV宸ヤ綅1褰撳墠鐘舵��
+     * 0锛氱┖闂诧紝鏃犱换鍔�
+     * 11锛氬彇璐т腑
+     * 12锛氭斁璐т腑
+     * 10锛氫换鍔″畬鎴愮瓑寰匴CS纭
+     */
+    public Short status1;
+
+    /**
+     * 鐘舵�佹灇涓�
+     */
+    public RgvStatusType statusType1;
+
+    /**
+     * 宸ヤ綅1鏈夌墿
+     */
+    public Short loaded1;
+
+    /**
+     * RGV褰撳墠浣嶇疆
+     */
+    public Short RgvPos;
+
+    /**
+     * 璧拌鍦ㄥ畾浣�
+     * 0 = 鍦ㄥ畾浣�
+     * 1 = 涓嶅湪瀹氫綅
+     */
+    public Short walkPos;
+
+    //////////////////////     宸ヤ綅2瀹氫箟   //////////////////////////////////////////////////
+//    /**
+//     * 宸ヤ綅2浠诲姟鍙�
+//     */
+//    public Short taskNo2 = 0;
+//
+//    /**
+//     * RGV宸ヤ綅2褰撳墠鐘舵��
+//     * 0锛氱┖闂诧紝鏃犱换鍔�
+//     * 11锛氬彇璐т腑
+//     * 12锛氭斁璐т腑
+//     * 10锛氫换鍔″畬鎴愮瓑寰匴CS纭
+//     */
+//    public Short status2;
+//
+//    /**
+//     * 鐘舵�佹灇涓�
+//     */
+//    public RgvStatusType statusType2;
+//
+//    /**
+//     * 宸ヤ綅2鏈夌墿
+//     */
+//    public Short loaded2;
+    ///////////////////////////////////////////////////////////////////////////////////////
+
+    /**
+     * 寮傚父鐮�
+     */
+    public Short alarm;
+
+    /**
+     * 蹇冭烦鎸囦护 1-2姣忕鍒囨崲涓�娆�
+     */
+    public Short heart;
+
+    private Short temp1;
+
+    private Short temp2;
+
+    private Short temp3;
+
+    private Short temp4;
+
+    private Short temp5;
+
+    /**
+     * X琛岃蛋琛岄�熷害m/min
+     */
+    private Float xSpeed;
+
+    /**
+     * 鍫嗗灈鏈虹疮璁¤蛋琛岃窛绂籯m
+     */
+    public Float xDistance;
+
+    /**
+     * 鍫嗗灈鏈虹疮璁¤蛋琛屾椂闀縣
+     */
+    public Float xDuration;
+
+    public void setMode(Short mode) {
+        this.mode = mode;
+        this.modeType = RgvModeType.get(mode);
+    }
+
+    public void setMode(RgvModeType type) {
+        this.modeType = type;
+        this.mode = RgvModeType.get(type).id.shortValue();
+    }
+
+    public void setStatus(Short status){
+        this.status = status;
+        this.statusType = RgvStatusType.get(status);
+    }
+
+    public void setStatus(RgvStatusType type){
+        this.statusType = type;
+        this.status = RgvStatusType.get(type).id.shortValue();
+    }
+
+    public void setStatus1(Short status1){
+        this.status1 = status1;
+        this.statusType1 = RgvStatusType.get(status1);
+    }
+
+    public void setStatus1(RgvStatusType type1){
+        this.statusType1 = type1;
+        this.status1 = RgvStatusType.get(type1).id.shortValue();
+    }
+
+//    public void setStatus2(Short status2){
+//        this.status2 = status2;
+//        this.statusType2 = RgvStatusType.get(status2);
+//    }
+//
+//    public void setStatus2(RgvStatusType type2){
+//        this.statusType2 = type2;
+//        this.status2 = RgvStatusType.get(type2).id.shortValue();
+//    }
+
+    /**
+     * 鏈�杩戜竴娆″叆鍑哄簱绫诲瀷
+     *       I:鍏ュ簱
+     *       O:鍑哄簱
+     */
+    private String lastIo = "I";
+
+
+    public BasRgv toSqlModel(BasRgv basRgv){
+        if (alarm!=null) {
+            basRgv.setRgvErr(alarm.longValue());
+        }
+        basRgv.setWrkNo1(taskNo1.intValue());
+//        basRgv.setWrkNo2(taskNo2.intValue());
+        return basRgv;
+    }
+
+    public void setxSpeed(Short xSpeed) {
+        this.xSpeed = Float.valueOf(xSpeed);
+    }
+
+    public void setxDistance(Short xDistance) {
+        this.xDistance = Float.valueOf(xDistance);
+    }
+
+    public void setxDuration(Short xDuration) {
+        this.xDuration = Float.valueOf(xDuration);
+    }
+
+    public Integer getRgvPosI(){
+        //闇�瑕佹牴鎹幇鍦烘敼閫�  鏍规嵁璇诲埌鐨勫�艰幏鍙栧搴旂珯鐐逛綅缃�
+        Map<Short,Integer> map = new HashMap<>();
+        map.put((short) 1,100);map.put((short) 2,101);
+        map.put((short) 3,106);map.put((short) 4,107);
+        map.put((short) 5,112);map.put((short) 6,113);
+       map.put((short) 7,124); map.put((short) 8,119);
+        map.put((short) 9,149);map.put((short) 10,153);
+        map.put((short) 11,157);map.put((short) 12,161);
+        if (RgvPos==null) return 0;
+
+        return map.get(RgvPos);
+    }
+
+    @Override
+    public RgvProtocol clone() {
+        try {
+            return (RgvProtocol) super.clone();
+        } catch (CloneNotSupportedException e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+}

--
Gitblit v1.9.1