First Commit
This commit is contained in:
79
CHANGELOG.md
Normal file
79
CHANGELOG.md
Normal file
@@ -0,0 +1,79 @@
|
||||
# 更新日志
|
||||
|
||||
## v1.2 (2025-10-17)
|
||||
|
||||
### 新功能
|
||||
|
||||
#### 1. 汇率文件支持
|
||||
- **功能**: 支持从 `exchange_rate.txt` 文件读取汇率
|
||||
- **优先级**: 文件汇率 > 程序默认汇率
|
||||
- **使用方法**:
|
||||
```bash
|
||||
echo "7.25" > exchange_rate.txt
|
||||
python3 generate_accounting_entries.py
|
||||
```
|
||||
|
||||
#### 2. 智能汇率验证
|
||||
- **范围检查**: 汇率必须在 0.1 ~ 100 范围内
|
||||
- **格式验证**: 自动检测非数字格式
|
||||
- **错误处理**: 异常情况自动回退到默认汇率 (7.1072)
|
||||
|
||||
#### 3. 详细日志输出
|
||||
程序运行时会显示汇率来源:
|
||||
- 从文件读取: `从 exchange_rate.txt 读取汇率: 7.25`
|
||||
- 文件不存在: `汇率文件 exchange_rate.txt 不存在,使用默认汇率: 7.1072`
|
||||
- 格式错误: `汇率文件 exchange_rate.txt 中的值无法解析,使用默认汇率: 7.1072`
|
||||
- 值不合理: `汇率文件中的值 150.0 不合理,使用默认汇率: 7.1072`
|
||||
|
||||
### 代码修改
|
||||
|
||||
**文件**: `generate_accounting_entries.py`
|
||||
|
||||
1. **新增导入**:
|
||||
- `import os` - 用于文件检查
|
||||
|
||||
2. **新增函数**:
|
||||
- `load_exchange_rate()` (line 16-52) - 汇率加载和验证逻辑
|
||||
|
||||
3. **修改函数签名**:
|
||||
- `create_accounting_entries(data, exchange_rate)` - 添加汇率参数
|
||||
|
||||
4. **修改 main 函数**:
|
||||
- 调用 `load_exchange_rate()` 获取汇率
|
||||
- 传递汇率参数到 `create_accounting_entries()`
|
||||
|
||||
### 文档更新
|
||||
|
||||
1. **User.md**:
|
||||
- 更新"汇率配置"章节,添加文件方法说明
|
||||
- 更新 Q4 常见问题
|
||||
- 更新文件说明表,添加 `exchange_rate.txt`
|
||||
- 添加 v1.2 更新记录
|
||||
|
||||
2. **CLAUDE.md**:
|
||||
- 更新"Exchange Rate"配置章节
|
||||
- 添加详细的错误处理说明和示例
|
||||
- 更新版本历史
|
||||
|
||||
### 测试结果
|
||||
|
||||
✅ 正常汇率文件 (7.25): 成功读取
|
||||
✅ 文件不存在: 使用默认汇率
|
||||
✅ 非数字格式 (abc): 使用默认汇率
|
||||
✅ 不合理值 (150): 使用默认汇率
|
||||
|
||||
### 向后兼容性
|
||||
|
||||
- ✅ 完全向后兼容
|
||||
- ✅ 不影响现有功能
|
||||
- ✅ 无 `exchange_rate.txt` 文件时使用程序默认值
|
||||
|
||||
### 文件清单
|
||||
|
||||
| 文件 | 状态 | 说明 |
|
||||
|------|------|------|
|
||||
| `generate_accounting_entries.py` | 已修改 | 添加汇率文件读取功能 |
|
||||
| `exchange_rate.txt` | 新增 | 汇率配置文件 (可选) |
|
||||
| `User.md` | 已更新 | 用户文档 |
|
||||
| `CLAUDE.md` | 已更新 | 开发文档 |
|
||||
| `CHANGELOG.md` | 新增 | 本文件 |
|
||||
Reference in New Issue
Block a user