Files
huachuang/docs/superpowers/plans/2026-08-13-auto-sub-roll-down-call-empty.md

44 lines
2.0 KiB
Markdown
Raw Normal View History

2026-08-18 18:44:13 +08:00
# 子卷下线补充空架子实现计划
**目标:** 完成 `autoSubRollDownCallEmptyJob` 的空架 AGV 任务自动创建及点位状态回调。
**架构:** 复用现有点位查询和条件锁 Mapper业务 Service 在事务内按优先级配对并创建任务;独立 AGV 回调类维护起点、目的点状态Job 仅负责调度。
**技术栈:** Java 17、Spring Boot、MyBatis、XXL-JOB、任务模块 API。
---
### 任务 1增加空架任务类型和业务入口
**文件:**
- 修改:`nl-module-lms/nl-module-lms-api/src/main/java/cn/code/nl/module/lms/enums/PackageTaskTypeEnum.java`
- 修改:`nl-module-lms/nl-module-lms-server/src/main/java/cn/code/nl/module/lms/service/packagepoint/PackageBoxBusinessService.java`
- 修改:`nl-module-lms/nl-module-lms-server/src/main/java/cn/code/nl/module/lms/job/box/BoxAutoJob.java`
- [x] 新增子卷下线补空架 AGV 任务类型。
- [x] 新增业务方法并由定时器记录日志后调用。
### 任务 2实现点位分配和任务创建
**文件:**
- 修改:`nl-module-lms/nl-module-lms-server/src/main/java/cn/code/nl/module/lms/service/packagepoint/PackageBoxBusinessServiceImpl.java`
- [x] 查询下线空位、装箱空载具、待检空载具和待检空位。
- [x] 每个下线空位优先配装箱空载具,其次配待检空载具。
- [x] 将剩余装箱空载具配到待检空位。
- [x] 条件锁定两端点位并创建空架 AGV 任务。
### 任务 3实现空架任务回调
**文件:**
- 创建:`nl-module-lms/nl-module-lms-server/src/main/java/cn/code/nl/module/lms/tasks/box/SubRollCallEmptyAgvTask.java`
- [x] 完成时将目的点更新为空载具并解锁。
- [x] 取消时解锁两端点位。
- [x] 取货时将起点更新为空位、清空库存信息并解锁。
### 任务 4验证
- [x] 编译 LMS 服务及其依赖模块,确认 Maven 退出码为 0。
- [x] 检查 Git 差异,确认只修改本功能相关文件且未覆盖用户改动。