Skip to content

fix(accounts): 统一账户欠款、流水与外币导入口径 - #554

Merged
TNT-Likely merged 12 commits into
mainfrom
fix/account-balance-trust
Oct 15, 2026
Merged

TNT-Likely merged 12 commits into
mainfrom
fix/account-balance-trust

Conversation

@TNT-Likely

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

Copy link
Copy Markdown
Owner

变更说明

信用卡原先要求用户理解负数存储,正数欠款会被当成卡内余额;普通账户流水又跟随图表筛选,外币账单导入可能创建错误币种的账户。本次统一欠款、溢缴、消费与还款语义,让余额可通过完整流水核对。

  • 信用卡正数填写欠款或溢缴;额度、账单日、还款日选填,开启还款提醒时要求还款日。编辑元信息保留余额和已有流水。
  • 溢缴计资产,各卡欠款分别计负债,净资产保持一致;未知额度不填零,可用金额明确为估算。
  • 普通账户默认全部流水,支持独立筛选;还款仍为转账,显示完整账户路径与中性金额色。
  • 外部账单按原币创建或复用账户,同名币种冲突拆分,导入前确认账户币种。
  • 账户页复用通用胶囊切换组件;日间默认黑底白字,洞察页不再单独配置颜色。保留主分支既有韩文、繁体翻译,新键按生成器回退。

Closes #407
Closes #536

Refs #428:共享导入路径已修正账户原币处理;原 Android/HarmonyOS 约 5,000 笔 XLSX 场景尚待确认,暂不设置自动关闭。
Refs #87:本 PR 覆盖初始欠款和还款转账;分期、各银行对账单导入仍未完成,保留该综合需求。

配套 Cloud #128。内部有符号余额、同步协议及现有数据库结构保留。

配色增量验证(2026-10-15)

当前 head cbc1bba460b628d9884a384dd7e4574cc7ca8b67 将通用切换器日间默认选中色改为黑底白字,移除洞察页的颜色特例并同步设计规范。仅三处外观/文档改动,业务逻辑未变。

  • 组件与账户流水 Widget 测试 5 项、隔离保护测试 8 项通过;修改文件静态分析无问题。
  • 正常入口 QA App 原生 UI 验证:云服务“云端协同/备份同步”、洞察“月/年”、账户“全部流水/收入与转入”切换与选中语义通过,实际截图均为黑色选中。
  • 更新原人工验收 App 前已备份,9 个账户、10 笔交易业务字段与更新前逐项一致;不重装 fixture 或重置数据。
  • 完整离线包 beecount-capsule-default-qa-2026-10-15.zip 已本地交付,SHA256 ec7769b28acdb69e294b838ebfe9ffa2c155278d177ab2e2a35f771f42f6ceb3。

完整业务回归(2026-10-15,基线 12e244b)

对应 App 12e244b4b44aa0d45ac7e382a636a283cf597727、Cloud 975d746299f4eb9d384325e07967132c51e70ccf,已包含当前主分支,无合并冲突。本轮未发现阻断正常业务的回归,没有追加业务源码改动。

  • App 全量:1,015 项通过、1 项按原配置跳过(中英 Android/iOS 选择器预览图生成)。覆盖普通收支/转账、账户余额与校准、统计排除、周期记账、导入、备份、多币种、共享和同步。
  • 隔离保护测试 8 项通过;修改文件分析无 error/warning,4 条 INFO。
  • 配套 Cloud SQLite 全量 542 项、Web 103 项通过;TypeScript 与 Vite 构建通过。
  • 全新隔离 iOS 26.5 与 Cloud 实跑:生产表单欠款/溢缴录入、消费→还款→溢缴→再消费、普通账户全部流水/筛选、Web 表单改名与正数欠款创建、JPY 原币 CSV 导入、重复同步及 QA API 503 恢复全部通过。
  • 正常 lib/main.dart 入口重建、重启和原生 UI 断言通过。最终两端 7 个账户、8 笔交易的身份、币种、金额、元信息、统计排除标记及转账关系逐字段一致。
  • Web 实际还款流水:信用卡 +2,200、银行卡 −2,200,均为中性色,完整显示账户路径;普通账户取消编辑不写入。

原人工验收环境保留原账号与 9 个账户、10 笔交易;本轮测试使用另一台独立设备与新数据库。

完整报告与边界

离线 HTML、截图、脱敏 JSON、文件校验表及独立 ZIP 已本地交付:beecount-account-regression-qa-2026-10-15.zip。包内不含凭证、数据库、备份、原始日志或 App 二进制;未上传公开附件。

本轮未覆盖 Android、真机、系统通知、PostgreSQL;#428 原帖的大型 XLSX 文件仍待对应平台复测。离线报告排版视觉复核因浏览器本地文件协议限制未执行。精确本期账单、自动分期和可交易贷款仍是后续能力。

贡献者许可条款

信用卡区分当前欠款与溢缴款,普通账户展示全部流水;外部导入确认账户币种,并补充隔离联调场景。
统一日常与估值分组、欠款与溢缴款以及提醒天数的单选样式,复用主题色胶囊组件。\n补充编辑入口的可访问标签,并验证分组切换及正数金额保存。
合并最新主分支,保留上游通知本地化、繁体中文及死代码清理。合并中英文账户文案后用 Flutter 3.27.3 重新生成本地化,不修改韩文或繁体中文 ARB。

沿用上游删除的未引用信用卡 provider,账户页面与仓库继续使用统一金额计算。
将日间黑底白字设为通用组件默认配色,移除洞察页的单独颜色配置,并更新设计规范。
TNT-Likely added a commit to TNT-Likely/BeeCount-Cloud that referenced this pull request Oct 15, 2026
统一账户欠款、溢缴、资产构成、全局余额与转账显示口径,保留现有有符号余额和同步协议。

Cloud SQLite 全量 542 项、Web 103 项与构建通过;配套 App 的真实双向同步、故障恢复及正常重启验收通过。

配套 App PR:TNT-Likely/BeeCount#554。
@TNT-Likely
TNT-Likely merged commit af23731 into main Oct 15, 2026
1 check passed
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.

建议在资产账户页面里面除了支出和收入以外在加上“全部” [Bug] Credit Card Used Amount Shows value as 0

1 participant