duidui_fiber/scripts/README_permissions.md
2026-03-27 10:34:03 +08:00

102 lines
2.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 权限初始化说明
## 概述
本目录包含权限初始化脚本,用于将系统中的所有功能权限自动导入到 `admin_permissions` 表中。
## 权限分类
系统权限按模块分类,共包含以下模块:
### 1. 管理员管理 (admin)
- 管理员用户管理:创建、查看、更新、删除
- 角色管理:创建、查看、更新、删除、设置权限
- 权限管理:创建、查看、更新、删除
### 2. 打卡营管理 (camp)
- 分类管理:创建、查看、更新、删除
- 打卡营管理:创建、查看、更新、删除
- 小节管理:创建、查看、更新、删除
- 任务管理:创建、查看、更新、删除
- 用户进度管理:查看、更新、重置
- 用户打卡营管理:查看、加入、重置进度
### 3. 订单管理 (order)
- 订单:创建、查看、更新状态
### 4. 题目试卷管理 (question)
- 题目管理:创建、查看、更新、删除、批量删除
- 试卷管理:创建、查看、更新、删除、批量删除、添加题目、移除题目
- 答题记录管理:创建、查看、删除、统计
### 5. 统计 (statistics)
- 仪表盘统计:查看
### 6. OSS (oss)
- OSS上传获取上传凭证
### 7. 支付 (payment)
- 微信支付:创建订单、处理通知
### 8. 调度器 (scheduler)
- 调度任务:创建、查看、删除
## 使用方法
### 方法一:使用 Go 脚本(推荐)
```bash
cd dd_fiber_api
go run scripts/init_permissions.go
```
或者指定配置文件路径:
```bash
go run scripts/init_permissions.go config.yaml
```
### 方法二:使用 SQL 脚本
直接执行 SQL 文件:
```bash
mysql -u root -p duidui_db < docs/init_permissions.sql
```
或者在 MySQL 客户端中执行:
```sql
source docs/init_permissions.sql;
```
## 权限代码格式
权限代码采用 `资源:操作` 的格式,例如:
- `admin:user:create` - 管理员模块的用户创建操作
- `camp:camp:read` - 打卡营模块的打卡营查看操作
- `question:paper:update` - 题目模块的试卷更新操作
## 注意事项
1. 脚本使用 `ON DUPLICATE KEY UPDATE`,如果权限已存在,会更新其信息
2. 权限 ID 从 1001 开始,按模块分段分配:
- 1000-1999: 管理员管理
- 2000-2999: 打卡营管理
- 3000-3999: 订单管理
- 4000-4999: 题目试卷管理
- 5000-5999: 统计
- 6000-6999: OSS
- 7000-7999: 支付
- 8000-8999: 调度器
3. 执行脚本前请确保数据库连接配置正确
4. 建议在首次部署或权限结构变更时执行此脚本
## 后续操作
权限初始化完成后,可以:
1. 创建角色并分配权限
2. 为管理员用户分配角色
3. 在路由中使用权限中间件进行权限控制