From a079fff1e7bae25a5e29f73709b8e9972216f7ef Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期二, 21 一月 2025 15:20:29 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/type/JobType.java          |   12 +++++++-----
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsAgvVo.java            |    2 ++
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java |    4 ++++
 zy-acs-flow/src/map/tool.js                                                            |   32 +++++++++++++++-----------------
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java        |    2 +-
 5 files changed, 29 insertions(+), 23 deletions(-)

diff --git a/zy-acs-flow/src/map/tool.js b/zy-acs-flow/src/map/tool.js
index 946a72a..740fff6 100644
--- a/zy-acs-flow/src/map/tool.js
+++ b/zy-acs-flow/src/map/tool.js
@@ -653,23 +653,25 @@
 }
 
 export function createAgvJobPanel(parentContainer, text) {
+    const panelScale = 4;
+
     const panel = new PIXI.Container();
 
-    const sideLen = 50;
+    const sideLen = 50 * panelScale;
     const halfCircle = new PIXI.Graphics();
-    halfCircle.beginFill(themeMode === 'light' ? '#5c5a5a' : '#eee');
-    halfCircle.lineStyle(2, themeMode === 'light' ? '#5c5a5a' : '#eee');
+    halfCircle.beginFill(themeMode === 'light' ? '#333333' : '#eee');
+    halfCircle.lineStyle(2 * panelScale, themeMode === 'light' ? '#333333' : '#eee');
     halfCircle.arc(0, 0, sideLen, 0, Math.PI);
     halfCircle.endFill();
 
     const rectangle = new PIXI.Graphics();
-    rectangle.lineStyle(2, themeMode === 'light' ? '#5c5a5a' : '#eee', 1);
+    rectangle.lineStyle(2 * panelScale, themeMode === 'light' ? '#333333' : '#eee', .8);
     rectangle.drawRoundedRect(
         -sideLen / 2,   // 宸︿笂瑙� x
         -sideLen / 2,   // 宸︿笂瑙� y
         sideLen,       // 瀹�
-        sideLen - 20,  // 楂� (鐣欎竴鐐圭┖闂达紝鐪嬭捣鏉ユ洿鍍忓崐鍦嗗鍣�)
-        16             // 鍦嗚
+        sideLen - (20 * panelScale),  // 楂� (鐣欎竴鐐圭┖闂达紝鐪嬭捣鏉ユ洿鍍忓崐鍦嗗鍣�)
+        16 * panelScale             // 鍦嗚
     );
     rectangle.endFill();
     rectangle.mask = halfCircle;
@@ -678,21 +680,20 @@
 
     const msg = new PIXI.Text(text, {
         fill: themeMode === 'light' ? '#2b2b2b' : '#eee',
-        fontSize: 12,
+        fontSize: 12 * panelScale,
         fontFamily: 'MicrosoftYaHei',
-        fontWeight: 'bold',
+        fontWeight: 'bolder',
         align: 'center',
     });
     msg.anchor.set(0.5);
-    msg.position.set(0, -10);
+    msg.position.set(0, -10 * panelScale);
 
     panel.addChild(msg);
-    panel.scale.set(3);
     parentContainer.addChild(panel);
 
     let phase = 0;
     function onTick(delta) {
-        phase += delta / 8;  // 鏃嬭浆閫熷害鍙皟
+        phase += delta / 6;  // 鏃嬭浆閫熷害鍙皟
         phase %= (Math.PI * 2);
         halfCircle.rotation = phase;
     }
@@ -715,14 +716,11 @@
 const agvRotationOffset = rotationParseNum(agvRotationOffsetDegrees);
 
 const showAgvSprite = (curZone, agvVo, setCurSprite) => {
-    const { agvNo, code, direction, battery, jobType, backpack: backpackCount, error } = agvVo;
+    const { agvNo, code, direction, battery, jobType, backpack: backpackCount, slots, error } = agvVo;
     if (!code) { return; }
     const codeSprite = querySprite(DEVICE_TYPE.POINT, code);
     if (!codeSprite) { return; }
-    if (agvNo === '12') {
-        console.log(backpackCount);
-    }
-    
+
     const targetRotation = rotationParseNum(direction);
     // const backpackCount = backpack?.filter(item => item.loaded === true).length || 0;
 
@@ -777,7 +775,7 @@
     // job effect
     if (jobType) {
         if (!agvSprite.data.jobEffect) {
-            agvSprite.data.jobEffect = createAgvJobPanel(agvSprite, jobType);
+            agvSprite.data.jobEffect = createAgvJobPanel(agvSprite, jobType + " (" + backpackCount + "/" + slots + ")");
             agvSprite.data.jobEffect.x = -80;
             agvSprite.data.jobEffect.y = 0;
         }
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 5072c4d..9d62ea4 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
@@ -21,6 +21,8 @@
 
     private int backpack = 0;
 
+    private int slots = 0;
+
     private List<String> dynamicRoute = new ArrayList<>();
 
     private Integer battery;
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/type/JobType.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/type/JobType.java
index bd7135f..91b9d2e 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/type/JobType.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/type/JobType.java
@@ -3,17 +3,19 @@
 @SuppressWarnings("all")
 public enum JobType {
 
-    CONVEYOR_PICK(2000, "鍙栨枡绠�"),
-    CONVEYOR_DROP(2000, "鏀炬枡绠�"),
-    LOC_PICK(1000, "鍙栨枡绠�"),
-    LOCK_DROP(1000, "鏀炬枡绠�"),
+    CONVEYOR_PICK(2000, null, "鍙�"),
+    CONVEYOR_DROP(2000, null, "鏀�"),
+    LOC_PICK(1000, true, "鍙�"),
+    LOCK_DROP(1000, false, "鏀�"),
     ;
 
     public long waitTime;
+    public Boolean increase;
     public String breif;
 
-    JobType(long waitTime, String breif) {
+    JobType(long waitTime, Boolean increase, String breif) {
         this.waitTime = waitTime;
+        this.increase = increase;
         this.breif = breif;
     }
 
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 56015c9..468ad28 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
@@ -97,6 +97,10 @@
             vo.setCode(code.getData());
             vo.setDirection(agvDetail.getAgvAngle());
             vo.setBackpack(this.getBackpack(agv.getId(), agvDetail.getBackpack()));
+            if (null != jobType && null != jobType.increase) {
+                vo.setBackpack(vo.getBackpack() + (jobType.increase ? 1 : -1));
+            }
+            vo.setSlots(agvModel.getBackpack());
             vo.setBattery(agvDetail.getSoc());
             vo.setJobType(null == jobType ? null : jobType.breif);
             vo.setError(agvDetail.realError());
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java
index 2f8d57d..01e5f2e 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java
@@ -50,7 +50,7 @@
     }};
 
     private List<String> CONVEYOR_PICK_CODE_DATA_CACHE = new ArrayList<String>(){{
-        add("00000246");
+        add("00000146");
     }};
 
     @Autowired

--
Gitblit v1.9.1