Files
Neo-ZQYY/docs/audit/changes/2026-03-25__task-detail-service-records-6-improvements.md
Neo 14a12342b5 chore(audit): 补追 96 份未入仓审计孤本 — 覆盖 2026-02-26 ~ 2026-04-08
这些审计记录原本堆积在 docs/audit/changes/changes/ 嵌套误产物目录下(由开发机迁移
79d3c2e 前后的不明批量操作产生)。由于同期 .gitignore 屏蔽了 docs/audit/ 全目录,
它们从未入过 git 任何分支 history。删除即永久丢失。

按 docs/specs/audit-gap-recovery/tasks.md 阶段 1 执行,将全部 96 份 D 类孤本
(主目录无同名、git history 亦无记录)复制到 docs/audit/changes/ 主目录入仓。

涵盖主题: P1-P18 全栈集成 / 多模块累积变更 / ETL bug 修复 / 业务日切 /
   召回与任务引擎改造 / 租户管理与审批 / 董事会财务 / 客户与助教详情 /
   DDL 基线合并 / Kiro 到 Claude Code 迁移

阶段 2(B 类内容漂移 1 份)和阶段 4(嵌套目录删除)独立推进。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 06:35:42 +08:00

3.0 KiB
Raw Blame History

变更审计记录Change Audit Record

  • 日期/时间Asia/Shanghai2026-03-25 22:30:00
  • Prompt-IDtask-detail-svc-records-6
  • 原始原因Prompt60天内服务记录改台桌显示名称、时长xx.xh格式、酒水商品明细、预估规则、电话隐藏格式、AI文案字段
  • 直接原因任务详情页服务记录区域需要展示更丰富的信息台桌名、酒水明细、助教到手收入并统一格式规范时长h后缀、电话脱敏、预估标记

变更范围Changed

  • 后端 FDW 查询:get_service_records_for_task() SQL 重写,新增 3 个 LEFT JOINdim_table、settlement_head、store_goods_sale LATERAL 聚合)
  • 后端任务详情:get_task_detail() 新增 60 天统计窗口total_hours_60d / total_income_60d / count_60d、预估规则当月且 day ≤ 5
  • 前端 WXS新增 maskPhone() 函数、hoursH() 已有
  • 前端 WXMLtask-detail 页电话脱敏、AI 文案动态绑定、统计区 hoursH 格式service-record-card 组件 hoursH 格式 + drinks 字段展示
  • 收入口径:从 ledger_amount 改为 assistant_pd_money + assistant_cx_money(助教到手,符合 feiqiu-data-rules 规则2

风险与回滚Risk & Rollback

  • 风险点:
    • LATERAL 子查询在 order_settle_id 无商品记录时返回 NULL已用 COALESCE 兜底为空字符串)
    • settlement_head JOIN 可能因 order_settle_id 为空导致 income=0与实际无结算一致可接受
    • 预估规则依赖服务器时间 date.today(),跨时区部署需注意
  • 回滚要点:
    • 后端:fdw_queries.py 恢复原 SQL去掉 3 个 LEFT JOINSELECT 改回 ledger_amount
    • 后端:task_manager.py 恢复原统计逻辑(去掉 cutoff_60d / is_estimate_month 分支)
    • 前端WXML 恢复 fmt.hours() 和硬编码电话/AI文案

验证Verification

  • SQL 验证:通过 MCP pg-app-test 执行 get_service_records_for_task 等效 SQL确认台桌名S1/A6/S3/A18/M4、收入口径pd_money+cx_money、酒水明细东方树叶×2、地道肠×2、椰汁×1均正确
  • getDiagnostics7 个文件零错误
  • 联调验证小程序开发者工具打开任务详情页确认服务记录卡片展示台桌名、Nh 时长、酒水明细、到手金额、预估标记、电话脱敏

文件清单Files changed

  • apps/backend/app/services/fdw_queries.py — get_service_records_for_task SQL 重写(+dim_table +settlement_head +store_goods_sale LATERAL
  • apps/backend/app/services/task_manager.py — get_task_detail 60天统计窗口 + 预估规则
  • apps/miniprogram/miniprogram/utils/format.wxs — 新增 maskPhone() 函数
  • apps/miniprogram/miniprogram/pages/task-detail/task-detail.wxml — 电话脱敏、AI文案动态绑定、统计区 hoursH
  • apps/miniprogram/miniprogram/pages/task-detail/task-detail.ts — loadByMember await 修复(前序 TASK-3 遗留)
  • apps/miniprogram/miniprogram/components/service-record-card/service-record-card.wxml — hoursH 格式 + drinks 展示