# 牛只交易管理系统

## 项目简介
牛只交易管理系统是一个基于 Spring Boot 的现代化交易管理平台，提供牛只交付管理、设备监控、用户权限管理等功能。系统采用前后端分离架构，后端使用 Spring Boot + MyBatis-Plus 技术栈，集成多种高效的第三方服务和组件。

## 技术栈
- **基础框架**：Spring Boot 2.6.0
- **ORM 框架**：MyBatis-Plus 3.5.3.2
- **权限认证**：Sa-Token 1.37.0
- **数据库连接池**：Druid
- **任务调度**：XXL-Job
- **API 文档**：Swagger Fox 3.0.0
- **工具库**：Hutool 5.8.25
- **云服务**：腾讯云短信、对象存储服务

## 项目结构
```
tradeCattle
├── aiotagro-core        // 核心模块
├── aiotagro-redis      // Redis 操作模块
└── aiotagro-cattle-trade // 业务模块
    ├── controller      // 控制器层
    ├── service        // 服务层
    ├── mapper         // 数据访问层
    ├── entity         // 实体类
    ├── dto           // 数据传输对象
    ├── vo            // 视图对象
    ├── config        // 配置类
    └── constant      // 常量定义
```

## 核心功能
1. **交付管理**
   - 交付信息录入和管理
   - 设备绑定和监控
   - 交付状态追踪

2. **设备管理**
   - 客户端设备管理（JbqClient）
   - 服务器设备管理（JbqServer）
   - 设备日志记录和监控
   - 设备告警管理

3. **用户权限管理**
   - 用户管理
   - 角色管理
   - 菜单权限管理
   - 基于 Sa-Token 的认证授权

4. **系统监控**
   - 设备运行状态监控
   - 告警日志管理
   - 系统操作日志

## 特色功能
- **短信通知**：集成腾讯云短信服务，支持验证码发送和通知推送
- **文件存储**：使用腾讯云对象存储服务，提供可靠的文件存储方案
- **任务调度**：集成 XXL-Job，支持分布式任务调度
- **接口文档**：集成 Swagger Fox，提供在线 API 文档和调试功能

## 项目配置
1. **数据库配置**
   - 使用 Druid 数据库连接池
   - 支持多数据源配置

2. **Redis 配置**
   - 独立的 Redis 模块
   - 支持缓存和会话管理

3. **权限配置**
   - 基于 Sa-Token 的权限认证
   - 支持多种登录方式
   - 灵活的权限控制策略

## 开发环境要求
- JDK 8+
- Maven 3.6+
- MySQL 5.7+
- Redis 5.0+

## 部署说明
1. 克隆项目到本地
2. 配置数据库连接信息
3. 配置 Redis 连接信息
4. 配置腾讯云相关服务密钥
5. 执行数据库初始化脚本
6. 使用 Maven 打包项目
7. 部署运行

## 注意事项
- 确保已正确配置腾讯云服务相关密钥
- 注意数据库的字符集设置
- 建议在生产环境使用 Redis 集群
- 建议配置适当的日志级别和日志存储策略

## 版本信息
- 当前版本：1.0.1
- 更新日期：2024年
