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

1.4 KiB
Raw Permalink Blame History

M06-F 订单自动联动

  • 日期:2026-06-24
  • 起始 commite4941c2
  • 工程 commit8936ad1
  • 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 已 pushHEAD == origin/main == 8936ad1

外部阻塞与后续

缺生产 MQTT 账号/ACL、控制箱、Sub-1G 门锁、4G 智慧插座、DeviceID 和现场配线,真实订单到硬件全链路仍保留 BLOCKED_EXTERNAL。游标进入 M06-G 真实硬件联调。