docs(M08-C): 回填保洁与设备运营

This commit is contained in:
Codex
2026-08-10 10:53:26 +08:00
parent 65932a8000
commit 3bfccb8513
7 changed files with 55 additions and 8 deletions
@@ -82,3 +82,30 @@ M08-C 保持 `DOING`。订单筛选、处置、备注和代下单已形成授权
### 状态
M08-C 保持 `DOING`。会员检索、聚合详情、STAFF 员工概况和代下单会员选择已完成;下一工程增量继续保洁任务、设备状态与临时控制,不移动到 M08-D。
## 2026-08-10 保洁与设备运营
- `ENGINEERING_DELTA=YES`
- 管理员小程序新增“保洁与设备”页,按当前授权门店展示保洁任务、待验收/处理中/驳回/完成统计,并支持验收通过、驳回补做和免清洁。
- 设备区复用既有设备拓扑,展示在线/离线/故障、型号、房间、最近心跳、开放告警和未解决维护记录;写权限账号可执行控制箱临时开门、全屋通断电和智能插座通断电。
- 新增保洁任务/统计/处置、设备列表/拓扑和全部设备控制的小程序管理别名;服务端继续执行 capability、租户和门店范围校验,前端按钮隐藏不是权限边界。
- `DeviceControlService` 在命令创建/发布前写 `DEVICE_COMMAND_REQUESTED` 审计,记录实际账号与命令上下文;系统自动化和顾客订单开门也分别标记 SYSTEM/CUSTOMER 来源。
- 页面所有写动作均要求二次确认;临时开门固定非保持开启、4 秒延时。接口只返回命令发布状态,设备真实执行仍以相同 commandId 回包为准。
### 测试证据
- `powershell -ExecutionPolicy Bypass -File scripts/dev/windows/test-all.ps1`:退出码 0;仓库完整性、敏感信息、后端全量、M08-C 静态验收、迁移计划和后台生产构建全部通过。
- WSL 原生临时副本 + MySQL 8.4.10`up → verify → down → up → verify` 通过,136 条 up、114 条 verify、130 条 down;实际验证管理员开门命令、MQTT Mock 发布及 ADMIN/用户 ID 审计归因。
- 路由测试覆盖小程序保洁任务/统计/验收/驳回/免清洁别名、设备列表/拓扑别名和开门/电控别名;服务测试覆盖命令审计数量和管理账号上下文。
- 已知非阻塞提示:参考目录既有 xjar 超过 100MBElement Plus 产物 chunk 超过 500kBWSL npm 报告 allow-scripts 提示,未执行破坏性自动升级。
### 变更影响
- 数据库:无 schema 迁移;新增运行时设备命令审计数据。
- API:新增小程序管理端保洁、设备读取和设备控制别名;既有后台 API 不变。
- 部署:后端与小程序有变化,数据库无迁移;未自动部署生产。
- 工程提交:`65932a8`,已推送并验证 `HEAD == origin/main`
### 状态
M08-C 保持 `DOING`。保洁任务处置、设备运营概况和带操作人审计的临时开门/电控已完成;下一工程增量继续管理员验券与门店经营统计,不移动到 M08-D。