feat(receivables): customer-level rows only + register hanke_ar as balance snapshot batch
ASK-20261001-33: api_receivables counts only rows with a non-blank counterparty (monthly aggregate rows stay in table but out of the collection page cards/aging/detail/owners); BALANCE_SNAPSHOT_SOURCES gains hanke_ar (default skip, no per-customer overdue alerts). New pytest file covers aggregate-row exclusion, e2 baseline digitwise, snapshot registration. (cherry picked from commit 475f78bc8c5f67f2716c721172a88ff89ec58227)
This commit is contained in:
@@ -55,13 +55,17 @@ KPI_CODE_SUFFIXES = {
|
||||
# ── 余额快照批次(F4,2026-09-13)────────────────────────────
|
||||
# 这些 source 是「期末余额导入」批次:plan_date 是**导入基准日**(如 2026-06-30 期末),
|
||||
# 不是真实到期日 → 逐户生成"到期未收款"会永远 overdue,属伪逾期(DAMA 审计 fin-alert-flood-e2)。
|
||||
# hanke_ar(酣客 2026-07 期末客户级应收,ASK-20261001-33)语义与 bohai_ar_20260630 完全相同,
|
||||
# 2026-10-01 按设计件 §6.2「快照批次登记」加入名单:默认 skip ⇒ 不逐户生成伪逾期告警。
|
||||
BALANCE_SNAPSHOT_SOURCES = {
|
||||
"bohai_ar_20260630",
|
||||
"bohai_ap_20260630",
|
||||
"bohai_prepay_20260630",
|
||||
"receivables_migrate",
|
||||
"hanke_ar",
|
||||
}
|
||||
|
||||
|
||||
# 处理开关:per_customer(逐户,旧行为) / skip(不生成逐户,默认) / aggregate(按批次聚合1条)
|
||||
_SNAPSHOT_MODE_DEFAULT = "skip"
|
||||
_SNAPSHOT_MODES = ("per_customer", "skip", "aggregate")
|
||||
|
||||
Reference in New Issue
Block a user