jianghaiyue
2025-10-29 7177c4f762c0dfb3a2f490553ee728ba2960ed62
优化更新
2个文件已修改
31 ■■■■ 已修改文件
algo-zkd/src/main/java/com/algo/service/PathPlanningService.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
algo-zkd/src/main/java/com/algo/service/RemainingPathProcessor.java 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
algo-zkd/src/main/java/com/algo/service/PathPlanningService.java
@@ -285,7 +285,13 @@
        PlannedPath processedPath = new PlannedPath();
        processedPath.setAgvId(agv.getAgvId());
        processedPath.setCodeList(remainingCodes);
        processedPath.setSegId(agv.getAgvId() + "_REMAINING_" + System.currentTimeMillis());
        // 使用输入中的segId,如果没有则生成新的
        String segId = remainingPath.getSegId();
        if (segId == null || segId.trim().isEmpty()) {
            segId = agv.getAgvId() + "_REMAINING_" + System.currentTimeMillis();
        }
        processedPath.setSegId(segId);
        if (timeCalculator != null && !remainingCodes.isEmpty()) {
            // 获取AGV的下一个路径点到达时间作为起始时间
algo-zkd/src/main/java/com/algo/service/RemainingPathProcessor.java
@@ -410,11 +410,26 @@
        connectedPath.setAgvId(agv.getAgvId());
        connectedPath.setCodeList(remainingCodes);
        // 生成新的段落ID
        String segId = agv.getAgvId() + "_CONNECTED_" + System.currentTimeMillis();
        if (newPath != null && newPath.getSegId() != null) {
            segId = newPath.getSegId() + "_EXTENDED";
        // 使用剩余路径的原始segId
        String segId = remainingPath.getSegId();
        if (segId != null && !segId.trim().isEmpty()) {
            // 如果有新路径连接,在原segId基础上添加扩展标记
            if (newPath != null && newPath.getCodeList() != null && !newPath.getCodeList().isEmpty()) {
                // 检查是否已经有扩展标记,避免重复添加
                if (!segId.endsWith("_EXTENDED")) {
                    segId = segId + "_EXTENDED";
        }
            }
        } else {
            // 如果原始路径没有segId,根据情况生成
            if (newPath != null && newPath.getSegId() != null && !newPath.getSegId().trim().isEmpty()) {
                segId = newPath.getSegId() + "_EXTENDED";
            } else {
                segId = agv.getAgvId() + "_CONNECTED_" + System.currentTimeMillis();
            }
        }
        connectedPath.setSegId(segId);
        return connectedPath;