4.2 KiB
4.2 KiB
后端文件清单
已创建和补全的文件
核心配置类
- ✅
AccountingApplication.java- Spring Boot应用入口 - ✅
config/JwtConfig.java- JWT配置和工具类 - ✅
config/JwtAuthenticationFilter.java- JWT认证过滤器 - ✅
config/SecurityConfig.java- Spring Security配置 - ✅
config/UserDetailsServiceImpl.java- 用户详情服务实现 - ✅
config/AliyunOcrConfig.java- 阿里云OCR配置
实体类(Entity)
- ✅
entity/User.java- 用户实体 - ✅
entity/Category.java- 分类实体 - ✅
entity/Bill.java- 账单实体 - ✅
entity/OcrRecord.java- OCR记录实体
数据访问层(Mapper)
- ✅
mapper/UserMapper.java- 用户Mapper接口 - ✅
mapper/CategoryMapper.java- 分类Mapper接口 - ✅
mapper/BillMapper.java- 账单Mapper接口 - ✅
mapper/OcrRecordMapper.java- OCR记录Mapper接口
业务逻辑层(Service)
- ✅
service/AuthService.java- 认证服务(注册、登录) - ✅
service/BillService.java- 账单服务(CRUD操作) - ✅
service/CategoryService.java- 分类服务(CRUD操作) - ✅
service/StatisticsService.java- 统计服务(按日/周/月统计) - ✅
service/OcrService.java- OCR识别服务
控制器层(Controller)
- ✅
controller/AuthController.java- 认证控制器(注册、登录接口) - ✅
controller/BillController.java- 账单控制器(账单CRUD接口) - ✅
controller/CategoryController.java- 分类控制器(分类CRUD接口) - ✅
controller/StatisticsController.java- 统计控制器(统计查询接口) - ✅
controller/OcrController.java- OCR控制器(OCR识别接口)
数据传输对象(DTO)
- ✅
dto/LoginRequest.java- 登录请求DTO - ✅
dto/RegisterRequest.java- 注册请求DTO - ✅
dto/AuthResponse.java- 认证响应DTO - ✅
dto/BillRequest.java- 账单请求DTO - ✅
dto/BillResponse.java- 账单响应DTO - ✅
dto/CategoryRequest.java- 分类请求DTO - ✅
dto/CategoryResponse.java- 分类响应DTO - ✅
dto/StatisticsResponse.java- 统计响应DTO - ✅
dto/OcrResponse.java- OCR响应DTO
工具类(Util)
- ✅
util/FileUtil.java- 文件上传工具类 - ✅
util/OcrAmountParser.java- OCR金额解析工具类
配置文件
- ✅
pom.xml- Maven依赖配置 - ✅
src/main/resources/application.yml- 应用配置文件 - ✅
src/main/resources/db/schema.sql- 数据库表结构SQL脚本
已修复的问题
- ✅ AuthService - 清理了测试代码,移除了不必要的导入
- ✅ JwtConfig - 修复了JWT解析器API调用(使用parserBuilder)
- ✅ OcrService - 修复了Base64编码问题(使用Base64字符串而不是InputStream)
- ✅ BillService - 补全了完整的账单服务实现
- ✅ BillController - 补全了完整的账单控制器实现
- ✅ CategoryController - 补全了完整的分类控制器实现
- ✅ StatisticsController - 补全了完整的统计控制器实现
功能模块
1. 认证模块
- 用户注册(密码加密存储)
- 用户登录(JWT token生成)
- JWT token验证和过滤
2. 账单管理模块
- 创建账单
- 更新账单
- 删除账单
- 查询账单列表(支持日期范围)
- 查询账单详情
3. 分类管理模块
- 获取分类列表(系统预设+用户自定义)
- 创建自定义分类
- 更新分类
- 删除分类(系统分类不可删除)
4. 统计模块
- 按日期范围统计
- 按周统计
- 按月统计
- 分类统计
- 收入/支出统计
5. OCR识别模块
- 图片上传
- 阿里云OCR识别
- 金额、商户、日期解析
- OCR记录保存
注意事项
- 数据库配置:需要在
application.yml中配置MySQL连接信息 - 阿里云OCR配置:需要配置AccessKey和SecretKey(建议使用环境变量)
- 文件上传路径:确保
file.upload.path配置的目录存在且有写权限 - JWT密钥:生产环境请修改
jwt.secret配置 - 数据库初始化:执行
schema.sql创建数据库表和预设分类
下一步
- 执行数据库脚本创建表结构
- 配置application.yml中的数据库和OCR信息
- 启动Spring Boot应用
- 访问API文档:http://localhost:8080/doc.html