#
vincentlu
2026-01-05 69e6f36a3fb8f2763ea353b96e1f40aa3e785b5b
zy-acs-manager/src/main/java/com/zy/acs/manager/core/HandlerController.java
@@ -193,12 +193,20 @@
                if (null == endCode) {
                    return R.error();
                }
                if (!taskService.removeById(task.getId())) {
                    throw new BusinessException("failed to remove task");
                }
                task = null;
                if (!mainLockWrapService.buildMinorTask(agv.getId(), param.getTaskMode(), endCode.getData(), null)) {
                    return R.error();
                }
                break;
            case TO_CHARGE:
            case TO_STANDBY:
                if (!taskService.removeById(task.getId())) {
                    throw new BusinessException("failed to remove task");
                }
                task = null;
                if (!mainLockWrapService.buildMinorTask(agv.getId(), param.getTaskMode(), null, null)) {
                    return R.error();
                }
@@ -281,6 +289,7 @@
                if (null == staReserveService.reserveStaIn(destSta, task, 1)) {
                    throw new BusinessException("destSta:" + destSta.getStaNo() + " 预约失败");
                }
                staReserveService.allocateCallBack(task, agv.getId());
                // task
                task.setOriLoc(oriLoc.getId());
@@ -302,6 +311,7 @@
                if (null == staReserveService.reserveStaOut(oriSta, task, 1)) {
                    throw new BusinessException("oriSta:" + oriSta.getStaNo() + " 预约失败");
                }
                staReserveService.allocateCallBack(task, agv.getId());
                // destLoc
                if (!Cools.isEmpty(param.getEndLocNo())) {
@@ -342,6 +352,7 @@
                if (null == staReserveService.reserveStaOut(oriSta, task, 1)) {
                    throw new BusinessException("oriSta:" + oriSta.getStaNo() + " 预约失败");
                }
                staReserveService.allocateCallBack(task, agv.getId());
                // destSta
                if (!Cools.isEmpty(param.getEndStaNo())) {
@@ -356,6 +367,7 @@
                if (null == staReserveService.reserveStaIn(destSta, task, 1)) {
                    throw new BusinessException("destSta:" + destSta.getStaNo() + " 预约失败");
                }
                staReserveService.allocateCallBack(task, agv.getId());
                // task
                task.setOriSta(oriSta.getId());
@@ -367,8 +379,10 @@
                break;
        }
        if (!taskService.updateById(task)) {
            throw new BusinessException("任务更新失败");
        if (null != task) {
            if (!taskService.updateById(task)) {
                throw new BusinessException("任务更新失败");
            }
        }
        return R.ok();
    }