From 513f54c61991af2078c9098845df3e840ea5b863 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期二, 17 六月 2025 14:29:48 +0800
Subject: [PATCH] 1

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainZkdService.java |   56 +++++++++++++++++++++++++-------------------------------
 1 files changed, 25 insertions(+), 31 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainZkdService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainZkdService.java
index 03ad08c..284c70c 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainZkdService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainZkdService.java
@@ -19,7 +19,6 @@
 import com.zy.acs.framework.exception.CoolException;
 import com.zy.acs.manager.common.domain.param.HandlerPublishParam;
 import com.zy.acs.manager.common.exception.BusinessException;
-import com.zy.acs.manager.core.domain.AgvBackpackDto;
 import com.zy.acs.manager.core.domain.TaskPosDto;
 import com.zy.acs.manager.core.service.astart.MapDataDispatcher;
 import com.zy.acs.manager.core.third.zkd.HttpUtils;
@@ -46,8 +45,8 @@
  * Created by vincent on 2023/6/14
  */
 @Slf4j
-@Service("mainService")
-public class MainZkdService {
+@Service("zkdMainService")
+public class MainZkdService implements IMainService {
 
     @Autowired
     private BusService busService;
@@ -101,7 +100,7 @@
      * 浠诲姟鍒嗛厤缁欒溅杈� ( 杞﹁締姝ゆ椂鏄┖闂蹭笖闈欐鐨� )
      */
     @Transactional
-    public synchronized void allocateTaskByZkd(Bus bus) {
+    public synchronized void allocateTask(Bus bus) {
         try {
             Date now = new Date();
             List<Task> taskList = taskService.list(new LambdaQueryWrapper<Task>()
@@ -182,6 +181,8 @@
         }
     }
 
+
+
     /**
      * 瑙f瀽鍙栨斁璐ч泦鍚堜换鍔�,杩涜鏈�浼樼殑鎺掑垪缁勫悎椤哄簭 ( 杞﹁締姝ゆ椂鏄┖闂蹭笖闈欐鐨� )
      * todo: {@link com.zy.acs.manager.core.HandlerController#controlAgv(String, HandlerPublishParam)}
@@ -200,27 +201,30 @@
             if (!travelService.save(travel)) {
                 throw new BusinessException("浠诲姟缁勪繚瀛樺け璐�");
             }
-
             // generate segment
             int segSerial = 0;
             List<Segment> segmentList = new ArrayList<>();
-            for (List<TaskPosDto> dtoList : list) {
-                for (TaskPosDto taskPosDto : dtoList) {
-                    segSerial++;
-                    AgvBackpackType backpackType = AgvBackpackDto.find(backpackDtoList, taskPosDto.getTaskId());
-                    assert null != backpackType;
+            for (Navigation.CodeDTO codeDTO : navigation.getCodeList()) {
+                segSerial++;
+                Task task = taskService.getById(Long.parseLong(codeDTO.getTaskId()));
+                Segment segment = new Segment();
+                segment.setUuid(String.valueOf(snowflakeIdWorker.nextId()).substring(3));
+                segment.setTravelId(travel.getId());
+                segment.setAgvId(agvId);
+                segment.setTaskId(task.getId());
+                segment.setSerial(segSerial);
+                Code cacheByData = codeService.getCacheByData(codeDTO.getCode());
+                segment.setEndNode(cacheByData.getId());
+                segment.setPosType(codeDTO.getPosType());
+                segment.setBackpack(codeDTO.getLev());
+                segment.setState(SegmentStateType.INIT.toString());
+                segmentList.add(segment);
 
-                    Segment segment = new Segment();
-                    segment.setUuid(String.valueOf(snowflakeIdWorker.nextId()).substring(3));
-                    segment.setTravelId(travel.getId());
-                    segment.setAgvId(agvId);
-                    segment.setTaskId(taskPosDto.getTaskId());
-                    segment.setSerial(segSerial);
-                    segment.setEndNode(taskPosDto.getCodeId());
-                    segment.setPosType(taskPosDto.getPosType().toString());
-                    segment.setBackpack(backpackType.lev);
-                    segment.setState(SegmentStateType.INIT.toString());
-                    segmentList.add(segment);
+                task.setTaskSts(TaskStsType.ASSIGN.val());
+                task.setStartTime(new Date());
+                task.setUpdateTime(new Date());
+                if (!taskService.updateById(task)) {
+                    throw new BusinessException(task.getUuid() + "浠诲姟鏇存柊澶辫触");
                 }
             }
             for (int i = 0; i < segmentList.size(); i++) {
@@ -230,16 +234,6 @@
                 }
                 if (!segmentService.save(segment)) {
                     throw new BusinessException("浠诲姟缁勪繚瀛樺け璐�");
-                }
-            }
-
-            // task
-            for (Task task : taskList) {
-                task.setTaskSts(TaskStsType.ASSIGN.val());
-                task.setStartTime(now);
-                task.setUpdateTime(now);
-                if (!taskService.updateById(task)) {
-                    throw new BusinessException(task.getUuid() + "浠诲姟鏇存柊澶辫触");
                 }
             }
 

--
Gitblit v1.9.1