trigger: verify valid_volumes after runner restart

This commit is contained in:
runner
2026-08-26 16:23:30 +08:00
commit 46d1c1d7ed
64 changed files with 4513 additions and 0 deletions
+110
View File
@@ -0,0 +1,110 @@
# Freedom Admin
基于 **Spring Boot 2.7.10** 的后台管理系统后端服务,提供用户、角色、部门、权限等基础管理能力。
## 技术栈
| 分类 | 技术 |
| ---- | ---- |
| 核心框架 | Spring Boot 2.7.10 |
| 安全框架 | Spring Security 3.3.2 + JWT(jjwt 0.9.1) |
| ORM | MyBatis-Plus 3.5.7 + PageHelper 2.1.0 |
| 模板引擎 | Thymeleaf(登录页等) |
| 数据库 | MySQL 8.0(utf8mb4) |
| 连接池 | HikariCP |
| 其他 | Lombok、Fastjson、Guava、Spring Mail |
## 项目结构
```
freedom-admin
├── sql/
│ └── init.sql # 数据库初始化脚本(建库建表 + 基础数据)
├── src/main/java/com/freedom/admin/
│ ├── AdminApplication.java # 启动类
│ ├── base/ # 基础类与通用返回结构
│ ├── common/ # 通用常量 / 工具
│ ├── config/ # Spring Security、JWT 等配置
│ ├── controller/ # 控制器层
│ ├── entity/ # 实体类
│ ├── mapper/ # MyBatis-Plus Mapper
│ ├── service/ # 业务层
│ └── util/ # 工具类
└── src/main/resources/
├── mapper/ # MyBatis XML 映射文件
├── logback-spring.xml # 日志配置(控制台 UTF-8)
└── application.yml # 应用配置
```
## 数据模型
| 表 | 说明 |
| -- | ---- |
| `t_sys_user` | 用户表(BCRYPT 密码加密) |
| `t_sys_dept` | 部门表(支持树形层级) |
| `t_sys_role` | 角色表 |
| `t_sys_permission` | 权限 / 菜单表(动态路由数据源) |
| `t_sys_user_role` | 用户-角色关联表 |
| `t_sys_role_permission` | 角色-权限关联表 |
## 功能特性
- **用户管理**:用户注册、登录、JWT 认证、信息维护
- **角色管理**:角色 CRUD、角色-权限绑定
- **部门管理**:树形部门结构
- **权限管理**:菜单 / 权限点维护,驱动前端动态路由
- **邮件服务**:基于 Spring Mail 的邮件发送能力
- **系统特性**:统一异常处理、PageHelper 分页、逻辑删除、接口权限控制
## 快速开始
### 环境要求
- JDK 1.8+
- Maven 3.6.3+
- MySQL 8.0+
### 1. 初始化数据库
```bash
mysql -u root -p < sql/init.sql
```
脚本会自动创建 `freedom_db` 数据库、全部业务表并写入基础数据(默认管理员账号 `admin` / `123456`)。
### 2. 修改数据库配置
编辑 `src/main/resources/application.yml`:
```yaml
spring:
datasource:
url: jdbc:mysql://localhost:3306/freedom_db?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
username: root
password: your_password
```
### 3. 启动服务
```bash
# 开发运行
mvn spring-boot:run
# 或打包运行
mvn clean package -DskipTests
java -jar target/freedom-admin-1.0.1.jar
```
> Windows 下可直接使用 `start.bat` 启动(已自动设置控制台 UTF-8 编码,避免中文日志乱码)。
启动后服务地址:`http://localhost:8800`
## 注意事项
- JWT 密钥与过期时间在 `application.yml` 的 `jwt` 节点配置,生产环境请务必更换密钥。
- 邮件授权码请使用邮箱服务商提供的 SMTP 授权码,勿直接使用登录密码。
- 表 / 列中文注释建议使用 UTF-8 编码执行脚本,避免乱码入库。
## License
本项目仅用于内部学习与研究使用。