docs(readme): 更新README.md文档,添加通知系统说明和角色层级权限
This commit is contained in:
parent
5f5c0759ce
commit
e5940fc833
120
README.md
120
README.md
@ -1,8 +1,8 @@
|
||||
# 可学AI-skills平台后端
|
||||
# 可学AI-实训网站2.0
|
||||
|
||||
## 项目简介
|
||||
|
||||
可学AI-skills平台是一个基于Spring Boot的智能技能管理系统,提供技能生成、内容管理、用户认证、支付等功能。
|
||||
平台是一个基于Spring Boot的智能技能实训管理系统,提供技能生成、课程管理、用户认证、通知系统等功能。
|
||||
|
||||
## 技术栈
|
||||
|
||||
@ -11,9 +11,7 @@
|
||||
- **数据库**:MySQL
|
||||
- **缓存**:Redis
|
||||
- **认证**:Sa-Token 1.38.0
|
||||
- **模板引擎**:Thymeleaf
|
||||
- **API文档**:Swagger 3.0.0
|
||||
- **文件处理**:sevenzipjbinding 16.02-2.01
|
||||
- **短信服务**:SMS4J 3.3.5
|
||||
- **分布式锁**:Redisson 3.23.5
|
||||
- **AI集成**:DeepSeek、GLM-4.6v
|
||||
@ -26,25 +24,24 @@ backend/
|
||||
├── db/ # 数据库脚本
|
||||
├── src/
|
||||
│ ├── main/
|
||||
│ │ ├── java/com/kexue/skills/ # 主源码
|
||||
│ │ ├── java/art/kexue/sxwz/ # 主源码
|
||||
│ │ │ ├── annotation/ # 自定义注解
|
||||
│ │ │ ├── aspect/ # AOP切面
|
||||
│ │ │ ├── common/ # 通用工具和常量
|
||||
│ │ │ ├── config/ # 配置类
|
||||
│ │ │ ├── controller/ # 控制器
|
||||
│ │ │ ├── entity/ # 实体类
|
||||
│ │ │ │ ├── dto/ # 数据传输对象
|
||||
│ │ │ │ └── request/ # 请求对象
|
||||
│ │ │ ├── exception/ # 异常处理
|
||||
│ │ │ ├── interceptor/ # 拦截器
|
||||
│ │ │ ├── mapper/ # 数据访问层
|
||||
│ │ │ ├── service/ # 服务层
|
||||
│ │ │ ├── task/ # 定时任务
|
||||
│ │ │ ├── utils/ # 工具类
|
||||
│ │ │ └── SkillsApp.java # 应用入口
|
||||
│ │ │ │ └── impl/ # 服务实现
|
||||
│ │ │ └── utils/ # 工具类
|
||||
│ │ └── resources/ # 资源文件
|
||||
│ │ ├── mapper/ # MyBatis映射文件
|
||||
│ │ ├── sql/ # SQL脚本
|
||||
│ │ ├── static/ # 静态资源
|
||||
│ │ ├── templates/ # Thymeleaf模板
|
||||
│ │ ├── application-*.yml # 配置文件
|
||||
│ │ └── logback-spring.xml # 日志配置
|
||||
│ └── test/ # 测试代码
|
||||
@ -61,41 +58,47 @@ backend/
|
||||
- 基于Sa-Token的认证系统
|
||||
- 支持账号密码登录
|
||||
- 支持手机验证码登录
|
||||
- 角色权限管理
|
||||
- 角色权限管理(多级管理员)
|
||||
- 防重复提交
|
||||
|
||||
### 2. 内容管理系统
|
||||
- 内容分类管理
|
||||
- 内容标签管理
|
||||
- 内容发布与管理
|
||||
- 内容点赞与浏览统计
|
||||
### 2. 通知系统
|
||||
- 系统通知(管理员操作记录)
|
||||
- 管理员对用户通知(支持多级发送)
|
||||
- 课程通知(老师群发课程消息)
|
||||
- 角色层级权限控制
|
||||
- 已读状态管理
|
||||
|
||||
### 3. 技能生成系统
|
||||
- 技能上传与解析(支持RAR等压缩格式)
|
||||
- 技能结构分析
|
||||
- 技能介绍生成
|
||||
### 3. 用户管理
|
||||
- 用户注册与登录
|
||||
- 用户信息管理
|
||||
- 角色分配(主要管理员、次级管理员、学校管理员、学院管理员、老师、学生)
|
||||
- 用户权限验证
|
||||
|
||||
### 4. 支付系统
|
||||
### 4. 课程管理
|
||||
- 课程创建与管理
|
||||
- 课程学生管理
|
||||
- 课程作业管理
|
||||
- 课程考试管理
|
||||
|
||||
### 5. 考勤系统
|
||||
- 考勤记录管理
|
||||
- 考勤统计
|
||||
|
||||
### 6. 优秀作品管理
|
||||
- 作品展示与管理
|
||||
- 作品点赞
|
||||
|
||||
### 7. 支付系统
|
||||
- 微信支付集成
|
||||
- 支付宝集成
|
||||
- 支付订单管理
|
||||
|
||||
### 5. 账户管理
|
||||
- 账户余额管理
|
||||
- 积分管理
|
||||
- 交易记录
|
||||
|
||||
### 6. 系统管理
|
||||
### 8. 系统管理
|
||||
- 菜单管理
|
||||
- 角色管理
|
||||
- 字典管理
|
||||
- 系统日志
|
||||
|
||||
### 7. AI集成
|
||||
- DeepSeek模型集成
|
||||
- GLM-4.6v模型集成
|
||||
- 智能内容生成
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 环境要求
|
||||
@ -111,8 +114,8 @@ backend/
|
||||
4. 修改 `application.yml` 文件中的短信服务配置
|
||||
|
||||
### 数据库初始化
|
||||
1. 执行 `db/create_tables.sql` 创建数据库表
|
||||
2. 执行 `db/init_data.sql` 初始化基础数据
|
||||
1. 执行 `db/create_edu_tables.sql` 创建数据库表
|
||||
2. 执行 `db/sys_role_permission_data_init_merged.sql` 初始化权限数据
|
||||
|
||||
### 启动项目
|
||||
```bash
|
||||
@ -134,47 +137,56 @@ mvn spring-boot:run
|
||||
- `POST /api/logout` - 用户登出
|
||||
- `GET /api/currentUser` - 获取当前用户信息
|
||||
|
||||
### 内容管理
|
||||
- `GET /api/cms/content/list` - 获取内容列表
|
||||
- `POST /api/cms/content/save` - 保存内容
|
||||
- `DELETE /api/cms/content/delete` - 删除内容
|
||||
### 通知管理
|
||||
- `POST /api/notification/send-to-users` - 发送通知给指定用户
|
||||
- `POST /api/notification/send-to-roles` - 发送通知给指定角色
|
||||
- `POST /api/notification/send-to-course` - 发送课程通知
|
||||
- `GET /api/notification/user` - 查询当前用户通知列表
|
||||
- `PUT /api/notification/user/{userId}/read-all` - 全部标记为已读
|
||||
|
||||
### 技能管理
|
||||
- `POST /api/skill/upload` - 上传技能
|
||||
- `POST /api/skill/analyze` - 分析技能结构
|
||||
- `POST /api/skill/genIntroduce` - 生成技能介绍
|
||||
### 用户管理
|
||||
- `GET /api/user/list` - 获取用户列表
|
||||
- `POST /api/user/save` - 保存用户
|
||||
- `DELETE /api/user/delete/{id}` - 删除用户
|
||||
|
||||
### 支付管理
|
||||
- `POST /api/pay/wx` - 微信支付
|
||||
- `POST /api/pay/alipay` - 支付宝支付
|
||||
- `GET /api/payment/order/list` - 获取支付订单列表
|
||||
### 课程管理
|
||||
- `GET /api/course/list` - 获取课程列表
|
||||
- `POST /api/course/save` - 保存课程
|
||||
- `GET /api/course/students/{courseId}` - 获取课程学生列表
|
||||
|
||||
## 角色层级权限
|
||||
|
||||
| 角色 | 角色类型 | 可通知对象 |
|
||||
|------|----------|-----------|
|
||||
| 主要管理员(SUPER) | 1 | 次级管理员、学校管理员、学院管理员、老师、学生 |
|
||||
| 次级管理员(SUPER1) | 1 | 学校管理员、学院管理员、老师、学生 |
|
||||
| 学校管理员(SCOOL_ADMIN) | 2 | 学院管理员、老师、学生 |
|
||||
| 学院管理员(COLLEGE_ADMIN) | 3 | 老师、学生 |
|
||||
| 老师(TEACHER) | 4 | 指定课程的学生 |
|
||||
| 学生(STUDENT) | 5 | 仅收件箱 |
|
||||
|
||||
## 部署说明
|
||||
|
||||
### Docker部署
|
||||
1. 构建Docker镜像
|
||||
```bash
|
||||
docker build -t agent-skills .
|
||||
docker build -t sxwz-backend .
|
||||
```
|
||||
|
||||
2. 运行Docker容器
|
||||
```bash
|
||||
docker run -p 8080:8080 --name agent-skills agent-skills
|
||||
docker run -p 8080:8080 --name sxwz-backend sxwz-backend
|
||||
```
|
||||
|
||||
### 生产环境部署
|
||||
1. 打包项目
|
||||
```bash
|
||||
mvn clean package -DskipTests
|
||||
|
||||
配置文件直接打在jar包内
|
||||
```
|
||||
|
||||
2. 部署jar包
|
||||
```bash
|
||||
java -jar agentSkills.jar --spring.profiles.active=prod
|
||||
或者执行脚本启动
|
||||
./start.sh
|
||||
java -jar sxwz-backend.jar --spring.profiles.active=prod
|
||||
```
|
||||
|
||||
## 注意事项
|
||||
@ -189,4 +201,4 @@ java -jar agentSkills.jar --spring.profiles.active=prod
|
||||
|
||||
## 联系方式
|
||||
|
||||
如有问题,请联系项目维护人员。
|
||||
如有问题,请联系项目维护人员。
|
||||
Loading…
Reference in New Issue
Block a user