# 个人财务分析系统 ``` 项目名称: ProjectMoneyM ``` ``` 项目版本: v1.0 ``` ``` 项目编制日期: 2026-02-26 ``` ## 数据来源 1. 数据来源 | 数据来源 | 最长周期 | 文件格式 | 说明 | 数据维度 | | --- | --- | --- | --- | --- | | 支付宝账单 | 1年 | csv | 第一来源 | 最全 | | 微信账单 | 3个月 | csv | 第二来源 | 第二全 | | 招商银行 | 1年 | pdf | 第三来源 | 第三全 | | 京东商城 | 1年 | pdf | 第四来源 | 第四全 | 2. 数据解析工具 1. 能够读取不同格式的账单来源 2. 能够通过OCR的方式解析特定的收入数据 ## 数据清洗及标准化 1. 时间维度清洗 1. 需要统一时间维度,统一为东八区时间,格式为yyyy-MM-dd HH:mm:ss 2. 数据展示环节 需要能够通过时间段进行筛选查询收支数据 2. 支付项目清洗 1. 需要过滤重复的支付项 2. 需要明确支付途径和支付卡 3. 例如,一笔支出,银行账单会记录支出,支付宝或者微信会记录支出,需要将这些重复的支付项合并 4. 支付途径为: 支付宝,微信,云闪付,京东,美团,拼多多 5. 实际支付卡为: 信用卡,借记卡,余额宝,微信钱包,支付宝钱包 6. 支出项目的账本归类 1. 一笔支出可以归于一个或者多个账本 2. 一笔支出需要在日常开支中进行分析,也需要在过年支出这种特殊的账本中进行分析 3. 支付金额清洗 1. 需要统一为标准的数据格式 4. 支出去向清洗 1. 需要将支出进行分类 2. 请参考支付宝的支出分类 ## 收支情况 展示内容 ```此部分重要使用前端图表工具进行绘图展示``` ### 收支分析(请给出能够展示的图形类型) 1. 需要直观的看出结余情况, 收入大于支出,支出大于收入的对比 2. 时间维度为,月度,季度,年度,重点展示月度收支情况 3. 收支的最小维度为月度 ### 收入分析(请给出能够展示的图形类型) #### 收入趋势 1. 能够根据不同的时间维度进行收入的对比 2. 能够直观的展示收入的趋势 #### 收入总览 1. 收入来源占比分析 2. 时间维度,重点展示年度收入,季度收入 3. 收入的最小维度为月度 #### 收入 ### 支出分析(请给出能够展示的图形类型) #### 支出趋势 1. 能够根据不同的时间维度进行支出的对比 2. 能够直观的展示支出的趋势 #### 支出总览 1. 支出去向占比分析 2. 时间维度,重点展示年度支出,季度支出 3. 支出的最小维度为月度 ### 展示内容导出 1. 支持将展示内容导出为图片 2. 支持将展示内容导出为PDF文件 ## 技术栈 1. Golang 2. Vue 3. TypeScript 4. SQLite 5. ECharts(寻找适合的图表工具,不限于ECharts)