#
luxiaotao1123
2024-10-23 944175e5277aa5362da613262e24336bf3647a13
#
3个文件已修改
68 ■■■■ 已修改文件
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/ValidService.java 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/OpenController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
@@ -101,7 +101,7 @@
        String batch = busSubmitParam.getBatch();
        List<TaskDto> taskDtoList = busSubmitParam.getTaskList();
        if (Cools.isEmpty(taskDtoList)) {
            throw new BusinessException("taskDtoList 不能为空");
            throw new BusinessException("taskList can't be empty!");
        }
        // 优先级排序
@@ -120,7 +120,7 @@
        bus.setMemo(memo);
        if (!busService.save(bus)) {
            throw new BusinessException("任务保存失败");
            throw new BusinessException("Internal Server Error!");
        }
        // 保存任务
@@ -128,7 +128,7 @@
            task.setBusId(bus.getId());
            task.setTaskSts(TaskStsType.INIT.val());
            if (!taskService.save(task)) {
                throw new BusinessException(task.getSeqNum() + "任务保存失败");
                throw new BusinessException("seqNum:" + task.getSeqNum() + " failed to save!");
            }
            // 修改库位状态
@@ -140,44 +140,44 @@
                case LOC_TO_LOC:
                    oriLoc = locService.getById(task.getOriLoc());
                    if (!oriLoc.getLocSts().equals(LocStsType.STOCK.val())) {
                        throw new BusinessException("oriLoc:" + task.getOriLoc$() + " 不是在库状态");
                        throw new BusinessException("oriLoc:" + task.getOriLoc$() + " is not in STOCK status");
                    }
                    oriLoc.setLocSts(LocStsType.PAKOUT.val());
                    oriLoc.setUpdateTime(now);
                    if (!locService.updateById(oriLoc)) {
                        throw new BusinessException("oriLoc:" + task.getOriLoc$() + " 修改库位状态失败");
                        throw new BusinessException("oriLoc:" + task.getOriLoc$() + " failed to update");
                    }
                    destLoc = locService.getById(task.getDestLoc());
                    if (!destLoc.getLocSts().equals(LocStsType.IDLE.val())) {
                        throw new BusinessException("destLoc:" + task.getDestLoc$() + " 不是空闲状态");
                        throw new BusinessException("destLoc:" + task.getDestLoc$() + " is not in IDLE status");
                    }
                    destLoc.setLocSts(LocStsType.PAKIN.val());
                    destLoc.setUpdateTime(now);
                    if (!locService.updateById(destLoc)) {
                        throw new BusinessException("destLoc:" + task.getDestLoc$() + " 修改库位状态失败");
                        throw new BusinessException("destLoc:" + task.getDestLoc$() + " failed to update");
                    }
                    break;
                case LOC_TO_STA:
                    oriLoc = locService.getById(task.getOriLoc());
                    if (!oriLoc.getLocSts().equals(LocStsType.STOCK.val())) {
                        throw new BusinessException("oriLoc:" + task.getOriLoc$() + " 不是在库状态");
                        throw new BusinessException("oriLoc:" + task.getOriLoc$() + " is not in STOCK status");
                    }
                    oriLoc.setLocSts(LocStsType.PAKOUT.val());
                    oriLoc.setUpdateTime(now);
                    if (!locService.updateById(oriLoc)) {
                        throw new BusinessException("oriLoc:" + task.getOriLoc$() + " 修改库位状态失败");
                        throw new BusinessException("oriLoc:" + task.getOriLoc$() + " failed to update");
                    }
                    break;
                case STA_TO_LOC:
                    destLoc = locService.getById(task.getDestLoc());
                    if (!destLoc.getLocSts().equals(LocStsType.IDLE.val())) {
                        throw new BusinessException("destLoc:" + task.getDestLoc$() + " 不是空闲状态");
                        throw new BusinessException("destLoc:" + task.getDestLoc$() + " is not in IDLE status");
                    }
                    destLoc.setLocSts(LocStsType.PAKIN.val());
                    destLoc.setUpdateTime(now);
                    if (!locService.updateById(destLoc)) {
                        throw new BusinessException("destLoc:" + task.getDestLoc$() + " 修改库位状态失败");
                        throw new BusinessException("destLoc:" + task.getDestLoc$() + " failed to update");
                    }
                    break;
                case STA_TO_STA:
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/ValidService.java
@@ -41,7 +41,7 @@
        List<Task> taskList = new ArrayList<>();
        for (TaskDto taskDto : taskDtoList) {
            if (Cools.isEmpty(taskDto.getSeqNum())) {
                throw new BusinessException("seqNum不能为空");
                throw new BusinessException("Task seqNum can't be empty!");
            }
            Task task = new Task();
            taskList.add(task);
@@ -53,14 +53,14 @@
            if (!Cools.isEmpty(taskDto.getOriLoc())) {
                Loc oriLoc = locService.selecatByLocNo(taskDto.getOriLoc());
                if (null == oriLoc) {
                    throw new BusinessException("oriLoc: " + taskDto.getOriLoc() + "不存在");
                    throw new BusinessException("oriLoc: " + taskDto.getOriLoc() + " doesn't exist!");
                }
                task.setOriLoc(oriLoc.getId());
            }
            if (!Cools.isEmpty(taskDto.getOriSta())) {
                Sta oriSta = staService.selectByStaNo(taskDto.getOriSta());
                if (null == oriSta) {
                    throw new BusinessException("oriSta: " + taskDto.getOriSta() + "不存在");
                    throw new BusinessException("oriSta: " + taskDto.getOriSta() + " doesn't exist!");
                }
                task.setOriSta(oriSta.getId());
            }
@@ -68,7 +68,7 @@
            if (!Cools.isEmpty(taskDto.getDestLoc())) {
                Loc destLoc = locService.selecatByLocNo(taskDto.getDestLoc());
                if (null == destLoc) {
                    throw new BusinessException("destLoc: " + taskDto.getDestLoc() + "不存在");
                    throw new BusinessException("destLoc: " + taskDto.getDestLoc() + " doesn't exist!");
                }
                task.setDestLoc(destLoc.getId());
                task.setDestCode(destLoc.getCode());
@@ -76,7 +76,7 @@
            if (!Cools.isEmpty(taskDto.getDestSta())) {
                Sta destSta = staService.selectByStaNo(taskDto.getDestSta());
                if (null == destSta) {
                    throw new BusinessException("destSta: " + taskDto.getDestSta() + "不存在");
                    throw new BusinessException("destSta: " + taskDto.getDestSta() + " doesn't exist!");
                }
                task.setDestSta(destSta.getId());
                task.setDestCode(destSta.getCode());
@@ -84,16 +84,16 @@
            // task-type ----------------------------------
            if (null == task.getOriLoc() && null == task.getOriSta()) {
                throw new BusinessException(task.getSeqNum() + " 错误,oriLoc和oriSta必须存在一项");
                throw new BusinessException("seNum:" + task.getSeqNum() + " is wrong,there must be at least one of oriLoc and oriSta");
            }
            if (null != task.getOriLoc() && null != task.getOriSta()) {
                throw new BusinessException(task.getSeqNum() + " 错误,oriLoc和oriSta只能存在一项");
                throw new BusinessException("seNum:" + task.getSeqNum() + " is wrong,there must be at least one of oriLoc and oriSta");
            }
            if (null == task.getDestLoc() && null == task.getDestSta()) {
                throw new BusinessException(task.getSeqNum() + " 错误,destLoc和destSta必须存在一项");
                throw new BusinessException("seNum:" + task.getSeqNum() + " is wrong,either destLoc and destSta must be present");
            }
            if (null != task.getDestLoc() && null != task.getDestSta()) {
                throw new BusinessException(task.getSeqNum() + " 错误,destLoc和destSta只能存在一项");
                throw new BusinessException("seNum:" + task.getSeqNum() + " is wrong,either destLoc and destSta must be present");
            }
            if (null != task.getOriSta()) {
                if (null != task.getDestLoc()) {
@@ -128,14 +128,14 @@
                    startCode = codeService.getById(oriLoc.getCode());
                    endCode = codeService.getById(destLoc.getCode());
                    if (null == startCode) {
                        throw new BusinessException("oriLoc:" + oriLoc.getLocNo() + " 未绑定地面码");
                        throw new BusinessException("oriLoc:" + oriLoc.getLocNo() + " hasn't been bound to a QrCode yet");
                    }
                    if (null == endCode) {
                        throw new BusinessException("destLoc:" + destLoc.getLocNo() + " 未绑定地面码");
                        throw new BusinessException("destLoc:" + destLoc.getLocNo() + " is not bound to a QrCode yet");
                    }
                    pathList = mapService.validFeasibility(startCode, endCode);
                    if (Cools.isEmpty(pathList)) {
                        throw new BusinessException(task.getSeqNum() + "任务错误,oriLoc:" + task.getOriLoc() + "无法行走至 destLoc" + task.getDestLoc());
                        throw new BusinessException("seqNum:" + task.getSeqNum() + " is wrong,oriLoc:" + task.getOriLoc() + " is unable to reach destLoc" + task.getDestLoc());
                    }
                    task.setPhase(JSON.toJSONString(pathList));
                    break;
@@ -146,14 +146,14 @@
                    startCode = codeService.getById(oriLoc.getCode());
                    endCode = codeService.getById(destSta.getCode());
                    if (null == startCode) {
                        throw new BusinessException("oriLoc:" + oriLoc.getLocNo() + " 未绑定地面码");
                        throw new BusinessException("oriLoc:" + oriLoc.getLocNo() + " hasn't been bound to QrCode yet");
                    }
                    if (null == endCode) {
                        throw new BusinessException("destSta:" + destSta.getStaNo() + " 未绑定地面码");
                        throw new BusinessException("destSta:" + destSta.getStaNo() + " is not bound to QrCode yet");
                    }
                    pathList = mapService.validFeasibility(startCode, endCode);
                    if (Cools.isEmpty(pathList)) {
                        throw new BusinessException(task.getSeqNum() + "任务错误,oriLoc:" + task.getOriLoc() + "无法行走至 destSta" + task.getDestSta());
                        throw new BusinessException("seqNum:" + task.getSeqNum() + " is wrong,oriLoc:" + task.getOriLoc() + " can't move to destSta" + task.getDestSta());
                    }
                    task.setPhase(JSON.toJSONString(pathList));
                    break;
@@ -164,14 +164,14 @@
                    startCode = codeService.getById(oriSta.getCode());
                    endCode = codeService.getById(destLoc.getCode());
                    if (null == startCode) {
                        throw new BusinessException("oriSta:" + oriSta.getStaNo() + " 未绑定地面码");
                        throw new BusinessException("oriSta:" + oriSta.getStaNo() + " hasn't bound to QrCode yet");
                    }
                    if (null == endCode) {
                        throw new BusinessException("destLoc:" + destLoc.getLocNo() + " 未绑定地面码");
                        throw new BusinessException("destLoc:" + destLoc.getLocNo() + " is not bound to QrCode yet");
                    }
                    pathList = mapService.validFeasibility(startCode, endCode);
                    if (Cools.isEmpty(pathList)) {
                        throw new BusinessException(task.getSeqNum() + "任务错误,oriSta:" + task.getOriSta() + "无法行走至 destLoc" + task.getDestLoc());
                        throw new BusinessException("seqNum:" + task.getSeqNum() + " is wrong,oriSta:" + task.getOriSta() + " is unable to react destLoc" + task.getDestLoc());
                    }
                    task.setPhase(JSON.toJSONString(pathList));
                    break;
@@ -189,12 +189,12 @@
                    }
                    pathList = mapService.validFeasibility(startCode, endCode);
                    if (Cools.isEmpty(pathList)) {
                        throw new BusinessException(task.getSeqNum() + "任务错误,oriSta:" + task.getOriSta() + "无法行走至 destSta" + task.getDestSta());
                        throw new BusinessException("seqNum:" + task.getSeqNum() + " is wrong,oriSta:" + task.getOriSta() + " can't move to destSta" + task.getDestSta());
                    }
                    task.setPhase(JSON.toJSONString(pathList));
                    break;
                default:
                    throw new BusinessException(task.getSeqNum() + "任务类型错误");
                    throw new BusinessException("seqNum:" + task.getSeqNum() + " is wrong, cause this type not exist");
            }
        }
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/OpenController.java
@@ -16,7 +16,7 @@
/**
 * Created by vincent on 2023/6/12
 */
@Api(tags = "开放平台")
@Api(tags = "Open Api")
@RestController
@RequestMapping("/api/open")
public class OpenController extends BaseController {
@@ -26,10 +26,10 @@
    @PreAuthorize("hasAuthority('open:bus:submit')")
    @PostMapping("/bus/submit")
    @OperationLog("任务下发")
    @OperationLog("generate task from open api")
    public R save(@RequestBody OpenBusSubmitParam param) {
        mainService.generateBusAndTask(param, null);
        return R.ok("保存成功");
        return R.ok("generate tasks success");
    }
}