#
luxiaotao1123
2026-01-23 73121ec6ec5219dcd8f2c3c5271e87d51bad4420
#
5个文件已修改
26 ■■■■■ 已修改文件
zy-acs-flow/src/map/tool.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/AgvService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-flow/src/map/tool.js
@@ -856,7 +856,7 @@
        if (backpackCount !== prevBackpackCount || battery !== prevBattery) {
            const agvStatusMode = getAgvStatusMode(backpackCount, battery);
            const agvTexture = generateAgvSpriteTexture(agvStatusMode);
            agvSprite.texture = PIXI.Texture.from(agvTexture, { resourceOptions: { scale: 1 } });
            agvSprite.texture = PIXI.Texture.from(agvTexture, { resourceOptions: { scale: 1 } }); // todo Uncaught TypeError: Cannot read properties of undefined (reading '_pixiId')
            // update backpackCount and battery
            agvSprite.data.backpackCount = backpackCount;
            agvSprite.data.battery = battery;
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java
@@ -64,7 +64,6 @@
        List<String> result = new ArrayList<>();
        for (Agv agv : agvList) {
            if (!hasRunning) {
                // 1. without running tasks
                if (0 < taskService.count(new LambdaQueryWrapper<Task>()
                        .eq(Task::getAgvId, agv.getId())
                        .and(i -> i
@@ -75,11 +74,14 @@
                )) {
                    continue;
                }
            }
            // 2. in idle status
            if (!agvService.judgeEnable(agv.getId(), true)) {
                if (!agvService.judgeEnable(agv.getId(), true, true)) {
                continue;
            }
            } else {
                if (!agvService.judgeEnable(agv.getId(), true, false)) {
                    continue;
                }
            }
            result.add(agv.getUuid());
        }
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
@@ -486,7 +486,7 @@
        try {
            // valid -----------------------------------------------
            Agv agv = agvService.getById(agvId);
            if (!agvService.judgeEnable(agv.getId(), false)) {
            if (!agvService.judgeEnable(agv.getId())) {
                return;
            }
            if (!Cools.isEmpty(taskService.selectInSts(agvId, TaskStsType.ASSIGN, TaskStsType.PROGRESS))) {
@@ -1883,7 +1883,7 @@
                                success = true;
                                break;
                            default:
                                log.error("agv[{}] has wrong posType [{}], segment [{}]", protocol.getAgvNo(), posType.toString(), currSeg.getId());
                                log.error("AGV [{}] has wrong posType [{}], segment [{}]", protocol.getAgvNo(), posType.toString(), currSeg.getId());
                                break;
                        }
                    }
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/AgvService.java
@@ -32,7 +32,7 @@
    Boolean judgeEnable(Long agvId);
    Boolean judgeEnable(Long agvId, Boolean withBattery);
    Boolean judgeEnable(Long agvId, Boolean withBattery, Boolean idleStatus);
    Boolean judgeOnline(Long agvId);
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvServiceImpl.java
@@ -190,19 +190,21 @@
    @Override
    public Boolean judgeEnable(Long agvId) {
        return this.judgeEnable(agvId, false);
        return this.judgeEnable(agvId, false, true);
    }
    @Override
    public Boolean judgeEnable(Long agvId, Boolean isLowBattery) {
    public Boolean judgeEnable(Long agvId, Boolean isLowBattery, Boolean idleStatus) {
        String agvNo = this.getAgvNo(agvId);
        AgvModel agvModel = agvModelService.getByAgvId(agvId);
        if (idleStatus) {
        if (0 < segmentService.count(new LambdaQueryWrapper<Segment>()
                        .eq(Segment::getAgvId, agvId)
                        .eq(Segment::getState, SegmentStateType.RUNNING.toString())
        )) {
//            log.warn("[{}]号Agv正在忙碌 - segment......", agvNo);
            return false;
            }
        }
        if (!this.judgeOnline(agvId)) {
//            log.warn("[{}]号Agv不是在线状态......", agvNo);
@@ -216,10 +218,12 @@
        if (null == agvDetail.getSoc() || agvDetail.getSoc() == 0) {
            return false;
        }
        if (idleStatus) {
        if (!agvDetail.getAgvStatus().equals(AgvStatusType.IDLE) && !agvDetail.getAgvStatus().equals(AgvStatusType.CHARGE)) {
            log.warn("[{}]号Agv不是空闲状态......", agvNo);
            return false;
        }
        }
        if (agvDetail.getAgvStatus().equals(AgvStatusType.CHARGE)) {
            if (agvDetail.getSoc() < agvModel.getQuaBattery()) {
                return false;