AI-accounting-soft/BACKEND_FILES_CHECKLIST.md
2025-12-12 16:37:27 +08:00

4.2 KiB
Raw Permalink Blame History

后端文件清单

已创建和补全的文件

核心配置类

  • 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脚本

已修复的问题

  1. AuthService - 清理了测试代码,移除了不必要的导入
  2. JwtConfig - 修复了JWT解析器API调用使用parserBuilder
  3. OcrService - 修复了Base64编码问题使用Base64字符串而不是InputStream
  4. BillService - 补全了完整的账单服务实现
  5. BillController - 补全了完整的账单控制器实现
  6. CategoryController - 补全了完整的分类控制器实现
  7. StatisticsController - 补全了完整的统计控制器实现

功能模块

1. 认证模块

  • 用户注册(密码加密存储)
  • 用户登录JWT token生成
  • JWT token验证和过滤

2. 账单管理模块

  • 创建账单
  • 更新账单
  • 删除账单
  • 查询账单列表(支持日期范围)
  • 查询账单详情

3. 分类管理模块

  • 获取分类列表(系统预设+用户自定义)
  • 创建自定义分类
  • 更新分类
  • 删除分类(系统分类不可删除)

4. 统计模块

  • 按日期范围统计
  • 按周统计
  • 按月统计
  • 分类统计
  • 收入/支出统计

5. OCR识别模块

  • 图片上传
  • 阿里云OCR识别
  • 金额、商户、日期解析
  • OCR记录保存

注意事项

  1. 数据库配置:需要在application.yml中配置MySQL连接信息
  2. 阿里云OCR配置需要配置AccessKey和SecretKey建议使用环境变量
  3. 文件上传路径:确保file.upload.path配置的目录存在且有写权限
  4. JWT密钥:生产环境请修改jwt.secret配置
  5. 数据库初始化:执行schema.sql创建数据库表和预设分类

下一步

  1. 执行数据库脚本创建表结构
  2. 配置application.yml中的数据库和OCR信息
  3. 启动Spring Boot应用
  4. 访问API文档http://localhost:8080/doc.html