diff --git a/README.md b/README.md index 98ba457..0be7103 100644 --- a/README.md +++ b/README.md @@ -121,8 +121,8 @@ WSL 已验证:EMQX `5.8.9`、MQTTX CLI `1.13.0`、EMQX 服务 `active (running 项目已开发部分模块。具体完成度不得从 README 猜测,必须以现有代码、测试、数据库迁移、Git 历史以及 `docs/current-baseline.md`、`docs/module-status.md`、`docs/feature-status.md` 为准。 - 当前执行游标:`M08-D`(DOING);`M08-C` 的可独立工程内容已完成,真实团购商家授权、微信和硬件现场验收保持 `BLOCKED_EXTERNAL`。 -- 最近工程提交:`7b97808` / `M08-D团购与第三方平台运营`,Vue 后台已接入直订/核销记录、异常筛选、平台环境凭据引用、安全配置读取、资源映射和 API/人工验券。 -- 下一工程目标:继续 M08-D,补后台会员与员工用户管理页面。 +- 最近工程提交:`93f06d2` / `M08-D会员与员工用户管理`,Vue 后台已接入会员余额/权益/订单/充值/流水详情,以及员工创建、角色/门店授权、停启、备注和会话重置。 +- 下一工程目标:继续 M08-D;既有保洁工作台已覆盖计划项,补后台设备运营页面。 ## 版本递进 diff --git a/docs/api-changelog/2026-08-10-M08-D-admin-overview.md b/docs/api-changelog/2026-08-10-M08-D-admin-overview.md index e3ea7a3..55f41ab 100644 --- a/docs/api-changelog/2026-08-10-M08-D-admin-overview.md +++ b/docs/api-changelog/2026-08-10-M08-D-admin-overview.md @@ -38,3 +38,12 @@ | GET | `/admin-api/third-party/setup` | 新增管理员安全读取接口,返回平台模式、环境凭据引用是否配置、过滤后的非敏感设置和资源映射;要求租户管理或平台管理员权限。 | | PUT | `/admin-api/third-party/config`、`/admin-api/third-party/mappings` | Vue 后台接入既有配置与映射写接口,继续验证租户资源和环境凭据引用。 | | POST | `/admin-api/group-vouchers/redeem`、`/admin-api/group-vouchers/redeem-manual` | 补齐管理员后台 API/人工验券入口,与小程序管理端共享金额、权限、幂等和券码脱敏逻辑。 | + +## 会员与员工用户管理增量 + +| 方法 | 路径 | 变更 | +|---|---|---| +| GET | `/admin-api/members`、`/admin-api/members/:id` | Vue 后台接入既有会员聚合与详情接口,读取余额、权益、订单、充值和最近流水,权限范围不变。 | +| GET | `/admin-api/users?userType=STAFF` | 新增可选 STAFF-only 过滤参数;只接受固定枚举 `STAFF`,确保全部角色员工视图不混入顾客。 | +| POST/PATCH | `/admin-api/staff`、`/admin-api/users/:id` | Vue 后台接入既有员工创建、资料、角色、门店和状态写接口,继续撤销权限变化后的会话并写审计。 | +| POST | `/admin-api/users/:id/reset-sessions` | Vue 后台接入既有会话重置入口。 | diff --git a/docs/current-baseline.md b/docs/current-baseline.md index d6487a1..2822131 100644 --- a/docs/current-baseline.md +++ b/docs/current-baseline.md @@ -2,7 +2,7 @@ > V5.0 首次核验日期:2026-06-16 > audited_commit: `4ae9296` -> next_engineering_target: 继续 M08-D Vue 平台后台,补会员与员工用户管理页面 +> next_engineering_target: 继续 M08-D Vue 平台后台,补设备运营页面 > 事实源:当前工作区、Git 历史、状态文档、Windows/WSL 检查脚本。 ## 总体结论 @@ -12,7 +12,7 @@ | 总纲版本 | V5.4 已成为当前权威总纲,旧版已保留为历史备份 | 根目录存在 `V5.4.md` 及旧版总纲 | 可继续按 V5.4 的执行游标开发 | | Git 远端 | `origin=ssh://git@git.txyundm.cn:2222/panda/qipai.git`,分支 `main` | `git rev-list main...origin/main` 为 `0 0` | 本地与远端同步 | | 正式后端 | 已完成 Fastify、迁移兼容、outbox/worker、多应用租户、微信身份/会话,以及六角色 RBAC 和门店范围 | `backend/src/auth/**`、`database/migrations/2026061805_m02c_rbac.*.sql`、`backend/tests/**` | M01、M02-A/B/C DONE;MySQL 已验证 capability 和跨租户门店授权拒绝;下一阶段 M02-D | -| 后台管理端 | 已建立 Vue3 + Vite + TypeScript + Element Plus 工程,接入 M08-B 保洁运营工作台,并新增 M08-D 授权门店运营总览、门店/房间、订单、资金和第三方渠道运营工作区;渠道页支持直订/核销记录、平台环境凭据引用、安全设置读取、资源映射和 API/人工验券 | `admin/src/App.vue`、`admin/src/components/OperationsOverviewPanel.vue`、`admin/src/components/StoresRoomsPanel.vue`、`admin/src/components/OrdersPanel.vue`、`admin/src/components/PaymentsPanel.vue`、`admin/src/components/ThirdPartyPanel.vue`、`admin/src/components/CleaningTasksPanel.vue`、`admin/src/components/CleaningSettlementsPanel.vue`、`admin/src/components/CleaningStatisticsPanel.vue`、`admin/src/components/CleanersPanel.vue`、`admin/src/components/CleaningFieldHandoffPanel.vue`、`scripts/check-admin-m08-b.mjs`、`scripts/check-admin-m08-d.mjs` | M08-D 保持 DOING;运营总览、门店房间、订单、资金、第三方渠道和保洁工作台可切换,读写继续由后端校验权限并写审计;下一增量补会员与员工用户管理页面 | +| 后台管理端 | 已建立 Vue3 + Vite + TypeScript + Element Plus 工程,接入 M08-B 保洁运营工作台,并新增 M08-D 授权门店运营总览、门店/房间、订单、资金、第三方渠道和会员/员工用户工作区;会员页展示余额权益与流水,员工页支持角色/门店授权、停启和会话重置 | `admin/src/App.vue`、`admin/src/components/OperationsOverviewPanel.vue`、`admin/src/components/StoresRoomsPanel.vue`、`admin/src/components/OrdersPanel.vue`、`admin/src/components/PaymentsPanel.vue`、`admin/src/components/ThirdPartyPanel.vue`、`admin/src/components/MembersStaffPanel.vue`、`admin/src/components/CleaningTasksPanel.vue`、`admin/src/components/CleaningSettlementsPanel.vue`、`admin/src/components/CleaningStatisticsPanel.vue`、`admin/src/components/CleanersPanel.vue`、`admin/src/components/CleaningFieldHandoffPanel.vue`、`scripts/check-admin-m08-b.mjs`、`scripts/check-admin-m08-d.mjs` | M08-D 保持 DOING;运营总览、门店房间、订单、资金、第三方渠道、会员员工和保洁工作台可切换,读写继续由后端校验权限并写审计;下一增量补设备运营页面 | | 微信小程序 | 已纳管微信原生模板,并完成顾客端订单、充值、权益明细、下单抵扣主体链路、保洁任务端照片上传/补做主体链路,以及管理员门店/房态/订单/代下单/验券/会员/员工/保洁/设备/经营统计 | `miniapp/pages/index`、`miniapp/pages/store/detail`、`miniapp/pages/room/detail`、`miniapp/pages/orders/*`、`miniapp/pages/recharge/*`、`miniapp/pages/profile/*`、`miniapp/pages/cleaner/*`、`miniapp/pages/manager/*`、`miniapp/utils/api.js`、`scripts/check-miniapp-m08-a.mjs`、`scripts/check-miniapp-m08-c.mjs` | M08 PARTIAL;M08-A 顾客端工程闭环按外部阻塞旁路;M08-B 可独立工程内容已完成;M08-C 可独立工程内容已完成并通过 Windows 与 MySQL 模块回归,游标进入 M08-D;真实团购、微信和硬件现场验收保持外部阻塞 | | 数据库迁移 | 已新增 M01-B 核心 schema up/down/verify SQL、最小脱敏 seed、旧库结构 fixture、迁移计划/执行 CLI、验证结果数量门禁和 MySQL 8 集成测试 | `database/migrations/2026061601_m01b_core_schema.*.sql`、`database/seeds/2026061601_m01b_minimal_seed.sql`、`database/fixtures/2026061801_m01b_legacy_schema.sql`、`backend/src/db/migration-runner.ts`、`backend/tests/mysql-migration-roundtrip.test.mjs` | M01-B DONE;WSL MySQL 8.4.9 已验证 8 条旧库 fixture、11 条 up、3 条 verify、10 条 down,并验证租户隔离和旧金额整数分转换;不导入真实旧数据 | | M00 部署脚本 | 已有菜单、状态、HTTPS、Certbot、EMQX、备份检查模板 | `setup.sh`、`scripts/setup/`、`deploy/` | PARTIAL,生产未执行 | @@ -35,6 +35,6 @@ ## 下一步 -1. 继续 M08-D:在已完成运营总览、门店/房间、订单、资金、第三方渠道和保洁工作台导航基础上,补会员与员工用户管理页面。 +1. 继续 M08-D:既有保洁工作台已覆盖计划项,在已完成的运营模块基础上补设备运营页面。 2. 继续复用 M02 权限、M03 门店、M04 订单、M05 支付/团购、M06 设备和 M07 会员能力,不重复初始化后台工程。 3. M06-G 真实硬件联调仍等待生产 MQTT 账号/ACL、DeviceID 和现场实物配线。 diff --git a/docs/db-changelog/2026-08-10-M08-D-admin-overview.md b/docs/db-changelog/2026-08-10-M08-D-admin-overview.md index aa91c38..6e69fcd 100644 --- a/docs/db-changelog/2026-08-10-M08-D-admin-overview.md +++ b/docs/db-changelog/2026-08-10-M08-D-admin-overview.md @@ -8,3 +8,4 @@ - 订单运营增量无 schema 变化;后台 GET 别名复用现有订单、支付摘要和状态流水查询,写操作继续使用既有订单状态历史、调整记录与审计表。 - 资金运营增量无 schema 变化;Vue 后台复用现有收款账户、分账接收方/策略/记录、退款和对账表,敏感值继续只保存哈希、脱敏值或环境引用。 - 团购与第三方平台运营增量无 schema 变化;Vue 后台复用 `qipai_third_party_configs`、`qipai_third_party_mappings`、直订和核销记录表。安全读取只投影环境凭据引用及过滤后的非敏感设置,券码继续只保留哈希和掩码。 +- 会员与员工用户管理增量无 schema 变化;会员聚合继续读取用户、钱包、权益、充值、订单和流水表,员工写操作继续复用角色、门店范围、会话和审计表。新增 `userType=STAFF` 仅增加参数化查询过滤,不改变索引或数据模型。 diff --git a/docs/devlogs/2026-08-10-M08-D-Vue平台后台.md b/docs/devlogs/2026-08-10-M08-D-Vue平台后台.md index efa30f9..56e0c68 100644 --- a/docs/devlogs/2026-08-10-M08-D-Vue平台后台.md +++ b/docs/devlogs/2026-08-10-M08-D-Vue平台后台.md @@ -132,3 +132,29 @@ M08-D 保持 `DOING`。支付、退款与分账运营增量完成;下一工程 ### 状态 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`。会员与员工用户管理增量完成;既有保洁工作台已覆盖计划项,下一工程增量补设备运营页面。 diff --git a/docs/feature-status.md b/docs/feature-status.md index 220c7ef..514882e 100644 --- a/docs/feature-status.md +++ b/docs/feature-status.md @@ -24,6 +24,8 @@ > 2026-08-10 M08-D 增量:工程提交 `7b97808` 为 `GRP-002`、`GRP-003` 建立 Vue 后台团购与第三方渠道工作区;直订/核销记录、异常筛选、平台配置、环境凭据引用、服务端敏感设置过滤、门店/房间映射,以及 API/人工验券均复用既有租户权限、券码哈希脱敏和幂等边界。Windows 全量、Vue 生产构建与 WSL MySQL 8.4.10 往返通过,M08-D 继续会员与员工用户管理。 +> 2026-08-10 M08-D 增量:工程提交 `93f06d2` 为 `MEM-001`、`STAFF-001`、`BKG-002` 建立 Vue 后台会员与员工用户工作区;会员聚合余额、权益、订单、充值与流水沿用租户/授权门店范围,员工列表严格限定 STAFF 类型,并接入创建、角色/门店授权、停启、备注和会话重置。Windows 全量、Vue 生产构建与 WSL MySQL 8.4.10 往返通过;既有保洁工作台已覆盖计划项,M08-D 继续设备运营。 + | ID | 功能 | 模块子阶段 | 状态 | 最近提交 | 测试/验收证据 | 阻塞原因 | 下一步 | |---|---|---|---|---|---|---|---| | ENV-001 | 固定 Windows 工作区 | M00-A/M00-B | DONE | 远端 HEAD | 已确认 `D:\qipai`,Git 根、main 分支、固定 origin 和 push 校验通过。 | - | 后续每模块继续复检。 | @@ -48,8 +50,8 @@ | CLN-002 | 保洁任务大厅 | M08-B/M09 | PARTIAL | `96c5fa4` | 新增 `qipai_cleaning_tasks`、`qipai_cleaning_task_events`、`GET /app-api/cleaning/tasks/hall`、`GET /app-api/cleaning/tasks/mine`、接单、开始、照片上传、提交验收、驳回补做接口;订单 `FINISHED` 时同事务幂等创建 `WAITING` 保洁任务;管理侧已支持任务查询、按状态/门店/负责人或协作者筛选、任务详情、照片预览、任务事件流水、任务详情协作分账、指派、验收、驳回、免清洁、批量验收、批量驳回、批量免清洁、超时回收、协作者查看/添加/移除、待结算候选筛选与后台预览/导出、正式结算单生成/确认、发放成功标记、发放失败记录、微信转账发放、转账预检、主动同步、批量同步、微信通知回调、结算单详情、结算详情导出、结算转账状态筛选、微信确认参数展示与导出、管理统计、每日趋势、统计按保洁员筛选和保洁员资料管理;小程序 `pages/cleaner/tasks` 已调用真实 app-api 并支持相机/相册上传;后台 `admin/` 已提供任务筛选、当前任务列表导出、单任务详情导出、单任务流水导出、单任务成员导出、待验收任务多选批量验收/驳回、可免清洁任务多选批量标记、保洁员选择器指派、验收、驳回、免清洁、超时回收、任务成员协作管理、任务详情操作流水和协作分账、结算详情、结算详情导出、待结算候选预览导出、结算列表导出、结算批量同步微信状态、转账状态筛选、微信确认参数展示与导出、统计明细、每日趋势、保洁员绩效排行、保洁员端统计看板、统计保洁员筛选、保洁员资料、待补资料导出、手机号维护、微信绑定状态、结算微信转账预检资料展示导出和转账前自动拦截界面、运营待处理快捷入口、运营待处理导出、真实商户/微信/转账/硬件现场联调清单、联调检查项搜索、联调筛选结果导出与筛选清除、联调状态筛选、联调负责人筛选、联调负责人看板、联调执行阶段看板、联调期限记录、联调逾期清单、联调批量标记、联调阻断摘要复制、联调场次信息记录、联调 JSON 快照导入导出、联调分类进度、联调验收结论复制、联调更新时间、联调证据记录、待补证据清单、联调交接报告、联调风险清单导出、联调归档包导出、收口签署字段和收口归档门禁。 | 真实商户现场执行和更完整管理界面仍待继续。 | 继续 M08-B,补更完整保洁运营管理界面。 | | CLN-003 | 保洁统计 | M08-B/M09 | PARTIAL | `642659c` | 新增 `GET /app-api/cleaning/stats`,返回当前保洁员负责人/协作者任务状态计数、任务总数、完成数、驳回数、完成率、待结算金额和已结算金额,小程序展示已抢、进行、待验、完成、任务总数、完成率、驳回、待结算和已结算金额;管理侧新增 `GET /admin-api/cleaning/statistics`,按租户、门店范围、日期、门店和保洁员筛选返回状态分布、门店明细、免清洁统计、结算口径、成员分账排行和每日趋势,保洁员筛选同时覆盖负责人/协作者任务口径、结算单口径和每日已发放金额;后台首屏汇总改为使用管理侧统计接口,统计页支持今日、近7天、本月快捷周期、每日趋势条形展示、免清洁汇总/门店/趋势展示和可搜索保洁员筛选,任务/结算/统计列表支持门店和保洁员筛选以辅助定位统计异常,并可导出当前筛选条件下的汇总、任务状态、结算口径、每日趋势、门店明细、免清洁数量和成员分账 CSV。 | 真实商户现场联调和更完整管理界面待继续。 | M08-B/M09-C 补更完整管理界面。 | | CLN-005 | 保洁驳回/免清洁 | M08-B/M09 | PARTIAL | `eb838f5` | 已支持管理侧驳回、批量驳回和保洁员驳回补做;已新增 `POST /admin-api/cleaning/tasks/:taskId/exempt`,后台任务列表提供免清洁按钮、批量免清洁和 `EXEMPT` 筛选,仓储将可处理任务置为 `EXEMPT`、奖励归零并移除未结算协作者;待结算候选继续只取 `COMPLETED` 且未结算任务,免清洁任务不进入结算;管理统计 summary、门店明细、每日趋势和统计导出均新增免清洁数量,便于核对不结算口径。 | 真实商户现场执行仍待继续。 | 继续 M08-B/M09,补现场验收记录和更完整运营管理界面。 | -| STAFF-001 | 员工账号 | M02-D/M08 | PARTIAL | `5a300a8` | 已实现创建员工、分配角色/门店、禁用、备注、重置会话和审计;WSL MySQL 实测权限变化撤销活动会话。 | 后台与管理员小程序页面尚未实现。 | M08 接入管理界面。 | -| BKG-002 | 后台用户管理 | M02-D/M08 | PARTIAL | `5a300a8` | 已实现分页筛选 API、注册/登录时间、状态、角色、门店范围以及手机号/IP 脱敏。 | Vue3 后台页面尚未实现。 | M08 实现响应式用户管理页面。 | +| STAFF-001 | 员工账号 | M02-D/M08 | PARTIAL | `93f06d2` | 已实现创建员工、分配角色/门店、禁用、备注、重置会话和审计;管理员小程序已展示员工概况,Vue 后台可按角色/状态搜索并完成完整生命周期管理,权限变化即时撤销活动会话。 | 真实员工微信绑定和生产账号生命周期验收待补。 | M10 以真实员工账号验证绑定、门店切换、禁用和重新登录。 | +| BKG-002 | 后台用户管理 | M02-D/M08 | PARTIAL | `93f06d2` | 已实现分页筛选 API、注册/登录时间、状态、角色、门店范围以及手机号/IP 脱敏;Vue 后台新增会员与 STAFF 用户分栏,员工全部角色查询强制 `userType=STAFF`,避免混入顾客。 | 尚缺平台级跨租户用户视图和真实生产数据验收。 | M08-D 后续保持租户隔离;M10 补生产账号验收。 | | TEN-001 | 多门店支持 | M02/M03 | PARTIAL | `15139b3` | 门店 CRUD 与门店管理员数据范围已实现;跨门店写操作在 Windows 和 WSL MySQL 实测被拒绝。 | 地图选店、前端切换与完整订单数据范围待后续阶段。 | M03-C 接入地图选店,M04 起业务资源继承门店范围。 | | STORE-001 | 门店运营配置 | M03-A/M08 | PARTIAL | `1ca783e` | 已实现地址、经纬度、营业状态、每周营业时间、时区、客服电话、Wi-Fi、通知地址和排序;Vue 后台支持授权范围内门店筛选、详情、新增、编辑和归档,列表只返回 Wi-Fi 是否已配置,编辑留空不会清除原密码。 | 通宵场、延时关灯和清洁策略仍需与订单/设备联动补齐。 | M08-D 后续页面继续复用门店选择;M10 做生产配置验收。 | | ROOM-001 | 房间配置 | M03-A/M04/M08 | PARTIAL | `1ca783e` | 已实现房型、整数分价格、工作日/节假日/通宵/全天价、最低消费、押金、最低时长、提前规则、禁用时段、标签、图片和软删除;Vue 后台支持筛选、新增、完整编辑、配置启停、运营房态、停用时段和归档。 | 节假日日历与真实运营价格复算仍需生产验收。 | M08-D 订单页复用房间信息;M10 做生产数据验收。 | @@ -63,7 +65,7 @@ | WAL-002 | 门店独立会员余额 | M07-A | DONE | `63711ad` | 已建立租户/门店余额范围策略、现金/赠送双余额账户和不可变流水;充值、赠送、消费、退款、人工调整均预留 entry type;消费按赠送后现金扣款,业务号幂等,余额不足拒绝;Windows 全量后端回归通过。 | - | M07-D 聚合会员余额和权益状态。 | | WAL-003 | 余额账单 | M07-A/M08 | PARTIAL | `7446852` | 账单底表已包含业务类型、业务号、现金/赠送变动、变动后余额、操作人、trace 和 metadata;M07-B 充值成功后写入真实充值流水;M08-A 个人中心已展示最近钱包账单。 | 完整分页账单页面待继续;优惠券/套餐不直接写钱包流水。 | M08-A 增加分页账单或权益明细入口。 | | WAL-004 | 优惠券和套餐权益 | M07-C/M08 | PARTIAL | `4701674` | 已建立优惠券模板、持券、套餐计划、持有和权益核销流水;支持满减券、时长券、适用门店/房型/房间/星期/节假日、套餐剩余时长/金额,以及订单冻结、确认核销、退回和重复请求幂等;M08-A 个人中心已展示可用/冻结券和套餐汇总,并新增本人优惠券/套餐明细页;下单预占可通过可视化选择器冻结优惠券/套餐并重算订单金额,时长券可按服务端单价折算抵扣,支付成功确认核销,取消订单释放冻结权益。 | 发放/购买入口和真机支付验收待补。 | M09 接入后台发放/购买和管理入口;M08-A 继续真机验收。 | -| MEM-001 | 会员管理 | M07-D/M08 | PARTIAL | `7446852` | 已实现后台会员聚合查询服务和 `/admin-api/members`、`/admin-api/members/:id`;新增顾客端 `/app-api/profile` 和小程序个人中心,可查看注册/最近登录、订单数、消费额、余额、充值、优惠券、套餐和最近钱包流水,手机号脱敏,租户/门店范围及本人读取通过测试。 | 管理员赠券、余额人工调整、禁用、备注和后台前端页面需在 M09/M08 管理端接入并复用既有审计能力。 | M08-A 继续补顾客端权益明细;M09 接入后台会员管理页面。 | +| MEM-001 | 会员管理 | M07-D/M08 | PARTIAL | `93f06d2` | 已实现后台会员聚合查询服务和顾客个人中心;Vue 后台可筛选会员并查看注册/登录、订单、消费、现金/赠送余额、充值、优惠券、套餐和最近钱包流水,手机号脱敏,租户/门店范围通过服务端校验。 | 管理员赠券、余额人工调整、禁用和备注仍需建立独立审批与审计写契约。 | 后续以不可篡改审批/审计边界补会员人工写操作;M10 做生产数据复算。 | | GRP-001 | 团购券兑换 | M05-C | PARTIAL | `cda640b` | 已实现美团/点评、抖音、快手统一适配器,支持顾客粘贴/扫码值、管理员人工核销、Mock/API 核销、clientRequestId 幂等和券码 SHA-256 存储;重复券不能再次记账,WSL MySQL 8.4.9 实测通过。 | 缺各平台商家 API 授权,未执行真实厂商核销。 | 取得授权后配置 API endpoint/token 并执行真实验券。 | | GRP-002 | 美团直订 | M05-C | PARTIAL | `7b97808` | 已实现 HMAC 回调、事件幂等、外部门店/房间映射、未映射人工队列、顾客认领和团购支付订单生成;映射成功订单可进入 PAID。Vue 后台可按平台/门店/状态查看直订队列、维护同租户资源映射,并以安全读取接口查看过滤后的配置。 | 缺美团开放平台授权和真实回调协议确认。 | 取得授权后按厂商协议实现专用签名适配并联调。 | | GRP-003 | 管理员验券 | M05-C/M08 | PARTIAL | `7b97808` | 已提供管理员小程序与 Vue 后台扫码/手输券码、在线核销、显式人工确认、待支付订单选择和脱敏核销记录;金额由服务端订单未付金额推导,写权限叠加授权门店,记录保留操作人/门店/平台结果,券码仅存 SHA-256 和掩码;后台凭据只接受环境引用,敏感设置键不从读取接口返回。 | 缺美团/抖音/快手真实商家 API 授权,未执行厂商真实核销。 | 取得授权后配置 API 模式并执行真实验券。 | diff --git a/docs/module-status.md b/docs/module-status.md index 6145ff9..a21e0d9 100644 --- a/docs/module-status.md +++ b/docs/module-status.md @@ -7,11 +7,11 @@ execution_cursor: stage_status: DOING last_completed_stage: M08-C next_stage: M08-D - last_engineering_commit: `7b97808` + last_engineering_commit: `93f06d2` last_push_verified: true base_branch: main blocked_reason: "M08-A 真机合法域名、真实微信支付和实物开门验证缺微信后台/商户/硬件现场条件;M08-B 可独立工程内容已完成,真实商户凭据、微信后台配置、生产小额转账和实物硬件结果保持 BLOCKED_EXTERNAL;M08-C 可独立工程内容已完成,真实美团/抖音/快手商家授权与真机验券保持 BLOCKED_EXTERNAL,已按规则旁路进入 M08-D。M06-G 真实硬件联调仍缺生产 MQTT 账号/ACL、DeviceID、控制箱、门锁、插座和现场配线。" - updated_at: 2026-08-10T12:10:43+08:00 + updated_at: 2026-08-10T12:19:35+08:00 ``` | 模块 | 状态 | 最近提交 | 最近开发日志 | 备注 | @@ -24,7 +24,7 @@ execution_cursor: | M05 会员、余额、套餐、优惠券 | PARTIAL | `1680d73` | docs/devlogs/2026-06-22-M05-D-分账与收款配置.md | M05-A/B/C/D 工程闭环已完成:统一支付、微信支付退款、团购直订、门店收款账户、分账接收方、比例策略、授权门禁、幂等分账和对账查询均通过 Windows 与 WSL MySQL 回归;真实微信/团购/分账权限未提供,模块保持 PARTIAL/BLOCKED_EXTERNAL。 | | M06 设备、MQTT 与真实硬件联动 | PARTIAL | `d01f771` | docs/devlogs/2026-06-24-M06-G-真实硬件联调.md | M06-A 至 F 已完成 MQTT、拓扑、协议幂等、控制箱、Sub-1G 门锁、智慧插座和订单自动联动任务;M06-G 已补真实硬件烟测运行器,缺生产 MQTT 账号/ACL、DeviceID 和实物配线,保持 BLOCKED_EXTERNAL。 | | M07 会员、余额、充值、优惠券和套餐营销 | DONE | `ed0d455` | docs/devlogs/2026-06-24-M07-D-会员管理.md | M07-A 已完成现金/赠送双余额账本;M07-B 已完成充值优惠;M07-C 已完成优惠券/套餐权益底表和冻结、确认、退回的可靠补偿核销服务;M07-D 已完成会员画像、订单、消费、余额、充值、优惠券和套餐聚合查询。 | -| M08 微信原生小程序完整业务 | PARTIAL | `7b97808` | docs/devlogs/2026-08-10-M08-D-Vue平台后台.md | M08-A 顾客端、M08-B 保洁端和 M08-C 管理员/员工端的可独立工程内容已完成,真实微信、团购和硬件现场验收按 BLOCKED_EXTERNAL 旁路。M08-D 已建立 Vue 运营总览、保洁、门店/房间、订单、资金和第三方渠道运营;支持直订/核销记录、平台环境凭据引用、安全设置读取、资源映射和管理员 API/人工验券,继续会员与员工用户管理。 | +| M08 微信原生小程序完整业务 | PARTIAL | `93f06d2` | docs/devlogs/2026-08-10-M08-D-Vue平台后台.md | M08-A 顾客端、M08-B 保洁端和 M08-C 管理员/员工端的可独立工程内容已完成,真实微信、团购和硬件现场验收按 BLOCKED_EXTERNAL 旁路。M08-D 已建立 Vue 运营总览、保洁、门店/房间、订单、资金、第三方渠道及会员/员工运营;会员页展示余额权益与流水,员工页支持角色/门店授权、停启和会话重置,继续设备运营。 | | M09 后台管理端完整业务 | TODO | - | - | - | | M10 部署、域名、验收和运维闭环 | TODO | - | - | - |