fix: 自存表导出已缴/退款金额在 V2 样本缴费下为空 #88

Closed
opened 2026-11-11 06:12:29 +00:00 by cykj · 1 comment
Owner

问题

协议审核「导出 Excel」自存表中,V2 样本缴费(biz_protocol_sample_payment + transfer)已确认 yjf 时,已缴金额、首期应缴、悔存已缴、退款列仍为空。

根因

build_protocol_payment_summaries(..., include_sample_payment_modes=True) 仅补齐 payMode / firstPayTransferTime,receivedAmount / paymentDetails 仍依赖 V1 biz_protocol_payment。

范围

  • 修改端:backend(列表 paymentSummary);web-admin 导出消费该字段,不改前端映射。
  • 不作 Figma;不影响科研表(无缴费列)。

验收

  1. 造数「导出自存01/02/05/06/07」再导出:已缴金额有值。
  2. 06 作废悔存:退款列或悔存已缴列为负已缴(无显式退费记录时按 -已缴)。
  3. 05 同存:已缴=各样本 yjf 合计;同批运费合并不受影响。
  4. 相关单元测试通过。
## 问题 协议审核「导出 Excel」自存表中,V2 样本缴费(`biz_protocol_sample_payment` + transfer)已确认 `yjf` 时,已缴金额、首期应缴、悔存已缴、退款列仍为空。 ## 根因 `build_protocol_payment_summaries(..., include_sample_payment_modes=True)` 仅补齐 `payMode` / `firstPayTransferTime`,`receivedAmount` / `paymentDetails` 仍依赖 V1 `biz_protocol_payment`。 ## 范围 - 修改端:`backend`(列表 `paymentSummary`);`web-admin` 导出消费该字段,不改前端映射。 - 不作 Figma;不影响科研表(无缴费列)。 ## 验收 1. 造数「导出自存01/02/05/06/07」再导出:已缴金额有值。 2. 06 作废悔存:退款列或悔存已缴列为负已缴(无显式退费记录时按 -已缴)。 3. 05 同存:已缴=各样本 yjf 合计;同批运费合并不受影响。 4. 相关单元测试通过。
cykj added the ai-in-progress label 2026-11-11 06:12:41 +00:00
cykj added ai-merging and removed ai-in-progress labels 2026-11-11 06:16:29 +00:00
Author
Owner

修复结果

已合入 V2.0(PR #89 ,合并提交 d0eb97b167ee68f7cdbe23e68ed26320d11575b2)。

改动

build_protocol_payment_summaries(..., include_sample_payment_modes=True) 从 V2 样本缴费补齐 receivedAmount / paymentDetails / 合同额与退费,自存表导出可带出已缴与作废负退款。

单元测试

pytest backend/tests/test_protocol_v2_payment_mode_summary.py -q → 7 passed

请你验收

  1. 重启 backend(本 Agent 不启停服务)后,在协议审核筛选「导出自存」再导出自存表。
  2. 核对:01/02 已缴=22880;05 已缴=19280;06 退款或悔存已缴为 -5000;07 已缴=6480;运费合并仍正常。

构建与整体验收留给用户。

## 修复结果 已合入 `V2.0`(PR https://gitea.aichengyan.com/cykj/zkxw/pulls/89 ,合并提交 `d0eb97b167ee68f7cdbe23e68ed26320d11575b2`)。 ### 改动 `build_protocol_payment_summaries(..., include_sample_payment_modes=True)` 从 V2 样本缴费补齐 `receivedAmount` / `paymentDetails` / 合同额与退费,自存表导出可带出已缴与作废负退款。 ### 单元测试 `pytest backend/tests/test_protocol_v2_payment_mode_summary.py -q` → 7 passed ### 请你验收 1. **重启 backend**(本 Agent 不启停服务)后,在协议审核筛选「导出自存」再导出自存表。 2. 核对:01/02 已缴=22880;05 已缴=19280;06 退款或悔存已缴为 -5000;07 已缴=6480;运费合并仍正常。 构建与整体验收留给用户。
cykj closed this issue 2026-11-11 06:17:18 +00:00
cykj added ai-done and removed ai-merging labels 2026-11-11 06:17:49 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: cykj/zkxw#88