# M08-D Vue 平台后台 ## 2026-08-10 运营总览与工作区导航 - `ENGINEERING_DELTA=YES` - 后台壳层从单一保洁页面升级为“运营总览/保洁运营”可切换工作区;访问令牌分为草稿和已保存值,避免输入过程中逐字符触发请求。 - 新增授权门店运营总览,支持 7/30/90 日周期,展示成功实收与预订金额、订单/活跃/完成、OWNER 下单会员、验券成功/失败、当前房态、支付渠道和每日收入趋势。 - 核心业务导航明确区分已可用的保洁运营与后续门店、订单、会员、设备、支付增量,不把未实现页面伪装成可用入口。 - 新增 `/admin-api/statistics`,与 `/app-api/management/statistics` 共享同一路由处理与仓储权限边界;前端只调用固定 `/admin-api` 基地址。 - 新增 `scripts/check-admin-m08-d.mjs` 并接入 Windows 全量门禁,覆盖页面、统计 API、响应式样式、可用模块导航和后台路由别名。 ### 测试证据 - Windows `scripts/dev/windows/test-all.ps1`:64.6 秒退出码 0;后端全测、M08-B/C/D 静态门禁、Vue TypeScript 与生产构建、域名/敏感信息/仓库完整性全部通过。 - WSL 原生临时副本 + MySQL 8.4.10:28.3 秒退出码 0,`up → verify → down → up → verify` 完成,136 条 up、114 条 verify、130 条 down。 - 后端路由测试同时验证 `/app-api/management/statistics` 与 `/admin-api/statistics` 返回一致统计,并保留最长 93 天限制。 - Vue 生产构建成功;已知 Element Plus chunk 超过 500kB、参考 xjar 超过 100MB 和 WSL npm 7 个 high audit 项仍为既有非阻塞提示,未执行破坏性自动升级。 ### 变更影响 - 数据库:无迁移、无新增表。 - API:新增后台经营统计别名,鉴权和统计口径不变。 - 后台:新增响应式运营总览与模块切换;保洁工作台功能保持不变。 - 部署:后端与后台静态产物有变化,未自动部署生产。 - 工程提交:`65f2e7c`,已推送并验证 `HEAD == origin/main`。 ### 状态 M08-D 保持 `DOING`。运营总览与现有保洁工作区已接通;下一工程增量补门店与房间管理页面,不提前进入 M09。 ## 2026-08-10 门店与房间管理 - `ENGINEERING_DELTA=YES` - 新增响应式门店/房间工作区,支持授权门店搜索、营业状态筛选、详情、每周营业时段、Wi-Fi 配置状态、新增、编辑和归档。 - 房间管理支持房号/分类/标签搜索、房态筛选、完整整数分价格配置、标签/图片、启停、运营房态、停用时段和归档。 - 门店列表读取补充营业时段与 `wifiConfigured`,不返回 Wi-Fi 密码;更新接口允许省略 `wifiPassword` 并使用 `COALESCE` 保留原值,避免后台编辑清空既有密码。 - 所有写操作继续复用 M03 的租户、门店范围、capability 与审计边界,前端错误显示保留业务错误码和 traceId。 ### 测试证据 - Windows `scripts/dev/windows/test-all.ps1`:63.4 秒退出码 0;后端全测、M08-B/C/D 静态门禁、Vue TypeScript 与生产构建、域名/敏感信息检查均通过。 - WSL 原生临时副本 + MySQL 8.4.10:26.5 秒退出码 0,`up → verify → down → up → verify` 完成,136 条 up、114 条 verify、130 条 down。 - `backend/tests/store-room.test.mjs` 新增营业时段、Wi-Fi 配置状态与省略密码更新断言;Vue 生产构建成功。 - 既有 Element Plus chunk 超过 500kB、参考 xjar 超过 100MB 和 WSL npm 7 个 high audit 项仍为非阻塞提示,未执行破坏性自动升级。 ### 变更影响 - 数据库:无迁移、无新增表。 - API:`GET /admin-api/stores` 增加营业时段、Wi-Fi 配置状态及既有门店详情字段;`POST/PUT /admin-api/stores` 的 `wifiPassword` 可省略,更新省略时保持原值。 - 后台:新增门店/房间响应式管理入口和完整表单。 - 部署:后端与后台静态产物有变化,未自动部署生产。 - 工程提交:`1ca783e`,已推送并验证 `HEAD == origin/main`。 ### 状态 M08-D 保持 `DOING`。门店与房间管理增量完成;下一工程增量补后台订单筛选、详情与运营处置页面。 ## 2026-08-10 后台订单运营 - `ENGINEERING_DELTA=YES` - 新增订单运营工作区,支持授权门店与十种订单状态筛选、分页、当前页 CSV 导出和页面内金额/待支付/进行中摘要。 - 新增订单详情抽屉和完整状态流水,展示门店、房间、时段、应收/实收、最近支付渠道/状态、操作来源、操作人、原因和 traceId。 - 接入服务端订单状态机处置、运营备注、时段调整、锁定价/当前价续费和同门店可用房间换房;前端只提交业务动作与原因,不提交目标状态或客户端计算金额。 - 新增 `/admin-api/orders` 列表/详情和 `/admin-api/orders/:orderId/history` 后台别名,与小程序管理端共享仓储的租户、门店范围、并发冲突和审计边界。 ### 测试证据 - Windows `scripts/dev/windows/test-all.ps1`:63.5 秒退出码 0;后端全测、M08-B/C/D 静态门禁、Vue TypeScript 与生产构建、域名/敏感信息检查均通过。 - WSL 原生临时副本 + MySQL 8.4.10:26.9 秒退出码 0,`up → verify → down → up → verify` 完成,136 条 up、114 条 verify、130 条 down。 - `backend/tests/order-query.test.mjs` 覆盖后台列表/详情别名,`backend/tests/order-state.test.mjs` 覆盖后台状态历史别名;Vue 生产构建成功。 - 既有 Element Plus chunk 超过 500kB、参考 xjar 超过 100MB 和 WSL npm 7 个 high audit 项仍为非阻塞提示。 ### 变更影响 - 数据库:无迁移、无新增表。 - API:新增订单列表、详情和状态历史的 `/admin-api` GET 别名;既有写接口与权限契约不变。 - 后台:新增订单筛选、导出、详情、状态流水和运营处置工作区。 - 部署:后端与后台静态产物有变化,未自动部署生产。 - 工程提交:`20a292e`,已推送并验证 `HEAD == origin/main`。 ### 状态 M08-D 保持 `DOING`。订单运营增量完成;下一工程增量补支付、退款与分账运营页面。 ## 2026-08-10 支付、退款与分账运营 - `ENGINEERING_DELTA=YES` - 新增资金运营工作区,展示收款账户、已授权账户、分账接收方和近百笔分账金额,并可按门店范围筛选。 - 接入收款账户、凭据环境引用、授权状态、分账开关、脱敏接收方和全局/门店比例策略维护;页面不读取或回显私钥、APIv3 Key 和真实接收方标识。 - 接入近百笔分账记录、失败码、微信退款、微信账单请求和分账执行;退款金额、可退余额、比例总和、授权状态、生产 Mock 门禁和幂等均由服务端继续校验。 ### 测试证据 - Windows `scripts/dev/windows/test-all.ps1`:62.8 秒退出码 0;后端全测、M08-B/C/D 静态门禁、Vue TypeScript 与生产构建、域名/敏感信息检查均通过。 - WSL 原生临时副本 + MySQL 8.4.10:26.5 秒退出码 0,`up → verify → down → up → verify` 完成,136 条 up、114 条 verify、130 条 down。 - Vue 生产构建成功;既有 Element Plus chunk 超过 500kB、参考 xjar 超过 100MB 和 WSL npm 7 个 high audit 项仍为非阻塞提示。 ### 变更影响 - 数据库:无迁移、无新增表。 - API:无新后端路由;Vue 后台接入既有 `/admin-api/pay/**` 配置、退款、对账和分账接口。 - 后台:新增响应式资金运营入口,敏感凭据只接受环境引用。 - 部署:后台静态产物有变化,未自动部署生产。 - 工程提交:`4eac99d`,已推送并验证 `HEAD == origin/main`。 ### 状态 M08-D 保持 `DOING`。支付、退款与分账运营增量完成;下一工程增量补团购与第三方平台运营页面。 ## 2026-08-10 团购与第三方平台运营 - `ENGINEERING_DELTA=YES` - 新增第三方渠道工作区,支持美团、大众点评、抖音、快手的直订记录、待映射队列、核销记录及平台/门店/状态筛选。 - 接入平台配置和门店/房间资源映射;凭据只登记环境引用,读取接口过滤 secret、token、password、private key、API key 和 credential 等敏感设置键。 - 新增管理员 API 与人工验券别名,继续复用服务端订单金额、租户权限、授权门店、幂等键、券码 SHA-256 和脱敏显示边界。 ### 测试证据 - Windows `scripts/dev/windows/test-all.ps1`:63.3 秒退出码 0;后端全测、M08-B/C/D 静态门禁、Vue TypeScript 与生产构建通过;暂存后仓库完整性、敏感信息和空白门禁复核通过。 - WSL 原生临时副本 + MySQL 8.4.10:26.2 秒退出码 0,`up → verify → down → up → verify` 完成,136 条 up、114 条 verify、130 条 down。 - `backend/tests/third-party.test.mjs` 覆盖管理员 API 验券别名与安全配置读取;Vue 生产构建成功。 - 既有 Element Plus chunk 超过 500kB、参考 xjar 超过 100MB 和 WSL npm 7 个 high audit 项仍为非阻塞提示,未执行破坏性自动升级。 ### 变更影响 - 数据库:无迁移、无新增表。 - API:新增 `GET /admin-api/third-party/setup`、`POST /admin-api/group-vouchers/redeem` 和既有人工验券的管理端对称别名;敏感配置不读取返回。 - 后台:新增响应式第三方渠道运营入口,覆盖记录、配置、映射和验券。 - 部署:后端与后台静态产物有变化,未自动部署生产。 - 工程提交:`7b97808`,已推送并验证 `HEAD == origin/main`。 ### 状态 M08-D 保持 `DOING`。团购与第三方平台运营增量完成;下一工程增量补会员与员工用户管理页面。 ## 2026-08-10 会员与员工用户管理 - `ENGINEERING_DELTA=YES` - 新增会员与员工用户工作区;会员支持昵称/手机号/ID、状态筛选,展示现金/赠送余额、券、套餐、订单、消费、充值、注册/登录及最近钱包流水。 - 员工支持姓名/手机号/ID、角色和状态筛选,以及创建、角色/门店授权、资料备注、停启和活动会话重置;权限变更继续即时撤销会话并记录审计。 - 后台员工“全部角色”查询新增受限的 `userType=STAFF` 契约,避免通用用户列表将顾客混入员工运营视图。 ### 测试证据 - Windows `scripts/dev/windows/test-all.ps1`:63.5 秒退出码 0;后端全测、M08-B/C/D 静态门禁、Vue TypeScript 与生产构建通过;暂存后仓库完整性、敏感信息和空白门禁复核通过。 - WSL 原生临时副本 + MySQL 8.4.10:25.9 秒退出码 0,`up → verify → down → up → verify` 完成,136 条 up、114 条 verify、130 条 down。 - `backend/tests/user-management.test.mjs` 新增 STAFF-only 后台列表断言,会员路由回归与 Vue 生产构建通过。 - 既有 Element Plus chunk 超过 500kB、参考 xjar 超过 100MB 和 WSL npm 7 个 high audit 项仍为非阻塞提示。 ### 变更影响 - 数据库:无迁移、无新增表。 - API:`GET /admin-api/users` 新增可选且只允许 `STAFF` 的 `userType` 查询参数;其他会员与员工接口不变。 - 后台:新增响应式会员/员工入口,继续只显示脱敏手机号和 IP。 - 部署:后端与后台静态产物有变化,未自动部署生产。 - 工程提交:`93f06d2`,已推送并验证 `HEAD == origin/main`。 ### 状态 M08-D 保持 `DOING`。会员与员工用户管理增量完成;既有保洁工作台已覆盖计划项,下一工程增量补设备运营页面。