Skip to content

[Bug] 周期账单创建/修改时允许选择历史时间,导致脏数据生成,建议限制为当前/未来时间 #135

@fishdivinity

Description

@fishdivinity

提交前确认 / Pre-submission Checklist

  • 我已查阅 官方文档,确认这不是使用方式问题 / I have checked the official docs and confirmed this is not a usage issue
  • 我已在 GitHub Issues 搜索过,没有找到相同的 Bug 报告 / I have searched GitHub Issues and found no similar bug report
  • 我已升级到最新版本,问题仍然存在 / I have updated to the latest version and the issue persists

问题描述 / Problem Description

当前周期账单功能存在设计逻辑问题:

  • 创建周期账单时,支持选择历史时间作为开始时间,这一设计不合理(周期账单应面向未来循环生成,历史时间无实际业务意义);
  • 修改已存在的周期账单时,若未手动调整开始时间(仍保留历史时间),系统会重新生成该历史时间到当前时间的所有周期账单,导致大量脏数据。

具体场景示例:我在 2025 年 12 月 1 日创建了一个周期账单(开始时间为 12 月 1 日),后续在 12 月 12 日修改该账单的【备注】时,未注意开始时间仍为 12 月 1 日,系统直接生成了 12 月 1 日 - 12 月 12 日期间的所有周期账单(共 12 条),形成无意义的脏数据,增加了数据清理成本。

复现步骤 / Steps to Reproduce

  1. 创建周期账单,选择历史日期作为开始时间并保存;
  2. (或)修改已存在的周期账单(开始时间为历史日期),仅调整其他字段(如备注)后保存;
  3. 查看账单列表,发现系统生成了历史时间到当前时间的所有周期账单。

期望行为 / Expected Behavior

  • 创建周期账单时:开始时间默认为当前日期,且仅允许选择当前日期或未来日期,禁止选择历史日期;
  • 修改周期账单时:开始时间不可修改为历史日期(若原开始时间为历史日期,修改时自动锁定为当前日期,或强制要求用户更新为当前 / 未来日期),避免生成历史时间段的脏数据。

实际行为 / Actual Behavior

  • 支持选择历史时间作为周期账单开始时间;
  • 修改周期账单时,保留历史开始时间会触发系统重新生成该时间段的所有周期账单,产生脏数据

截图 / Screenshots

No response

应用版本 / App Version

2.2.0

平台 / Platform

Android

系统版本 / OS Version

HyperOS 3.0.4.0

设备型号 / Device Model

K70

错误日志 / Error Logs

补充信息 / Additional Information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions