Appearance
四线改造总路线图(Acc · 工程质量 · 个人记账 · Web)
与 release-ops-quickstart.md、miniapp-acc-mobile-write.md、miniapp-bookkeeping-user-scope 配套。
原则:四条线可并行;发版顺序见 release-phase-plan.md(P0 签字未完成前不建议对外发版)。Track 3/4 多数功能代码已 ✅,与 P0 门禁独立。
清单符号:✅ = 已完成(代码已落地);⬜ = 待办。全文对照:doc-code-sync-index.md。
战略优先级(产品定稿)
| 层级 | 范围 | 对应线 | 本阶段做什么 |
|---|---|---|---|
| P0 | 站点 Acc + 发版门禁 | Track 1 + 2 | 在制/结算/库存边界、M3/M4 验收、300+ 行拆、STRICT 签字、E2E 补洞、prerelease |
| P1 | 个人记账 C 端(Phase 2+) | Track 3 | 预算、周期账、分享图等;须遵守 openid、无 siteId |
| P1 | Web 报表口径统一 | Track 4 | 与小程序 reports / 首页指标 同口径(已完成);大弹窗拆分(已完成) |
不做(除非单独立项):记账域套 siteId;小程序生产冲红;为 C 端功能改动 Acc 权限模型。
进度总览
| 线 | 主题 | Phase 0(文档/门禁) | Phase 1(当前迭代) | Phase 2+(P1 扩展) |
|---|---|---|---|---|
| 1 | 站点 Acc | miniapp-wip-scope.md | ✅ 库存导出、大页拆分、M4 参数对齐 | ✅ 经理报表钻取/导出/阈值;⬜ M3/M4/P2 签字 |
| 2 | 发版门禁 | prerelease / CI gates | ✅ E2E 冒烟、时区、文档站导航 | ⬜ §4.2 签字;Secrets 矩阵文档 ✅ |
| 3 | 个人 C 端(常用) | openid 规则 | ✅ 记账筛选/导出/统计/预算/周期账/分享图 | ✅ 日常打卡 P0/P1;⬜ optional personal 微服务 |
| 4 | Web | frontend-structure.md | 已完成:报工弹窗、AccHome composable、大弹窗拆 | 已完成:报表口径对齐 + 经理报表说明 |
Track 1 — 站点 Acc(结算 / 在制 / 库存)
已定边界(勿擅自扩展)
- 生产/报工 冲红、整单冲红:仅 Web +
btn_acc_production_wip_correct - 小程序:开单、登记审核、现场报工、关账、入出库过账与冲红、M4 结算
Phase 1 清单
- ✅ 库存流水
POST /acc/stock-ledger/export-csv+ 小程序stock-ledger导出 - ✅
production-wip-op-add拆分(useProductionWipOpAdd+ProductionWipOpAdd*Fields) - ✅
production-wip-close拆分(useProductionWipClose+ProductionWipClose*组件) - ✅
labor-submission-mine、stock-ledger拆分(见 miniapp-large-page-split.md) - ✅ 结算列表筛选参数与 Web 对齐(代码 + m4-settlement-api-parity.md;业务签字见 M4 手工表)
- ✅
labor-submission-review-detail拆分(useLaborSubmissionReviewDetail+LaborSubmissionReviewDetailFooter) - ⬜ 在制 / M3 / M4 / §4.2 / P2 库存(S1/S2):预发手工表签字(release-signoff-bundle.md §F · acc-stock-staging-checklist.md)
Phase 2+
- ✅ 经理报表站点 Tab 钻取(入/出/生产/记工/结算列表)
- ✅ 记工 Tab 全站快照与 AccHome 对照;趋势 90 天与 Web 一致
- ✅ 经理报表异常提示(待结算过高 Toast 等)
- 可选:移动端冲红 单独立项(须产品 + 权限评审)
Track 2 — 工程质量(E2E、STRICT、发版)
发版一条龙
bash
pnpm run prerelease # check + staging + 月结 SQL
pnpm run check:env-pack # 生产 .env.pack 须含 STRICT
pnpm run test:e2e # Web 冒烟(可选 Secrets)Phase 1 清单
- ✅ 只读
settlement/post、mark-paidAPI 拒绝(e2e/acc-permission-denied-api.spec.ts) - ✅ 只读
/acc/ops路由 →/no-permission(acc-readonly-route-guard.spec.ts) - ✅ 只读
stock-ledger/export-csvAPI 拒绝(btn_acc_stock_ledger_export+acc-stock-ledger-export-readonly.spec.ts) - ✅ 登录用户
bookkeeping/entry/export-csv冒烟(sys-bookkeeping-export.spec.ts) - ✅ CI Prerelease gates:
check:staging+check:env-pack+ 上传 release-signoff-templates(STRICT + M3/M4 合并表) - ✅ Acc 业务日/筛选时区统一(datetime-conventions.md)
- ✅ 文档站
guide/全量侧栏 +/ci/发版签字导航(docs/.vitepress/config.ts) - ⬜ 预发 §4.2 签字表 存档(运维按 strict-signoff-ops-runbook.md 执行并填写)
Phase 2+
- ✅ GitHub Actions Secrets 矩阵文档化(env-pack-strict-and-e2e.md)
- 部分:关键 Acc 链路 API 集成测试(
acc-business-chain-flow.integration.spec.ts;可继续扩开单→报工→结算)
Track 3 — 个人 C 端(含常用)
约束
- 无
siteId;openid/JWT 即可(miniapp-bookkeeping-user-scope) - 记账 / 清单计价 / 日常打卡:网关 不附
X-Site-Id;API 在 Sys(POST /sys/bookkeeping/*、/sys/config-quote/*、/sys/daily-check-in/*)
架构:模块 vs 微服务
- 默认:新能力做 Sys 内模块(与记账并列),见 microservice-split-decision.md
- 可选 Phase 2:记账 + 清单计价 + 打卡 整体 迁至
/api/personal/*(单进程personal,非每功能一服务)
个人记账 — Phase 1 清单(已完成)
- ✅ 大页拆分(home / entry-form / stats / amount-input / 筛选底栏)
- ✅
entry/page支持keyword、kind、occurredAtFrom/To - ✅
entry/export-csv+ 账本详情页导出 - ✅ 周/月/年统计:
POST /sys/bookkeeping/stats/summary服务端聚合(小程序stats.vue已对接)
个人记账 — Phase 2+(已完成)
- ✅
stats-custom默认stats/summary;有分类筛选 时按日期范围分页拉流水 - ✅ 月度支出预算(
mini_book_budgets+ 首页进度条 + 账本设置) - ✅ 周期账、分享图(见 program-full-execution.md)
日常打卡 — P0/P1(已落地)
设计定稿:miniapp-daily-check-in.md
- ✅ 表
mini_daily_check_in_types/mini_daily_check_in_records(zen:push已同步) - ✅ Sys
daily-check-in模块 + 路由 registry - ✅ 小程序:今日 / 明细 / 类型管理 / 周月统计 + 常用三入口;P1 自定义统计 / 热力格 / 分享图
- ✅ 统计:连续天数(按类型)优先,本月总次数次之;一日一类多条
C 端 — 架构 Phase 2+(可选,单独立项)
- ⬜ 五条决策评审通过(microservice-split-decision.md)
- ⬜ 网关
/api/personal/*+PERSONAL_SERVICE_URL+ 部署/Knife4j - ⬜ 迁移 bookkeeping / config-quote / daily-check-in 路径(兼容期可双写或网关别名)
Track 4 — Web 管理端
状态:Phase 1 + Phase 2+ 均已落地(2026-06 核对)。
Phase 1 清单
- ✅
LaborSubmissionReviewDialog→useLaborSubmissionReviewDialog+LaborSubmissionReviewApproveModal - ✅
AccHomeView→composables/acc/useAccHomeSummary.ts - ✅ 报工审核展示 helper →
utils/labor-submission-review-display.ts - ✅ 大弹窗拆分:
GoodsSaveDialog、ProductionWipAddDialog、UserEditDialog(composable + 子组件)
Phase 2+
- ✅ 报表与
AccHome:shared/types/acc-home-summary+acc-home-summary-metrics+ acc-home-metrics-parity.md - ✅ 经理报表说明:miniapp-manager-reports.md
代码对照(验收时可 grep)
| 文档项 | 入口文件 |
|---|---|
| 报工审核弹窗 | frontend/src/composables/acc/useLaborSubmissionReviewDialog.ts · .../dialogs/components/LaborSubmissionReviewApproveModal.vue |
| Acc 首页 | frontend/src/views/acc/AccHomeView.vue · frontend/src/composables/acc/useAccHomeSummary.ts |
| 报工展示 helper | frontend/src/utils/labor-submission-review-display.ts |
| 商品档案弹窗 | frontend/src/views/acc/goods/composables/useGoodsSaveDialog.ts · .../components/GoodsSaveBomSection.vue 等 |
| 在制开单弹窗 | frontend/src/views/acc/production/composables/useProductionWipAddDialog.ts · .../components/ProductionWipAddLaborFields.vue |
| 用户编辑弹窗 | frontend/src/views/sys/users/composables/useUserEditDialog.ts · .../components/UserEditFormBody.vue 等 |
| 指标同口径 | shared/types/acc-home-summary.ts · shared/utils/acc-home-summary-metrics.ts · 单测 backend/src/libs/shared/acc-home-summary-metrics.spec.ts |
执行顺序(定稿)
见 release-phase-plan.md:先 P0(release:p0-preflight + 签字 + zen:push),再 track3-bookkeeping-phase2.md / track1-b-acc-phase2.md / track2-tech-phase2.md。
下一迭代(P0 执行清单)
仅 Track 1 + 2(预发签字、M4 手工表等);Track 3 / Track 4 Phase 1+2 代码已完成,不再阻塞 P0。
| 序 | 项 | 线 | 状态 | 验收 |
|---|---|---|---|---|
| 1 | 预发 §4.2 STRICT 签字 + M3/M4 手工表 | 2 / 1 | 待运维/业务 | strict-signoff-ops-runbook.md · release-signoff-bundle.md |
| — | labor-submission-mine、stock-ledger | 1 | 已完成 | pnpm run check:miniapp |
| — | production-wip-close 拆分 | 1 | 已完成 | — |
| — | 2 | 已完成 | 预发须 db:sync-roles-perms 赋权 | |
| 4 | M4 结算手工表签字(参数已对齐) | 1 | 待业务 | m4-settlement-manual-checklist.md · m4-settlement-api-parity.md |
| — | stats-custom → stats/summary | 3 | 已完成 | — |
P1 可选 / 运维(非 P0 阻塞)
| 主题 | 线 | 状态 | 入口 |
|---|---|---|---|
| personal 微服务 | 3 | ⬜ 可选 | microservice-split-decision.md |
| GitHub E2E Secrets 配齐 | 2 | ⬜ 运维 | env-pack-strict-and-e2e.md |
| Acc 全链路集成测扩写 | 2 | 部分 | acc-business-chain-flow.integration.spec.ts |
建议迭代节奏(历史示例,2026-Q1)
下列四周计划 已执行完毕;当前迭代焦点见上文「下一迭代」⬜ 签字项。
| 周 | Track 1 | Track 2 | Track 3 | Track 4 |
|---|---|---|---|---|
| 1 | ✅ wip-op-add 拆分 | ✅ E2E 库存/记账导出 | ✅ entry 筛选 + 导出 API | ✅ 报工弹窗 composable |
| 2 | ✅ wip-close / stock-ledger 拆 | ⬜ STRICT 预发签字 | ✅ 统计按时间拉取 | ✅ AccHome composable |
| 3 | ⬜ M4 手工验收 | ✅ prerelease 进发布流程 | ✅ ledger-detail 体验 | ✅ GoodsSaveDialog 拆 |
| 4 | 缓冲 / M4 | CI Secrets 试点 | ✅ 预算/周期账 | ✅ 报表口径对齐 |
验收(每迭代末)
bash
pnpm run check
pnpm run check:miniapp # 若动小程序
pnpm run check:staging # 若动权限/registryTrack 2 发版候选额外:
bash
pnpm run prerelease
pnpm run check:env-pack