# fund **Repository Path**: foolfishman/fund ## Basic Information - **Project Name**: fund - **Description**: 理财记账 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-02 - **Last Updated**: 2026-06-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 理财记账 (Fund Ledger) 一个简洁的理财投资记录管理桌面应用,支持记录、查看、编辑和删除理财购买记录,自动计算预期收益。 ## 功能特性 - 新增 / 编辑 / 删除理财记录 - 自动计算预期收益(基于年化收益率和持有天数) - 显示到期时间 - 统计总笔数和总金额 - 支持亮色 / 暗色主题 - 响应式界面布局 - 数据持久化存储在本地 JSON 文件中 ## 技术栈 | 层级 | 技术 | 说明 | |------|------|------| | 桌面框架 | Tauri 2.x | 跨平台桌面应用框架 | | 后端语言 | Rust (2021 Edition) | 核心业务逻辑与系统交互 | | 前端技术 | 原生 HTML / CSS / JS | 用户界面渲染 | | 数据存储 | 本地 JSON 文件 | 持久化存储 | ### Rust 依赖 - `tauri` 2.x - 桌面框架核心 - `tauri-plugin-opener` 2.x - 外部链接打开插件 - `serde` 1.x - 序列化 / 反序列化 - `serde_json` 1.x - JSON 解析 - `dirs` 5.x - 系统路径工具 ## 项目结构 ``` fund/ ├── src/ 前端资源目录 │ ├── index.html 主页面 │ ├── main.js 前端业务逻辑 │ └── styles.css 样式表 ├── src-tauri/ Rust 后端目录 │ ├── Cargo.toml Rust 依赖配置 │ ├── build.rs Tauri 构建脚本 │ ├── tauri.conf.json Tauri 应用配置 │ ├── capabilities/ │ │ └── default.json 权限配置 │ └── src/ │ ├── main.rs 应用入口 │ └── lib.rs 核心业务逻辑 ├── package.json └── README.md ``` ## 快速开始 ### 环境要求 - [Node.js](https://nodejs.org/) - [Rust](https://www.rust-lang.org/tools/install) - [Tauri 2.x CLI](https://tauri.app/start/prerequisites/) ### 安装与运行 ```bash # 安装前端依赖 npm install # 启动开发服务器 npm run tauri dev ``` ### 构建生产版本 ```bash # 构建 Windows 安装包 npm run tauri build ``` 构建产物位于 `src-tauri/target/release/` 目录。 ## 数据模型 每条理财记录包含以下字段: | 字段 | 类型 | 说明 | |------|------|------| | `id` | String | 唯一标识符(毫秒时间戳) | | `amount` | f64 | 理财金额(元) | | `purchase_date` | String | 购入时间 | | `duration_days` | u32 | 持有天数 | | `bank_name` | String | 购入银行名称 | | `annual_rate` | f64 | 年化收益率(%) | | `final_value` | f64 | 预期收益(自动计算) | 预期收益计算公式:`本金 × 年化收益率 / 100 / 365 × 持有天数` ## 数据存储 数据存储在本地 JSON 文件中,路径为: - **Windows**: `C:\Users\{用户名}\AppData\Roaming\fund\data.json` - **macOS**: `~/Library/Application Support/fund/data.json` - **Linux**: `~/.local/share/fund/data.json` 数据格式示例: ```json { "records": [ { "id": "1699999999999", "amount": 10000.00, "purchase_date": "2024-01-15", "duration_days": 30, "bank_name": "中国银行", "annual_rate": 3.5, "final_value": 28.77 } ] } ``` ## 前端 API 前端通过 `window.__TAURI__.core.invoke()` 调用后端命令: | 命令 | 说明 | 参数 | |------|------|------| | `get_records` | 获取所有记录 | 无 | | `add_record` | 添加新记录 | amount, purchaseDate, durationDays, bankName, annualRate | | `update_record` | 更新记录 | id, amount, purchaseDate, durationDays, bankName, annualRate | | `delete_record` | 删除记录 | id | ## 许可证 本项目仅供个人学习和使用。