From 57716e5de367a16585a15126bccb53e972a5e649 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 17 十月 2024 14:06:43 +0800
Subject: [PATCH] #

---
 zy-acs-flow/src/page/agvDetail/AgvDetailCreate.jsx                                     |    4 
 zy-acs-flow/src/page/agvDetail/AgvDetailPanel.jsx                                      |    4 
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java       |   70 +++++-----------
 zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/AgvDetail.java          |   72 -----------------
 zy-acs-flow/src/page/agvDetail/AgvDetailEdit.jsx                                       |    4 
 zy-acs-flow/src/i18n/en.js                                                             |    2 
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsAgvVo.java            |   14 +++
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java |   17 +++
 zy-acs-flow/src/map/tool.js                                                            |   12 +-
 zy-acs-flow/src/i18n/zh.js                                                             |    2 
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/BackpackDto.java           |   23 +++++
 11 files changed, 89 insertions(+), 135 deletions(-)

diff --git a/zy-acs-flow/src/i18n/en.js b/zy-acs-flow/src/i18n/en.js
index c2c6000..361b3c2 100644
--- a/zy-acs-flow/src/i18n/en.js
+++ b/zy-acs-flow/src/i18n/en.js
@@ -396,7 +396,7 @@
                 bootTime: "boot time",
                 workTime: "work time",
                 workDistance: "mileage",
