MRobot/CATEGORY_GUIDE.md
2025-11-25 20:45:10 +08:00

3.8 KiB
Raw Blame History

财务管理模块 - 分类功能使用指南

功能概览

财务模块现已支持完整的分类功能,用户可以:

  1. 新建分类 - 在做账标签页左侧点击"新建分类"按钮
  2. 选择分类 - 在创建/编辑交易时选择或输入分类
  3. 按分类查询 - 在查询标签页通过分类进行筛选

功能详细说明

1. 新建分类

操作步骤:

  1. 打开财务模块,进入"做账"标签页
  2. 点击左上方"新建分类"按钮
  3. 在弹出对话框中输入分类名称(如"工作支出"、"投资收益"等)
  4. 点击"创建"按钮

注意:

  • 系统默认提供10个基础分类其他、工资、奖金、投资、生活、交通、饮食、娱乐、医疗、教育
  • 无法删除默认分类,但可以添加自定义分类
  • 同一账户不能有重复的分类名称

2. 创建/编辑交易记录

创建新交易:

  1. 点击"新建记录"按钮
  2. 填写交易信息:
    • 交易类型:选择"入账"或"支出"
    • 分类:从下拉框中选择或确认分类
    • 日期:选择交易日期
    • 金额:输入交易金额(正数)
    • 交易人:输入交易对方名称
    • 备注:添加备注说明(可选)
    • 相关文件:上传发票、支付记录、购买记录等(可选)
  3. 点击"保存"按钮

编辑现有交易:

  1. 在记录表中选择要编辑的交易
  2. 点击"编辑"按钮
  3. 修改任意字段(包括分类)
  4. 点击"保存"按钮

3. 按分类查询

操作步骤:

  1. 进入"查询"标签页
  2. 设置查询条件:
    • 日期范围:选择起始和结束日期
    • 交易类型:选择"全部"、"收入(正数)"或"支出(负数)"
    • 分类:从下拉框选择要查询的分类("全部"表示不按分类筛选)
    • 金额范围:输入最小和最大金额范围
    • 交易人:输入交易人名称(支持模糊匹配)
  3. 点击"查询"按钮

查询结果显示:

  • 表格列包括:日期、交易人、分类、金额、备注
  • 结果按日期倒序排列(最新的在上)

数据持久化

所有分类信息被保存到:

assets/Finance_Data/accounts/{account_id}/metadata.json

交易记录(包括分类)被保存到:

assets/Finance_Data/accounts/{account_id}/{transaction_id}/data.json

导出与导入

导出为CSV

  • 打开"导出"标签页
  • 点击"导出CSV"按钮
  • 选择保存位置
  • CSV文件将包含日期、金额、交易人、分类、备注、创建时间

导出/导入账户

  • 支持完整的账户数据迁移(包括所有分类和交易记录)
  • 导出为ZIP包后可在其他地方导入

API 接口

如果需要在代码中直接使用分类功能:

from app.tools.finance_manager import FinanceManager

fm = FinanceManager()

# 添加分类
fm.add_category(account_id, "新分类名称")

# 删除自定义分类
fm.delete_category(account_id, "分类名称")

# 获取所有分类
categories = fm.get_categories(account_id)

# 按分类查询交易
results = fm.query_transactions(
    account_id,
    category="工资"  # 指定分类
)

常见问题

Q: 为什么我新建的分类不显示在"新建记录"对话框中? A: 确保已点击"创建"按钮完成分类创建,然后再打开新建记录对话框。系统会自动从账户中读取最新的分类列表。

Q: 能否修改分类名称? A: 目前不支持修改分类名称。建议先新建一个新分类,然后为已有交易重新分配分类。

Q: 删除交易记录后,其分类会被删除吗? A: 不会。分类是账户级别的属性,删除交易不会影响分类列表。

Q: 如何导入包含分类的交易数据? A: 使用"导出"标签页的"导入账户"功能选择之前导出的ZIP包即可恢复所有分类和交易记录。