From 1bfa44facba36747d1caffab6bff986ccd7f36a9 Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期二, 25 十一月 2025 15:13:15 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/entity/param/AgvTaskAssignmentParam.java |  140 ++++++++++++++++++++++++++++------------------
 1 files changed, 84 insertions(+), 56 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/param/AgvTaskAssignmentParam.java b/src/main/java/com/zy/asrs/entity/param/AgvTaskAssignmentParam.java
index 221871e..ea8c94f 100644
--- a/src/main/java/com/zy/asrs/entity/param/AgvTaskAssignmentParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/AgvTaskAssignmentParam.java
@@ -35,17 +35,30 @@
         switch (basAgvMast.getIoType()){
             case 0:
                 getAgvTaskAssignmentParam0(basAgvMast);
-                taskTyp = "1FQ3";
+                if(basAgvMast.getFloorNo() == 1){
+                    taskTyp = "1FQ3";
+
+                }else if(basAgvMast.getFloorNo() == 2){
+                    taskTyp = "2FRK";
+                }else{
+                    taskTyp = "4FRK";
+                }
                 ctnrTyp = "1";
                 return;
             case 1:
                 getAgvTaskAssignmentParam1(basAgvMast);
-//                taskTyp = "1FQ2";
+                taskTyp = basAgvMast.getDevpId()==1?"1FYK":"";
                 ctnrTyp = "1";
                 return;
             case 2:
                 getAgvTaskAssignmentParam2(basAgvMast);
-                taskTyp = "1FQ1";
+                if(basAgvMast.getFloorNo() == 1){
+                    taskTyp = "1FQ1";
+                }else if(basAgvMast.getFloorNo() == 2){
+                    taskTyp = "2FCK";
+                }else{
+                    taskTyp = "4FCK";
+                }
                 ctnrTyp = "1";
                 return;
             case 3:
@@ -61,67 +74,82 @@
 
     public void getAgvTaskAssignmentParam0(BasAgvMast basAgvMast) {
         BasAgvLocNoService basAgvLocNoService = SpringUtils.getBean(BasAgvLocNoService.class);
-
-        this.reqCode = basAgvMast.getTaskNo()+"-"+basAgvMast.getTimestamp();
-
-        SnowflakeIdWorker snowflakeIdWorker = SpringUtils.getBean(SnowflakeIdWorker.class);
-        long nextId = snowflakeIdWorker.nextId();
-        this.taskCode = String.valueOf(nextId);
-        PositionCodePathClass positionCodePathClassEnd = new PositionCodePathClass();
-        BasAgvLocNo basAgvLocNoSou = basAgvLocNoService.selectOne(new EntityWrapper<BasAgvLocNo>().eq("loc_no", basAgvMast.getSourceLocNo()));
-        positionCodePathClassEnd.setPositionCode(basAgvLocNoSou.getAgvLocNo());
-        this.positionCodePath.add(positionCodePathClassEnd);
-
-        PositionCodePathClass positionCodePathClassSou = new PositionCodePathClass();
-        BasAgvLocNo basAgvLocNoEnd = basAgvLocNoService.selectOne(new EntityWrapper<BasAgvLocNo>().eq("sta_no", basAgvMast.getStaNo()));
-        positionCodePathClassSou.setPositionCode(basAgvLocNoEnd.getAgvLocNo());
-        this.positionCodePath.add(positionCodePathClassSou);
-
-
+        this.reqCode = basAgvMast.getTaskNo() + "-" + basAgvMast.getTimestamp();
+        this.taskCode = basAgvMast.getTaskNo() + "-" + basAgvMast.getTimestamp();
+        String sourceAgvLoc = getAgvLocNoOrDefault(basAgvLocNoService, "loc_no", basAgvMast.getSourceLocNo());
+        PositionCodePathClass sou = new PositionCodePathClass();
+        sou.setPositionCode(sourceAgvLoc);
+        sou.setType(basAgvMast.getFloorNo()!=1?"00":"05");
+        this.positionCodePath.add(sou);
+        String endAgvLoc = getAgvLocNoOrDefault(basAgvLocNoService, "sta_no", basAgvMast.getStaNo());
+        PositionCodePathClass end = new PositionCodePathClass();
+        end.setType(basAgvMast.getFloorNo()!=1?"00":"05");
+        end.setPositionCode(endAgvLoc);
+        this.positionCodePath.add(end);
     }
+
     public void getAgvTaskAssignmentParam1(BasAgvMast basAgvMast) {
         BasAgvLocNoService basAgvLocNoService = SpringUtils.getBean(BasAgvLocNoService.class);
-
-        this.reqCode = basAgvMast.getTaskNo().toString();
-        this.taskCode = basAgvMast.getTimestamp().toString();
-        PositionCodePathClass positionCodePathClassSou = new PositionCodePathClass();
-        BasAgvLocNo basAgvLocNoSou = basAgvLocNoService.selectOne(new EntityWrapper<BasAgvLocNo>().eq("loc_no", basAgvMast.getSourceLocNo()));
-        positionCodePathClassSou.setPositionCode(basAgvLocNoSou.getAgvLocNo());
-        this.positionCodePath.add(positionCodePathClassSou);
-        PositionCodePathClass positionCodePathClassEnd = new PositionCodePathClass();
-        BasAgvLocNo basAgvLocNoEnd = basAgvLocNoService.selectOne(new EntityWrapper<BasAgvLocNo>().eq("loc_no", basAgvMast.getLocNo()));
-        positionCodePathClassEnd.setPositionCode(basAgvLocNoEnd.getAgvLocNo());
-        this.positionCodePath.add(positionCodePathClassEnd);
-
+        this.reqCode = basAgvMast.getTaskNo()+"-"+basAgvMast.getTimestamp();
+        this.taskCode = basAgvMast.getTaskNo()+"-"+basAgvMast.getTimestamp();
+        String agvLocSou = getAgvLocNoOrDefault(basAgvLocNoService, "loc_no", basAgvMast.getSourceLocNo());
+        PositionCodePathClass sou = new PositionCodePathClass();
+        sou.setPositionCode(agvLocSou);
+        sou.setType(basAgvMast.getFloorNo()!=1?"00":"05");
+        this.positionCodePath.add(sou);
+        String agvLocEnd = getAgvLocNoOrDefault(basAgvLocNoService, "loc_no", basAgvMast.getLocNo());
+        PositionCodePathClass end = new PositionCodePathClass();
+        end.setType(basAgvMast.getFloorNo()!=1?"00":"05");
+        end.setPositionCode(agvLocEnd);
+        this.positionCodePath.add(end);
     }
+
     public void getAgvTaskAssignmentParam2(BasAgvMast basAgvMast) {
         BasAgvLocNoService basAgvLocNoService = SpringUtils.getBean(BasAgvLocNoService.class);
-
-        this.reqCode = basAgvMast.getTaskNo().toString();
-        this.taskCode = basAgvMast.getTimestamp().toString();
-        PositionCodePathClass positionCodePathClassSou = new PositionCodePathClass();
-        BasAgvLocNo basAgvLocNoSou= basAgvLocNoService.selectOne(new EntityWrapper<BasAgvLocNo>().eq("sta_no", basAgvMast.getSourceStaNo()));
-        positionCodePathClassSou.setPositionCode(basAgvLocNoSou.getAgvLocNo());
-        this.positionCodePath.add(positionCodePathClassSou);
-        PositionCodePathClass positionCodePathClassEnd = new PositionCodePathClass();
-        BasAgvLocNo basAgvLocNoEnd = basAgvLocNoService.selectOne(new EntityWrapper<BasAgvLocNo>().eq("loc_no", basAgvMast.getLocNo()));
-        positionCodePathClassEnd.setPositionCode(basAgvLocNoEnd.getAgvLocNo());
-        this.positionCodePath.add(positionCodePathClassEnd);
-
+        this.reqCode = basAgvMast.getTaskNo()+"-"+basAgvMast.getTimestamp();
+        this.taskCode = basAgvMast.getTaskNo()+"-"+basAgvMast.getTimestamp();
+        String agvLocSou = getAgvLocNoOrDefault(basAgvLocNoService, "sta_no", basAgvMast.getSourceStaNo());
+        PositionCodePathClass sou = new PositionCodePathClass();
+        sou.setPositionCode(agvLocSou);
+        sou.setType(basAgvMast.getFloorNo()!=1?"00":"05");
+        this.positionCodePath.add(sou);
+        String agvLocEnd = getAgvLocNoOrDefault(basAgvLocNoService, "loc_no", basAgvMast.getLocNo());
+        PositionCodePathClass end = new PositionCodePathClass();
+        end.setType(basAgvMast.getFloorNo()!=1?"00":"05");
+        end.setPositionCode(agvLocEnd);
+        this.positionCodePath.add(end);
     }
+
     public void getAgvTaskAssignmentParam3(BasAgvMast basAgvMast) {
         BasAgvLocNoService basAgvLocNoService = SpringUtils.getBean(BasAgvLocNoService.class);
-
-        this.reqCode = basAgvMast.getTaskNo().toString();
-        this.taskCode = basAgvMast.getTimestamp().toString();
-        PositionCodePathClass positionCodePathClassSou = new PositionCodePathClass();
-        BasAgvLocNo basAgvLocNoSou = basAgvLocNoService.selectOne(new EntityWrapper<BasAgvLocNo>().eq("sta_no", basAgvMast.getSourceStaNo()));
-        positionCodePathClassSou.setPositionCode(basAgvLocNoSou.getAgvLocNo());
-        this.positionCodePath.add(positionCodePathClassSou);
-        PositionCodePathClass positionCodePathClassEnd = new PositionCodePathClass();
-        BasAgvLocNo basAgvLocNoEnd = basAgvLocNoService.selectOne(new EntityWrapper<BasAgvLocNo>().eq("sta_no", basAgvMast.getStaNo()));
-        positionCodePathClassEnd.setPositionCode(basAgvLocNoEnd.getAgvLocNo());
-        this.positionCodePath.add(positionCodePathClassEnd);
-
+        this.reqCode = basAgvMast.getTaskNo()+"-"+basAgvMast.getTimestamp();
+        this.taskCode = basAgvMast.getTaskNo()+"-"+basAgvMast.getTimestamp();
+        String agvLocSou = getAgvLocNoOrDefault(basAgvLocNoService, "sta_no", basAgvMast.getSourceStaNo());
+        PositionCodePathClass sou = new PositionCodePathClass();
+        sou.setPositionCode(agvLocSou);
+        sou.setType(basAgvMast.getFloorNo()!=1?"00":"05");
+        this.positionCodePath.add(sou);
+        String agvLocEnd = getAgvLocNoOrDefault(basAgvLocNoService, "sta_no", basAgvMast.getStaNo());
+        PositionCodePathClass end = new PositionCodePathClass();
+        end.setType(basAgvMast.getFloorNo()!=1?"00":"05");
+        end.setPositionCode(agvLocEnd);
+        this.positionCodePath.add(end);
     }
+
+
+    private String getAgvLocNoOrDefault(BasAgvLocNoService service, String column, Object value) {
+        if (value == null) {
+            return null;
+        }
+        BasAgvLocNo record = service.selectOne(new EntityWrapper<BasAgvLocNo>().eq(column, value));
+
+        if (record != null && record.getAgvLocNo() != null) {
+            return record.getAgvLocNo();
+        }
+
+        // 鏌ヨ涓嶅埌灏辫繑鍥炲師鍊硷紝浣嗗繀椤昏浆鎹㈡垚 String
+        return String.valueOf(value);
+    }
+
+
 }

--
Gitblit v1.9.1