-                tempQua: "temp",
+                backpack: "backpack",
                 password: "password",
             },
             actionSts: {
diff --git a/zy-acs-flow/src/i18n/zh.js b/zy-acs-flow/src/i18n/zh.js
index d2007f8..fe4d962 100644
--- a/zy-acs-flow/src/i18n/zh.js
+++ b/zy-acs-flow/src/i18n/zh.js
@@ -395,7 +395,7 @@
                 bootTime: "寮�鏈烘椂闂�",
                 workTime: "宸ヤ綔鏃堕棿",
                 workDistance: "绱閲岀▼",
-                tempQua: "鏆傚瓨鏁伴噺",
+                backpack: "鑳岀瘬",
                 password: "瀵嗙爜",
             },
             actionSts: {
diff --git a/zy-acs-flow/src/map/tool.js b/zy-acs-flow/src/map/tool.js
index 503d6b8..8ef7d0b 100644
--- a/zy-acs-flow/src/map/tool.js
+++ b/zy-acs-flow/src/map/tool.js
@@ -499,20 +499,22 @@
 export const generateDynamicGraphic = (curZone, data, setCurSprite) => {
     // console.log("ws", curZone, data);
 
-    for (const agvVo of data.agvVos) {
-        showAgvSprite(curZone, agvVo, setCurSprite)
+    for (const agv of data.agvVos) {
+        showAgvSprite(curZone, agv, setCurSprite)
     }
 
 }
 
-const showAgvSprite = (curZone, agvVo, setCurSprite) => {
-    const { agvNo, code, direction, backpack, battery, ...rest } = agvVo;
+const showAgvSprite = (curZone, agv, setCurSprite) => {
+    const { agvNo, code, direction, backpack, battery, ...rest } = agv;
     if (!code) { return }
     const codeSprite = querySprite(DEVICE_TYPE.POINT, code);
     if (!codeSprite) { return }
     let agvSprite = querySprite(DEVICE_TYPE.AGV, agvNo);
     if (!agvSprite) {
-        agvSprite = generateSprite(DEVICE_TYPE.AGV, generateAgvSpriteTexture(getAgvStatusMode(backpack, battery)));
+        agvSprite = generateSprite(DEVICE_TYPE.AGV,
+            generateAgvSpriteTexture(getAgvStatusMode(backpack.filter(item => item.loaded === true).length, battery))
+        );
         initSprite(agvSprite, DEVICE_TYPE.AGV);
         agvSprite.data.no = agvNo;
         agvSprite.position.set(codeSprite.position.x, codeSprite.position.y);
diff --git a/zy-acs-flow/src/page/agvDetail/AgvDetailCreate.jsx b/zy-acs-flow/src/page/agvDetail/AgvDetailCreate.jsx
index 43783bb..edceace 100644
--- a/zy-acs-flow/src/page/agvDetail/AgvDetailCreate.jsx
+++ b/zy-acs-flow/src/page/agvDetail/AgvDetailCreate.jsx
@@ -254,8 +254,8 @@
                                 </Grid>
                                 <Grid item xs={6} display="flex" gap={1}>
                                     <NumberInput
-                                        label="table.field.agvDetail.tempQua"
-                                        source="tempQua"
+                                        label="table.field.agvDetail.backpack"
+                                        source="backpack"
                                     />
                                 </Grid>
                                 <Grid item xs={6} display="flex" gap={1}>
diff --git a/zy-acs-flow/src/page/agvDetail/AgvDetailEdit.jsx b/zy-acs-flow/src/page/agvDetail/AgvDetailEdit.jsx
index 3fdcb20..76421d7 100644
--- a/zy-acs-flow/src/page/agvDetail/AgvDetailEdit.jsx
+++ b/zy-acs-flow/src/page/agvDetail/AgvDetailEdit.jsx
@@ -236,8 +236,8 @@
                         </Stack>
                         <Stack direction='row' gap={2}>
                             <NumberInput
-                                label="table.field.agvDetail.tempQua"
-                                source="tempQua"
+                                label="table.field.agvDetail.backpack"
+                                source="backpack"
                             />
                         </Stack>
                         <Stack direction='row' gap={2}>
diff --git a/zy-acs-flow/src/page/agvDetail/AgvDetailPanel.jsx b/zy-acs-flow/src/page/agvDetail/AgvDetailPanel.jsx
index 47384e3..031ffd0 100644
--- a/zy-acs-flow/src/page/agvDetail/AgvDetailPanel.jsx
+++ b/zy-acs-flow/src/page/agvDetail/AgvDetailPanel.jsx
@@ -180,8 +180,8 @@
                         </Grid>
                         <Grid item xs={6}>
                             <PanelTypography
-                                title="table.field.agvDetail.tempQua" 
-                                property={record.tempQua}
+                                title="table.field.agvDetail.backpack"
+                                property={record.backpack}
                             />
                         </Grid>
                         <Grid item xs={6}>
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/BackpackDto.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/BackpackDto.java
new file mode 100644
index 0000000..dd0546f
--- /dev/null
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/BackpackDto.java
@@ -0,0 +1,23 @@
+package com.zy.acs.manager.core.domain;
+
+import lombok.Data;
+
+/**
+ * Created by vincent on 10/17/2024
+ */
+@Data
+public class BackpackDto {
+
+    private Integer index;
+
+    private Boolean loaded;
+
+    public BackpackDto() {
+    }
+
+    public BackpackDto(Integer index, Boolean loaded) {
+        this.index = index;
+        this.loaded = loaded;
+    }
+
+}
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsAgvVo.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsAgvVo.java
index 08adcab..c564eb3 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsAgvVo.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsAgvVo.java
@@ -2,6 +2,9 @@
 
 import lombok.Data;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * Created by vincent on 10/14/2024
  */
@@ -14,8 +17,15 @@
 
     private Double direction = 0.0;
 
-    private Integer backpack = 0;
+    private List<BackpackDto> backpack = new ArrayList<>();
 
-    private Double battery;
+    private Integer battery;
+
+//    public int getBackpackLoadedCount() {
+//        if (Cools.isEmpty(this.backpack)) {
+//            return 0;
+//        }
+//        return (int) this.backpack.stream().filter(BackpackDto::getLoaded).count();
+//    }
 
 }
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java
index 7a3095b..5c27759 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.zy.acs.common.utils.GsonUtils;
+import com.zy.acs.manager.core.domain.BackpackDto;
 import com.zy.acs.manager.core.domain.MapWsAgvVo;
 import com.zy.acs.manager.core.domain.MapWsVo;
 import com.zy.acs.manager.manager.entity.Agv;
@@ -53,12 +54,24 @@
             vo.setAgvNo(agv.getUuid());
             vo.setCode(code.getData());
             vo.setDirection(agvDetail.getAgvAngle());
-            vo.setBackpack(agvDetail.getTempQua());
-            vo.setBattery(vo.getBattery());
+            vo.setBackpack(GsonUtils.fromJson(agvDetail.getBackpack(), List.class));
+            vo.setBattery(agvDetail.getSoc());
             agvVos.add(vo);
         }
 
         return agvVos;
     }
 
+    public static void main(String[] args) {
+        List<BackpackDto> backpackDtoList = new ArrayList<>();
+        backpackDtoList.add(new BackpackDto(1, true));
+        backpackDtoList.add(new BackpackDto(2, true));
+        backpackDtoList.add(new BackpackDto(3, false));
+        backpackDtoList.add(new BackpackDto(4, false));
+        backpackDtoList.add(new BackpackDto(5, false));
+        backpackDtoList.add(new BackpackDto(6, false));
+        backpackDtoList.add(new BackpackDto(7, false));
+        System.out.println(GsonUtils.toJson(backpackDtoList));
+    }
+
 }
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java
index 1371a0a..7725211 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java
@@ -1,12 +1,14 @@
 package com.zy.acs.manager.core.service;
 
 import com.alibaba.fastjson.JSON;
-import com.zy.acs.framework.common.Cools;
 import com.zy.acs.common.constant.RedisConstant;
 import com.zy.acs.common.domain.AgvProtocol;
 import com.zy.acs.common.domain.protocol.*;
+import com.zy.acs.common.utils.GsonUtils;
 import com.zy.acs.common.utils.RedisSupport;
+import com.zy.acs.framework.common.Cools;
 import com.zy.acs.manager.common.domain.WebsocketDto;
+import com.zy.acs.manager.core.domain.BackpackDto;
 import com.zy.acs.manager.manager.entity.Agv;
 import com.zy.acs.manager.manager.entity.AgvDetail;
 import com.zy.acs.manager.manager.entity.Code;
@@ -16,7 +18,9 @@
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.List;
 
 /**
  * Created by vincent on 2023/6/16
@@ -166,29 +170,15 @@
 
         detail.setSensorSts((long) mesBody.getSensorStatusFlags());
 
-        int tempQua = 0;
-        if (mesBody.isTempLoc1()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc2()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc3()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc4()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc5()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc6()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc7()) {
-            tempQua ++;
-        }
-        detail.setTempQua(tempQua);
+        List<BackpackDto> backpackDtoList = new ArrayList<>();
+        backpackDtoList.add(new BackpackDto(1, mesBody.isTempLoc1()));
+        backpackDtoList.add(new BackpackDto(2, mesBody.isTempLoc2()));
+        backpackDtoList.add(new BackpackDto(3, mesBody.isTempLoc3()));
+        backpackDtoList.add(new BackpackDto(4, mesBody.isTempLoc4()));
+        backpackDtoList.add(new BackpackDto(5, mesBody.isTempLoc5()));
+        backpackDtoList.add(new BackpackDto(6, mesBody.isTempLoc6()));
+        backpackDtoList.add(new BackpackDto(7, mesBody.isTempLoc7()));
+        detail.setBackpack(GsonUtils.toJson(backpackDtoList));
 
     }
 
@@ -218,29 +208,15 @@
 
         detail.setSensorSts((long) mesBody.getSensorStatusFlags());
 
-        int tempQua = 0;
-        if (mesBody.isTempLoc1()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc2()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc3()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc4()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc5()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc6()) {
-            tempQua ++;
-        }
-        if (mesBody.isTempLoc7()) {
-            tempQua ++;
-        }
-        detail.setTempQua(tempQua);
+        List<BackpackDto> backpackDtoList = new ArrayList<>();
+        backpackDtoList.add(new BackpackDto(1, mesBody.isTempLoc1()));
+        backpackDtoList.add(new BackpackDto(2, mesBody.isTempLoc2()));
+        backpackDtoList.add(new BackpackDto(3, mesBody.isTempLoc3()));
+        backpackDtoList.add(new BackpackDto(4, mesBody.isTempLoc4()));
+        backpackDtoList.add(new BackpackDto(5, mesBody.isTempLoc5()));
+        backpackDtoList.add(new BackpackDto(6, mesBody.isTempLoc6()));
+        backpackDtoList.add(new BackpackDto(7, mesBody.isTempLoc7()));
+        detail.setBackpack(GsonUtils.toJson(backpackDtoList));
 
     }
 
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/AgvDetail.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/AgvDetail.java
index d418475..57ec38b 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/AgvDetail.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/AgvDetail.java
@@ -171,7 +171,7 @@
      * 鏆傚瓨鏁伴噺
      */
     @ApiModelProperty(value= "鏆傚瓨鏁伴噺")
-    private Integer tempQua;
+    private String backpack;
 
     /**
      * 瀵嗙爜
@@ -231,76 +231,6 @@
     private String memo;
 
     public AgvDetail() {}
-
-    public AgvDetail(String uuid,Long agvId,String title,Long code,Long lastCode,String codeOffsert,Double straightVal,Double agvAngle,Double gyroAngle,Double encoderAngle,Integer high,Long sensorSts,Integer vol,Integer soc,Integer soh,Integer batteryFail,String tempe,String motorFail,String failSign,Integer bootTime,Integer workTime,Double workDistance,Integer tempQua,String password,Integer status,Integer deleted,Long tenantId,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
-        this.uuid = uuid;
-        this.agvId = agvId;
-        this.title = title;
-        this.code = code;
-        this.lastCode = lastCode;
-        this.codeOffsert = codeOffsert;
-        this.straightVal = straightVal;
-        this.agvAngle = agvAngle;
-        this.gyroAngle = gyroAngle;
-        this.encoderAngle = encoderAngle;
-        this.high = high;
-        this.sensorSts = sensorSts;
-        this.vol = vol;
-        this.soc = soc;
-        this.soh = soh;
-        this.batteryFail = batteryFail;
-        this.tempe = tempe;
-        this.motorFail = motorFail;
-        this.failSign = failSign;
-        this.bootTime = bootTime;
-        this.workTime = workTime;
-        this.workDistance = workDistance;
-        this.tempQua = tempQua;
-        this.password = password;
-        this.status = status;
-        this.deleted = deleted;
-        this.tenantId = tenantId;
-        this.createBy = createBy;
-        this.createTime = createTime;
-        this.updateBy = updateBy;
-        this.updateTime = updateTime;
-        this.memo = memo;
-    }
-
-//    AgvDetail agvDetail = new AgvDetail(
-//            null,    // 缂栧彿
-//            null,    // Agv[闈炵┖]
-//            null,    // 鏍囬
-//            null,    // 鏉$爜
-//            null,    // 閭绘帴鏉$爜
-//            null,    // 鍦伴潰鐮佸亸绉�
-//            null,    // 鐩磋璺濈
-//            null,    // 褰撳墠瑙掑害
-//            null,    // 闄�铻轰华瑙掑害
-//            null,    // 缂栫爜鍣ㄨ搴�
-//            null,    // 褰撳墠楂樺害
-//            null,    // 浼犳劅鍣ㄧ姸鎬�
-//            null,    // 鐢靛帇
-//            null,    // 鐢甸噺
-//            null,    // 鍋ュ悍
-//            null,    // 鐢垫睜鏁呴殰
-//            null,    // 娓╁害
-//            null,    // 鐢垫満鏁呴殰
-//            null,    // 鏁呴殰鏍囪瘑
-//            null,    // 寮�鏈烘椂闂�
-//            null,    // 宸ヤ綔鏃堕棿
-//            null,    // 绱閲岀▼
-//            null,    // 鏆傚瓨鏁伴噺
-//            null,    // 瀵嗙爜
-//            null,    // 鐘舵�乕闈炵┖]
-//            null,    // 鏄惁鍒犻櫎[闈炵┖]
-//            null,    // 绉熸埛
-//            null,    // 娣诲姞浜哄憳
-//            null,    // 娣诲姞鏃堕棿[闈炵┖]
-//            null,    // 淇敼浜哄憳
-//            null,    // 淇敼鏃堕棿
-//            null    // 澶囨敞
-//    );
 
     public String getAgvId$(){
         AgvService service = SpringUtils.getBean(AgvService.class);

--
Gitblit v1.9.1