Files
qipai/docs/devlogs/2026-06-24-M06-F-订单自动联动.md
T

28 lines
1.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# M06-F 订单自动联动
- 日期:2026-06-24
- 起始 commit`e4941c2`
- 工程 commit`8936ad1`
- ENGINEERING_DELTA=YES
- 子阶段状态:PARTIAL/BLOCKED_EXTERNAL;任务处理闭环完成,缺真实硬件和生产 MQTT 验收
## 工程增量
- 新增 `OrderDeviceAutomationService`,由 `device.command` 异步任务读取订单并下发硬件动作。
- `ORDER_PAID/ORDER_STARTED` 下发控制箱 `task`,并在房间已绑定智慧插座时打开插座。
- `ORDER_RENEWED` 下发控制箱 `addtask`,并保持插座开启。
- `ORDER_CANCELLED/ORDER_FINISHED` 下发 `canceltask` 并关闭智慧插座。
- `ORDER_ROOM_CHANGED` 先取消旧房间设备,再按当前订单房间重新启动联动。
- 终态订单的延迟开始/续费任务会跳过,不补发开门或通电命令。
- Worker CLI 已注册 `device.command` handler;命令仍复用 MQTT 发布、ACK 和失败补偿状态机。
## 验证
- Windows `npm test`:退出码 0,M01-A 至 M06-F 全量后端回归通过。
- 新增测试覆盖开始、续费、取消、换房、无插座绑定跳过和终态保护。
- 工程 commit 已 push`HEAD == origin/main == 8936ad1`
## 外部阻塞与后续
缺生产 MQTT 账号/ACL、控制箱、Sub-1G 门锁、4G 智慧插座、DeviceID 和现场配线,真实订单到硬件全链路仍保留 `BLOCKED_EXTERNAL`。游标进入 M06-G 真实硬件联调。