2.1 KiB
2.1 KiB
2026-08-10 M09-B 清洁规则与照片验收 API
新增管理接口
GET /admin-api/cleaning/templates- 按租户和管理员门店范围返回租户、门店、房间三级清洁模板。
- 返回照片必传规则、最少/最多张数、免清洁策略、状态和版本号。
PUT /admin-api/cleaning/templates- 新建或更新同一作用范围的模板;更新时版本号递增并写审计日志。
- 配置只参与后续新任务生成,不修改既有任务快照。
GET /admin-api/cleaning/tasks/:taskId/submissions- 返回最近 20 个验收提交版本,包含版本号、状态、照片、提交备注、驳回原因、提交/验收人和时间。
POST /admin-api/cleaning/photos/cleanup- 批量清理到期且未提交的照片;先原子领取并标记孤儿,文件删除成功后再软删除记录,失败项五分钟后可重试。
既有接口收口
POST /app-api/cleaning/tasks/:taskId/photos只允许本人STARTED任务;文件必须为 JPEG/PNG/WebP,声明 MIME、扩展名和实际解码格式一致,原图最多 8 MiB/4000 万像素。- 图片统一旋转、限边并重编码为 WebP,移除 EXIF/ICC 等附加元数据;存储路径固定为
tenants/{tenantId}/stores/{storeId}。 - 每次上传写入任务照片资产,提交时再次校验租户、任务、上传人和
PENDING状态,禁止复用其他任务或其他租户 URL。 POST /app-api/cleaning/tasks/:taskId/submit使用任务创建时固化的照片规则;驳回后必须先调用rework回到STARTED,再提交新版本。complete/reject同事务更新当前提交版本为ACCEPTED/REJECTED,旧版本和旧照片继续保留。exempt按任务快照中的DISABLED、BEFORE_START、ANY_ACTIVE策略执行,继续保证免清洁任务不进入结算。
设备安全边界
- 订单结束、取消或换房旧房间触发断电前,重新查询该房间最新有效订单;存在
PAID、RESERVED或IN_PROGRESS新订单时返回ROOM_HAS_ACTIVE_ORDER,不下发取消任务或插座断电。