Skip to content

feat(account): [WIP] 贷款本金借还与旧账户接续(冻结) - #566

Draft
TNT-Likely wants to merge 8 commits into
mainfrom
feature/loan-account-transfers
Draft

TNT-Likely wants to merge 8 commits into
mainfrom
feature/loan-account-transfers

Conversation

@TNT-Likely

@TNT-Likely TNT-Likely commented Oct 18, 2026 •

Copy link
Copy Markdown
Owner

WIP / 已冻结(2026-10-18)

用户决定先沉淀方案,后续明确恢复时再改造。当前 PR 保持 Draft,暂不推进功能、合并或发布;没有约定恢复日期。

完整方案与待决问题:贷款完整改造方案。

当前实现只覆盖手动本金账户;本息拆分、还款计划、周期支出联动减本金及实际账单核对尚未实现。完整方案仍为讨论提案,尤其支出统计口径和操作复杂度未定稿,不应直接当作已批准开发范围。

本轮只沉淀文档并冻结 PR。以下保留冻结前的实现与验收记录,测试分别对应原业务提交 App c4a52de / Cloud e4db53a,完整实服联调的 App 为 a6b6c59;未将文档更新宣称为新一轮业务验收。

测试资源已清理(2026-10-18):按用户要求,已停止并删除本轮贷款 QA Cloud、专用模拟器与临时数据,关闭验收网页;旧本地验收地址已失效。独立验收报告及 ZIP 保留且校验值未变,贷款分支和方案继续保留,PR 维持 Draft/WIP。


变更说明 / What & Why

贷款账户原先按估值维护欠款,银行卡无法直接转入还本。本次把贷款作为本金负债账户:银行卡转入贷款归还本金,两边金额同步减少;贷款转出到资金账户记录借入,两边同步增加。本金不计普通收支,利息和手续费另记支出。

  • 新建/编辑按资产账户、负债账户组织;房产、车辆等估值资产继续保留原规则。贷款详情展示当前欠款本金、归还/借入入口及本金增减流水。
  • 旧贷款保留原 ID、币种、备注、隐藏状态和欠款;无历史且余额有效的账户自动接续,其余先核对。按接续时刻计算本金,避免已有历史重复扣减,不造现金流水。
  • 普通收支排除贷款,借还沿用原转账和通用金额面板;保留同币种、个人账本、超额还本等校验,并原子保存转账两端。金额区的可选说明和预计剩余本金已移除。
  • 对齐净资产、同步、快照及原生导入导出,元数据改名不重置本金;使用 loan-flow-v1 / loan_accounting_version 防止新旧端互相覆盖。

配套 Cloud:**https://github.com/TNT-Likely/BeeCount-Cloud/pull/130**(`e4db53a`)。恢复开发并完成验收后,上线顺序应为 Cloud 先、App 后。

产品与边界说明:贷款本金账户。

关联 Issue / Related Issue

混合需求仅关联本次进度,不自动关闭整条 issue。

自测情况 / Self-tested

  • PUB_HOSTED_URL=https://pub.dev flutter test --no-pub:1035 项通过、1 项跳过(冻结前业务提交 c4a52de)。
  • 贷款迁移、旧账户接续、导入恢复、同步、超额还本、转账两端及信用卡/余额校准专项包含在回归中;隔离脚本 8 项拒绝路径通过。
  • 使用 Flutter 3.27.3 执行 flutter gen-l10n;只维护简中/英文 ARB,其他语言沿用生成回退。
  • 独立 QA 主包、扩展和 App Group 验证后安装;最新正常入口原生 UI 检查通过。更新前私密备份,安装及启动前后原人工账户/交易数据保持一致。
  • flutter analyze --no-pub 全绿:补齐 agentcore 锁定依赖后为 0 error、218 warning、552 info,退出码 1;未宣称无新增告警。
  • 最新金额面板目视复核:Mac 锁定未执行。通用金额面板已逐字节恢复至本 PR 基线版本;未将目视复核记为通过。

联调证据与未覆盖范围

完整隔离联调对应 App a6b6c59 / Cloud e4db53a:真实 iOS App、真实 Web 新增/改名/还本、App→Cloud→App、旧贷款核对、信用卡溢缴款、房产估值、QA 服务 503 恢复、重复同步及正常入口重启均通过。自动快照为 7 个账户、8 笔交易,身份、关系、币种和余额一致;普通支出 150、收入 0。

最终 c4a52de 只移除记账可选 UI,重跑全量 App 回归并更新同一模拟器;保留人工验收后已有的 7 个账户、9 笔交易,未重新生成 fixture 或声称重新跑过完整联调。

目前仅支持个人账本、同币种本金借还。Android、真机、PostgreSQL 并发及 MCP 贷款完整协议未执行;Web 已打开的详情沿用统计快照,跨端变更后需重开刷新。旧 Cloud 不具备新能力时,App 会提示升级而非继续推送贷款数据。

脱敏离线 HTML、截图及 ZIP 已在本机单独交付,未进入源码或上传到 PR:

  • 完整联调包:beecount-loan-qa-2026-10-18.zip,SHA256 b6f0d55ac3153691ad2379b5fee2a680edfab73fba348226ba975fc42c091da1。
  • 界面精简增量包:beecount-loan-minimal-entry-qa-2026-10-18.zip,SHA256 9e99f660c393e9efc1a1f542ad8a10bd0f0287df52955aac889776c234da25cd。

人工验收环境已按用户要求完整清理;独立报告保留,本 PR 继续冻结。

@TNT-Likely TNT-Likely changed the title feat(account): 支持贷款本金借还与旧账户接续 feat(account): [WIP] 贷款本金借还与旧账户接续(冻结) Oct 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant