MRobot/FINANCE_MODULE_GUIDE.md
2025-11-25 17:26:46 +08:00

6.0 KiB
Raw Blame History

财务做账模块使用指南

功能概述

MRobot 财务做账模块是一个完整的财务管理系统,提供做账、查询、导出三大功能。支持多账户管理、图片附件、本地数据存储等功能。

核心特性

  • 多账户管理: 支持创建和管理多个独立的财务账户
  • 完整的交易记录: 每条记录包含日期、金额、交易人、备注和三种类型的图片证明
  • 图片管理: 支持为每条记录关联发票、支付记录、购买记录三张图片
  • 本地存储: 所有数据和图片存储在本地,组织清晰
  • 强大的查询: 支持按日期、金额、交易人多条件查询
  • 数据导入导出: 支持ZIP打包转移、CSV导出、完整备份

目录结构

assets/Finance_Data/
├── accounts/              # 账户数据目录
│   ├── [账户ID]/         # 每个账户的独立目录
│   │   ├── metadata.json # 账户元数据
│   │   ├── [交易ID]/     # 每条交易记录的目录
│   │   │   ├── data.json # 交易记录数据
│   │   │   ├── invoice/  # 发票图片
│   │   │   ├── payment/  # 支付记录图片
│   │   │   └── purchase/ # 购买记录图片
├── backups/              # 自动备份目录
├── images/              # 临时图片缓存(可选)
└── [其他文件]

使用指南

1. 做账标签页

创建账户

  1. 点击"新建账户"按钮
  2. 输入账户名称和描述(可选)
  3. 点击确定

创建新交易记录

  1. 选择账户
  2. 点击"新建记录"按钮
  3. 填写表单信息:
    • 日期: 默认为当前日期,可修改
    • 金额: 必须大于0
    • 交易人: 必填项,填写交易对象
    • 备注: 可选,补充说明
    • 图片: 可选上传发票、支付记录、购买记录三张图片

管理交易记录

  • 编辑: 点击"编辑"按钮修改记录
  • 删除: 点击"删除"按钮删除记录
  • 查看: 点击"查看"按钮查看完整详情和图片预览

统计信息

  • 实时显示总金额(人民币)
  • 显示记录总数

2. 查询标签页

设置查询条件

  • 日期范围: 默认查询最近一个月,可自定义
  • 金额范围: 可设置最小和最大金额
  • 交易人: 支持模糊搜索(不区分大小写)

执行查询

  1. 调整过滤条件
  2. 点击"查询"按钮
  3. 结果列表显示匹配的记录

查看记录详情

  • 点击结果列表中的"查看详情"按钮
  • 显示完整信息和图片预览

3. 导出标签页

导出账户为ZIP包

  • 用途: 转移账户给他人使用
  • 操作: 点击"导出为ZIP包",选择保存位置
  • 文件名格式: 账户名_账户ID.zip
  • 包含所有交易记录和附加图片

导出为CSV格式

  • 用途: 用Excel或其他工具分析
  • 操作: 点击"导出CSV",选择保存位置
  • 内容: 日期、金额、交易人、备注、创建时间

导入账户

  • 用途: 导入他人共享的账户
  • 操作: 点击"导入账户"选择ZIP文件
  • 系统自动提取并加载账户

创建备份

  • 用途: 备份所有账户
  • 操作: 点击"创建备份"
  • 保存位置: assets/Finance_Data/backups/backup_[时间戳].zip
  • 自动压缩所有账户数据

数据模式

交易记录数据结构

{
  "id": "唯一ID",
  "date": "2024-01-15",
  "amount": 1500.50,
  "trader": "张三",
  "notes": "购买办公用品",
  "invoice_path": "accounts/xxx/yyy/invoice/receipt.jpg",
  "payment_path": "accounts/xxx/yyy/payment/wechat.jpg",
  "purchase_path": "accounts/xxx/yyy/purchase/order.jpg",
  "created_at": "ISO格式时间戳",
  "updated_at": "ISO格式时间戳"
}

账户元数据结构

{
  "id": "唯一ID",
  "name": "账户名称",
  "description": "账户描述",
  "created_at": "ISO格式时间戳",
  "updated_at": "ISO格式时间戳"
}

最佳实践

大数据量管理

  • 分账户: 按业务类型或时间周期创建多个账户
  • 定期备份: 定期使用"创建备份"功能
  • 及时查询: 不要一次加载过多数据,使用查询功能精确定位

图片管理

  • 推荐格式: PNG、JPG、BMP、JPEG
  • 推荐大小: 不超过2MB
  • 文件组织: 三张图片分别存储,避免重复

数据安全

  • 所有数据存储在本地,不上传到云端
  • 定期备份重要数据
  • 谨慎删除账户和记录

文件结构详解

finance_manager.py

核心数据管理模块,包含:

  • TransactionType: 交易类型枚举
  • Transaction: 交易记录数据模型
  • Account: 账户数据模型
  • FinanceManager: 主要的财务管理类

finance_interface.py

用户界面模块,包含:

  • CreateTransactionDialog: 创建/编辑交易对话框
  • RecordViewDialog: 查看交易详情对话框
  • FinanceInterface: 主界面和三个标签页

常见问题

Q: 如何转移账户给他人?

A: 使用"导出为ZIP包"功能导出账户将ZIP文件发送给对方对方使用"导入账户"导入。

Q: 删除记录后能恢复吗?

A: 不能。请定期创建备份,以防误删。

Q: 支持的最大数据量是多少?

A: 理论上不限制但建议单个账户不超过10000条记录以保持性能。

Q: 图片能否修改?

A: 不能。如需修改,请删除记录后重新创建。

Q: 可以合并账户吗?

A: 暂不支持。可以手动导出CSV后粘贴合并。

技术细节

数据存储方式

  • 元数据: JSON格式
  • 交易记录: JSON格式
  • 图片: 原始格式JPG、PNG等

查询性能

  • 账户级别的内存缓存
  • 交易记录按日期倒序排列
  • 查询时进行内存过滤

文件安全

  • 所有写入操作使用原子性操作
  • 删除前自动备份(通过备份功能)
  • 支持恢复已备份数据

更新日志

v1.0.0

  • 初始发布
  • 支持基本的做账、查询、导出功能
  • 支持多账户管理
  • 支持图片附件
  • 支持备份和恢复

使用此模块前,请确保 MRobot 已正确安装并配置好依赖环境。