山峡小程序 · 四模块开发清单
用途:明确移动端开发范围、分期节奏与进度。阶段性完成后请把对应项从 [ ] 改为 [x],并更新文首「进度总览」。
权威 UI:mobile-ui/shanxia-mp-*.html + docs/miniprogram-ui-spec-sanqiang.md + Pattern 四页。
附件基线:仅拍照凭证 → OpenSpec zkxw-engineering-standards(ui/api/architecture「小程序拍照凭证上传」)。
更新日期:2026-07-16
进度总览
| 阶段 |
说明 |
状态 |
| P0 基础设施 |
登录、Tab 壳、工作台、我的、上传工具、/api/mini 约定 |
基本完成(见 §2;Pattern 组件随 P1 抽取) |
| P1 CRM |
线索 / 商机 / 客户 / 公海 / 报价 / 合同 |
基本完成(列表/详情已接 /web/crm/*;联调冒烟待做) |
| P2 报销 |
待办、报销/借款申请与审批、我的单据 |
基本完成(已接 /reimburses /advances;联调冒烟待做) |
| P3 地磅 |
仪表盘、计划、地磅单、出入库 |
基本完成(已接 /dashboard /plans /weighing /inventory;联调冒烟待做) |
| P4 运输 |
计划、归档、购买证、运费结算/审批 |
基本完成(已接 /transport/*;联调冒烟待做) |
| P5 收尾 |
联调、合法域名、发版检查、文档回写 |
接口冒烟完成;真机 UI / 域名待做 |
图例:[ ] 未开始 · [~] 进行中 · [x] 已完成 · [-] 本期不做(灰卡/明确排除)
1. 范围边界
1.1 本期要做(Web 一级菜单 → 小程序)
| 模块 |
Web 路径 |
小程序入口 |
Demo |
| CRM 管理 |
/crm |
工作台 → CRM 区块 |
shanxia-mp-crm-demo.html |
| 报销管理 |
/bx |
工作台 → 报销区块 |
shanxia-mp-bx-demo.html |
| 地磅管理 |
/db |
工作台 → 地磅区块 |
shanxia-mp-db-demo.html |
| 运输管理 |
/pl |
工作台 → 运输区块 |
shanxia-mp-pl-demo.html |
1.2 明确不做
| 项 |
说明 |
工作流管理 /workflow |
不单独做一级模块;报销审批走 BX 业务接口 |
系统管理 /system |
租户/菜单/角色等仅 Web |
| Tab「首页」「待办」业务内容 |
Demo 标 Phase 2:壳可占位,本期不开发实质功能 |
| Web 专属配置页 |
如 BX 费用项目/工作流配置、CRM 产品主数据维护等(见各模块灰卡) |
| 小程序文档类附件 |
PDF/Word 等;仅拍照凭证(见 OpenSpec) |
1.3 信息架构(与 Demo 一致)
2. P0 基础设施
目标:四模块可挂载的统一壳 + 鉴权 + 上传 + 列表/详情模式对齐 Pattern。
2.1 工程与壳
2.2 网络与上传
2.3 菜单与权限
3. P1 CRM 管理
Demo 启用菜单 = 本期范围;灰卡 = 本期不做。
| 菜单 |
本期 |
建议能力 |
进度 |
| 线索管理 |
要做 |
列表/筛选 Tab、详情、新增/跟进、分配、转商机 |
[x] 列表/详情/新增/跟进/转客户/无效;分配待 Web |
| 商机管理 |
要做 |
列表、详情、跟进/阶段(看板可二期) |
[x] 列表/详情/跟进;阶段变更二期 |
| 客户管理 |
要做 |
列表、详情、跟进入口 |
[x] |
| 公海池 |
要做 |
列表、领取/分配 |
[x] 列表+领取;分配待 Web 选人 |
| 报价管理 |
要做 |
列表、详情、关键状态操作 |
[x] 列表/详情(审批在 Web) |
| 合同管理 |
要做 |
列表、详情、关键状态(无审批流复杂页可简化) |
[x] 列表/详情(审批在 Web) |
| 产品分类 |
不做 |
Web 主数据 |
[-] |
| 产品管理 |
不做 |
Web 主数据 |
[-] |
| 合同审批 |
不做 |
Demo 灰卡 |
[-] |
| 线索/商机统计、看板、漏斗 |
不做 |
Web 分析页,除非产品加开 |
[-] |
P1 任务拆解
4. P2 报销管理
| 菜单 |
本期 |
建议能力 |
进度 |
| 待办任务 |
要做 |
待审批/我的申请/已办 Tab;通过/驳回 |
[x] |
| 报销申请 |
要做 |
新建/编辑、明细、提交(票据以拍照凭证为主) |
[x] 新建+拍照+草稿/提交 |
| 报销审批 |
要做 |
列表 + 审批动作(可与待办合并入口) |
[x] |
| 借款申请 |
要做 |
备用金申请 |
[x] |
| 借款审批 |
要做 |
备用金审批 |
[x] |
| 我的单据 |
要做 |
我的申请单列表/详情 |
[x] |
| 借款发放 |
不做 |
Demo 灰卡(偏财务后台) |
[-] |
| 全部单据 |
不做 |
Demo 灰卡(总经理 Web) |
[-] |
| 付款记录 |
不做 |
Demo 灰卡 |
[-] |
| 费用项目/工作流配置 |
不做 |
Web 基础配置 |
[-] |
| 支付发放冲抵 |
不做 |
本期不进工作台 |
[-] |
P2 任务拆解
5. P3 地磅管理
| 菜单 |
本期 |
建议能力 |
进度 |
| 仪表盘 |
要做 |
关键统计卡片(只读) |
[x] |
| 地磅计划 |
要做 |
列表、详情、必要办理动作 |
[x] 列表/详情/生成出入库关联 |
| 地磅单管理 |
要做 |
列表、详情、二次过磅等现场动作 |
[x] 二次过磅 + 当天作废 |
| 地磅出入库 |
要做 |
列表、详情 |
[x] |
P3 任务拆解
6. P4 运输管理
| 菜单 |
本期 |
建议能力 |
进度 |
| 运输计划 |
要做 |
列表 Tab、详情、安排运输等 |
[x] 待发运/在途/已完成 + 安排运输 |
| 计划归档 |
要做 |
只读列表/详情 |
[x] |
| 购买证上传 |
要做 |
列表 + 拍照凭证上传(OpenSpec) |
[x] 拍照 + 证书齐备 |
| 运费结算 |
要做 |
列表、详情、提交 |
[x] 结算单/待结算生成 + 提交审批 |
| 运费审批 |
要做 |
列表、审批 |
[x] |
| 财务发放 |
不做 |
Demo 灰卡 |
[-] |
| 车辆充值 |
不做 |
Demo 灰卡(ETC 等) |
[-] |
| 车辆维修 |
不做 |
Demo 灰卡 |
[-] |
| 运输地址库 |
不做 |
Demo 灰卡(主数据) |
[-] |
| 基础信息库其余页 |
不做 |
车辆/承运商/驾押等主数据偏 Web |
[-] |
| 证件提醒 / 尿素等 |
不做 |
未进工作台启用卡 |
[-] |
P4 任务拆解
7. P5 收尾与发版
7.1 四模块冒烟清单(联调时勾选)
账号:具备对应模块权限的 admin / 业务角色;基址见 miniprogram/config/api.js。
接口冒烟执行:2026-07-17,admin / 本机 http://127.0.0.1:8000/api,脚本 miniprogram/scripts/mp_api_smoke.py(结果见 mp_api_smoke_last.json)。
图例:[x] 接口可达且读通;写操作因缺样本/字段校验未闭环的在备注中说明。
| # |
模块 |
路径 |
预期 |
结果 |
| S1 |
公共 |
登录 → current-user |
Token 可用 |
[x] 登录+current-user ok |
| S2 |
CRM |
线索列表 → 详情 → 跟进 |
列表/详情正常 |
[x] 列表+详情 ok;跟进 body 422(字段待对齐) |
| S3 |
CRM |
公海列表/领取 |
列表正常 |
[x] 列表空态 ok(无领取样本) |
| S4 |
报销 |
我的报销 / 新建 |
列表可读 |
[x] my 列表 ok;新建缺 details 字段 422(小程序 payload 待对齐) |
| S5 |
报销 |
待审批列表 |
列表正常 |
[x] 空态 ok(无待审样本) |
| S6 |
地磅 |
仪表盘 + 地磅单列表 |
数字/列表可读 |
[x] stats+列表 ok;无二次过磅样本 |
| S7 |
运输 |
计划列表 / 安排 |
列表正常 |
[x] 列表 ok;安排因证书未齐备业务拒绝(接口可达) |
| S8 |
运输 |
购买证相关计划列表 |
列表正常 |
[x] 列表空态 ok |
| S9 |
运输 |
运费结算 + 用户选项 |
列表/选人接口正常 |
[x] freight 列表 + users/options ok;无待结算 |
| S10 |
运输 |
运费待审批列表 |
列表正常 |
[x] 列表空态 ok |
接口冒烟结论:S1–S10 读路径全部通(0 FAIL)。写路径有 3 处需跟进:① 线索跟进字段;② 报销创建体应用 details 而非 items;③ 安排运输依赖证书齐备业务数据。
7.2 H5 UI 冒烟(Playwright,不改 uni-app 工程)
执行:2026-07-17,H5 http://localhost:5173/,账号 admin / admin123,后端 127.0.0.1:8000。
脚本:独立目录 miniprogram-e2e/smoke.mjs(cd miniprogram-e2e && node smoke.mjs);截图与 JSON 在 miniprogram-e2e/artifacts/。
| # |
路径 |
结果 |
| E1 |
登录 → 工作台四模块可见 |
[x] PASS |
| E2 |
线索管理 |
[x] PASS |
| E3 |
报销申请 |
[x] PASS |
| E4 |
地磅仪表盘 |
[x] PASS |
| E5 |
运输计划 |
[x] PASS |
UI 冒烟结论:E1–E5 全通(0 FAIL)。微信开发者工具 / 真机验收仍见 §7 未勾项。
8. 推荐开发顺序
- P0 壳与工作台(否则业务页无处挂)
- P2 报销 或 P1 CRM(审批/跟进闭环短,易验证上传与列表模式)
- P3 地磅(现场办理,偏读+少量动作)
- P4 运输(计划+运费+购买证,依赖上传基线)
- P5 联调发版
顺序可按业务优先级调整;调整时只改本节与文首总览,子清单保持勾选状态。
9. 进度记录(追加)
| 日期 |
阶段 |
说明 |
| 2026-07-16 |
范围 |
确认仅 CRM / 地磅 / 运输 / 报销四模块;本清单建立 |
| 2026-07-16 |
规范 |
拍照凭证上传写入 OpenSpec engineering-standards |
| 2026-07-16 |
P0 |
TabBar + 工作台/我的/占位页 + upload.js + mp-shell;清单回写 |
| 2026-07-16 |
P1–P4 |
CRM / 报销 / 地磅 / 运输业务页落地并接线工作台 |
| 2026-07-16 |
P4+ |
运费提交审批改为用户选项选人 Sheet;P5 冒烟表写入 §7.1 |
| 2026-07-17 |
P5 |
接口冒烟 S1–S10 读路径全通(脚本 mp_api_smoke.py);写路径 3 处待对齐见 §7.1 |
| 2026-07-17 |
P5 |
H5 Playwright E1–E5 冒烟全通(miniprogram-e2e/smoke.mjs,见 §7.2) |
| 2026-07-17 |
P5 |
按 QA 节奏启动:先全量文字用例(miniprogram-e2e/cases/),脚本验证待用例评审后逐步开展 |