#
luxiaotao1123
2024-10-28 70e8f76e19575de4b21e5c0ff225af7a1849fec6
#
5个文件已修改
78 ■■■■ 已修改文件
zy-acs-manager/src/main/java/com/zy/acs/manager/core/DispatcherTestController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/TaskService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/TaskServiceImpl.java 62 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/DispatcherTestController.java
@@ -19,7 +19,7 @@
    @GetMapping("/lanes")
    public R getLanes() {
        return R.ok().add(laneService.getLanePoints("00000010"));
        return R.ok().add(laneService.search("00000010"));
    }
}
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.acs.framework.common.Cools;
import com.zy.acs.manager.common.utils.LocUtils;
import com.zy.acs.manager.core.domain.Lane;
import com.zy.acs.manager.manager.entity.Agv;
import com.zy.acs.manager.manager.entity.AgvModel;
import com.zy.acs.manager.manager.entity.Task;
@@ -75,6 +76,10 @@
        Integer maxAgvCountInLane = configService.getVal("maxAgvCountInLane", Integer.class);
        Lane originLane = taskService.checkoutOriginLane(task);
        Lane destinationLane = taskService.checkoutDestinationLane(task);
        /**
         * 1.   判断task的起始点和目的点所在的巷道承载任务数量,
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneService.java
@@ -45,13 +45,13 @@
        return this.initialized;
    }
    public List<String> getLanePoints(String codeData) {
    public Lane search(String codeData) {
        if (Cools.isEmpty(codeData) || !this.initialized) {
            return null;
        }
        for (Lane lane : this.lanes) {
            if (lane.getCodes().contains(codeData)) {
                return lane.getCodes();
                return lane;
            }
        }
        return null;
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/TaskService.java
@@ -1,6 +1,7 @@
package com.zy.acs.manager.manager.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zy.acs.manager.core.domain.Lane;
import com.zy.acs.manager.manager.entity.Task;
import com.zy.acs.manager.manager.enums.TaskStsType;
@@ -25,4 +26,8 @@
    Boolean cancel(Long taskId, Long userId);
    Lane checkoutOriginLane(Task task);
    Lane checkoutDestinationLane(Task task);
}
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/TaskServiceImpl.java
@@ -7,16 +7,12 @@
import com.zy.acs.framework.common.SnowflakeIdWorker;
import com.zy.acs.framework.exception.CoolException;
import com.zy.acs.manager.common.exception.BusinessException;
import com.zy.acs.manager.manager.entity.FuncSta;
import com.zy.acs.manager.manager.entity.Loc;
import com.zy.acs.manager.manager.entity.Sta;
import com.zy.acs.manager.manager.entity.Task;
import com.zy.acs.manager.core.domain.Lane;
import com.zy.acs.manager.core.service.LaneService;
import com.zy.acs.manager.manager.entity.*;
import com.zy.acs.manager.manager.enums.*;
import com.zy.acs.manager.manager.mapper.TaskMapper;
import com.zy.acs.manager.manager.service.CodeService;
import com.zy.acs.manager.manager.service.FuncStaService;
import com.zy.acs.manager.manager.service.LocService;
import com.zy.acs.manager.manager.service.TaskService;
import com.zy.acs.manager.manager.service.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -33,9 +29,13 @@
    @Autowired
    private LocService locService;
    @Autowired
    private StaService staService;
    @Autowired
    private FuncStaService funcStaService;
    @Autowired
    private SnowflakeIdWorker snowflakeIdWorker;
    @Autowired
    private LaneService laneService;
    @Override
    public synchronized String generateSeqNum() {
@@ -115,6 +115,52 @@
        return Boolean.TRUE;
    }
    @Override
    public Lane checkoutOriginLane(Task task) {
        Long codeId = null;
        TaskTypeType typeType = TaskTypeType.get(task.getTaskTypeEl());
        switch (Objects.requireNonNull(typeType)) {
            case LOC_TO_LOC:
            case LOC_TO_STA:
                codeId = locService.getById(task.getOriLoc()).getCode();
                break;
            case STA_TO_LOC:
            case STA_TO_STA:
                codeId = staService.getById(task.getOriSta()).getCode();
                break;
            default:
                break;
        }
        if (null == codeId) {
            return null;
        }
        return laneService.search(codeService.getById(codeId).getData());
    }
    @Override
    public Lane checkoutDestinationLane(Task task) {
        Long codeId = null;
        TaskTypeType typeType = TaskTypeType.get(task.getTaskTypeEl());
        switch (Objects.requireNonNull(typeType)) {
            case LOC_TO_LOC:
            case STA_TO_LOC:
                codeId = locService.getById(task.getDestLoc()).getCode();
                break;
            case LOC_TO_STA:
            case STA_TO_STA:
                codeId = staService.getById(task.getDestSta()).getCode();
                break;
            default:
                break;
        }
        if (null == codeId) {
            return null;
        }
        return laneService.search(codeService.getById(codeId).getData());
    }
    @Transactional
    public void maintainLocSts(Task task, Boolean complete) {
        Loc oriLoc = null; Loc destLoc = null;