FL6 完善财务台账与导出审计

这个提交包含在:
2026-05-12 09:33:45 +08:00
父节点 a0dc6fc408
当前提交 f99fbce3d8
共修改 14 个文件,包含 1005 行新增和 18 行删除
@@ -1,6 +1,6 @@
ID,Title,Description,Acceptance,Test_Method,Tools,Dev_Status,Review1_Status,Regression_Status,Files,Dependencies,Notes
FL6-1,财务台账导出合同建档,在 R6 通过后规划财务台账、付款标记增强、附件下载留痕和导出第一版。,"1) 本 CSV 校验通过;2) 不接银行和 ERP 实时付款;3) PDF-only 和重复票据规则保持不变;4) 财务不获得管理员能力。","流程级验证:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-12_01-43-00-r6-finance-ledger-export-v1.csv;人工核对报销发票规约。",python3|manual,DONE,DONE,DONE,issues/2026-05-12_01-43-00-r6-finance-ledger-export-v1.csv,[],涉及导出和敏感字段需权限审计。
FL6-2,财务台账查询,提供报销单号、申请人、部门、金额、审批状态、付款状态、发票状态和更新时间的财务台账查询。,"1) 财务可筛选和分页;2) 普通员工不可看全量台账;3) 付款和发票状态与报销详情一致。","流程级验证:财务登录 -> 按状态和时间筛选台账 -> 普通员工直连 API 被拒绝 -> 与报销详情交叉核对。",node|playwright,TODO,TODO,TODO,server/src/routes/reimbursements.js|client/src/pages/ApOperationsPage.tsx,"[""FL6-1""]",优先复用现有 AP/报销接口,新增接口需保持只读边界。
FL6-3,付款标记审计增强,增强付款备注、付款时间、操作者审计和状态展示。,"1) 付款标记记录操作者和时间;2) 可填写备注;3) 非财务不可付款;4) 重复付款被拒绝或可解释。","流程级验证:财务标记付款 -> 查看审计日志和详情;非财务尝试付款 -> 服务端拒绝;重复付款 -> 可解释结果。",node|playwright,TODO,TODO,TODO,server/src/routes/reimbursements.js|client/src/pages/ReimbursementsPage.tsx,"[""FL6-2""]",不接真实银行付款。
FL6-4,附件下载留痕与导出,财务下载附件和发票时留痕,台账支持财务核对导出。,"1) 下载动作写审计;2) 导出敏感字段按权限裁剪;3) 导出文件不提交仓库;4) 重复票据例外状态可解释。","流程级验证:财务下载附件 -> 审计可查;导出台账 -> 文件字段符合权限;普通员工无全量导出。",node|playwright|manual,TODO,TODO,TODO,server/src/routes/exports*|client/src/pages/ApOperationsPage.tsx,"[""FL6-3""]",导出临时文件不得提交仓库。
FL6-5,财务台账回归部署,完成财务台账增强后执行回归、部署和公网复检。,"1) server/client 验证通过;2) 财务链路 E2E 通过;3) 权限直连检查通过;4) 部署后 live smoke 通过。","流程级验证:server prisma validate 和 node --check;client typecheck/build;财务 Playwright;bash deploy/trialrun/deploy.sh;live smoke readiness。",node|npm|playwright|bash,TODO,TODO,TODO,server|client|deploy/trialrun,"[""FL6-4""]",涉及财务权限必须 reviewer 复核。
FL6-2,财务台账查询,提供报销单号、申请人、部门、金额、审批状态、付款状态、发票状态和更新时间的财务台账查询。,"1) 财务可筛选和分页;2) 普通员工不可看全量台账;3) 付款和发票状态与报销详情一致。","流程级验证:财务登录 -> 按状态和时间筛选台账 -> 普通员工直连 API 被拒绝 -> 与报销详情交叉核对。",node|playwright,DONE,DONE,DONE,server/src/routes/reimbursements.js|client/src/pages/ApOperationsPage.tsx,"[""FL6-1""]",优先复用现有 AP/报销接口,新增接口需保持只读边界。
FL6-3,付款标记审计增强,增强付款备注、付款时间、操作者审计和状态展示。,"1) 付款标记记录操作者和时间;2) 可填写备注;3) 非财务不可付款;4) 重复付款被拒绝或可解释。","流程级验证:财务标记付款 -> 查看审计日志和详情;非财务尝试付款 -> 服务端拒绝;重复付款 -> 可解释结果。",node|playwright,DONE,DONE,DONE,server/src/routes/reimbursements.js|client/src/pages/ReimbursementsPage.tsx,"[""FL6-2""]",不接真实银行付款。
FL6-4,附件下载留痕与导出,财务下载附件和发票时留痕,台账支持财务核对导出。,"1) 下载动作写审计;2) 导出敏感字段按权限裁剪;3) 导出文件不提交仓库;4) 重复票据例外状态可解释。","流程级验证:财务下载附件 -> 审计可查;导出台账 -> 文件字段符合权限;普通员工无全量导出。",node|playwright|manual,DONE,DONE,DONE,server/src/routes/exports*|client/src/pages/ApOperationsPage.tsx,"[""FL6-3""]",导出临时文件不得提交仓库。
FL6-5,财务台账回归部署,完成财务台账增强后执行回归、部署和公网复检。,"1) server/client 验证通过;2) 财务链路 E2E 通过;3) 权限直连检查通过;4) 部署后 live smoke 通过。","流程级验证:server prisma validate 和 node --check;client typecheck/build;财务 Playwright;bash deploy/trialrun/deploy.sh;live smoke readiness。",node|npm|playwright|bash,DONE,DONE,DONE,server|client|deploy/trialrun,"[""FL6-4""]",涉及财务权限必须 reviewer 复核;公网复检报告 artifacts/qa-flow/live-smoke-readiness-20260512-093220。
1 ID Title Description Acceptance Test_Method Tools Dev_Status Review1_Status Regression_Status Files Dependencies Notes
2 FL6-1 财务台账导出合同建档 在 R6 通过后规划财务台账、付款标记增强、附件下载留痕和导出第一版。 1) 本 CSV 校验通过;2) 不接银行和 ERP 实时付款;3) PDF-only 和重复票据规则保持不变;4) 财务不获得管理员能力。 流程级验证:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-12_01-43-00-r6-finance-ledger-export-v1.csv;人工核对报销发票规约。 python3|manual DONE DONE DONE issues/2026-05-12_01-43-00-r6-finance-ledger-export-v1.csv [] 涉及导出和敏感字段需权限审计。
3 FL6-2 财务台账查询 提供报销单号、申请人、部门、金额、审批状态、付款状态、发票状态和更新时间的财务台账查询。 1) 财务可筛选和分页;2) 普通员工不可看全量台账;3) 付款和发票状态与报销详情一致。 流程级验证:财务登录 -> 按状态和时间筛选台账 -> 普通员工直连 API 被拒绝 -> 与报销详情交叉核对。 node|playwright TODO DONE TODO DONE TODO DONE server/src/routes/reimbursements.js|client/src/pages/ApOperationsPage.tsx ["FL6-1"] 优先复用现有 AP/报销接口,新增接口需保持只读边界。
4 FL6-3 付款标记审计增强 增强付款备注、付款时间、操作者审计和状态展示。 1) 付款标记记录操作者和时间;2) 可填写备注;3) 非财务不可付款;4) 重复付款被拒绝或可解释。 流程级验证:财务标记付款 -> 查看审计日志和详情;非财务尝试付款 -> 服务端拒绝;重复付款 -> 可解释结果。 node|playwright TODO DONE TODO DONE TODO DONE server/src/routes/reimbursements.js|client/src/pages/ReimbursementsPage.tsx ["FL6-2"] 不接真实银行付款。
5 FL6-4 附件下载留痕与导出 财务下载附件和发票时留痕,台账支持财务核对导出。 1) 下载动作写审计;2) 导出敏感字段按权限裁剪;3) 导出文件不提交仓库;4) 重复票据例外状态可解释。 流程级验证:财务下载附件 -> 审计可查;导出台账 -> 文件字段符合权限;普通员工无全量导出。 node|playwright|manual TODO DONE TODO DONE TODO DONE server/src/routes/exports*|client/src/pages/ApOperationsPage.tsx ["FL6-3"] 导出临时文件不得提交仓库。
6 FL6-5 财务台账回归部署 完成财务台账增强后执行回归、部署和公网复检。 1) server/client 验证通过;2) 财务链路 E2E 通过;3) 权限直连检查通过;4) 部署后 live smoke 通过。 流程级验证:server prisma validate 和 node --check;client typecheck/build;财务 Playwright;bash deploy/trialrun/deploy.sh;live smoke readiness。 node|npm|playwright|bash TODO DONE TODO DONE TODO DONE server|client|deploy/trialrun ["FL6-4"] 涉及财务权限必须 reviewer 复核。 涉及财务权限必须 reviewer 复核;公网复检报告 artifacts/qa-flow/live-smoke-readiness-20260512-093220。