- 新增项目文档和 Docker 配置 - 添加 README.md 和 TODO.md 项目文档 - 为各服务添加 Dockerfile 和 docker-compose 配置 - 重构后端架构 - 新增 adapter 层(HTTP/Python 适配器) - 新增 repository 层(数据访问抽象) - 新增 router 模块统一管理路由 - 新增账单处理 handler - 扩展前端 UI 组件库 - 新增 Calendar、DateRangePicker、Drawer、Popover 等组件 - 集成 shadcn-svelte 组件库 - 增强分析页面功能 - 添加时间范围筛选器(支持本月默认值) - 修复 DateRangePicker 默认值显示问题 - 优化数据获取和展示逻辑 - 完善分析器服务 - 新增 FastAPI 服务接口 - 改进账单清理器实现
29 lines
876 B
Go
29 lines
876 B
Go
// Package adapter 定义与外部系统交互的抽象接口
|
|
// 这样可以方便后续更换通信方式(如从子进程调用改为 HTTP/gRPC/消息队列等)
|
|
package adapter
|
|
|
|
// CleanOptions 清洗选项
|
|
type CleanOptions struct {
|
|
Year string // 年份筛选
|
|
Month string // 月份筛选
|
|
Start string // 起始日期
|
|
End string // 结束日期
|
|
Format string // 输出格式: csv/json
|
|
}
|
|
|
|
// CleanResult 清洗结果
|
|
type CleanResult struct {
|
|
BillType string // 检测到的账单类型: alipay/wechat
|
|
Output string // 脚本输出信息
|
|
}
|
|
|
|
// Cleaner 账单清洗器接口
|
|
// 负责将原始账单数据清洗为标准格式
|
|
type Cleaner interface {
|
|
// Clean 执行账单清洗
|
|
// inputPath: 输入文件路径
|
|
// outputPath: 输出文件路径
|
|
// opts: 清洗选项
|
|
Clean(inputPath, outputPath string, opts *CleanOptions) (*CleanResult, error)
|
|
}
|