docs: 同步需求与技术方案文档
This commit is contained in:
parent
6027a8c5df
commit
1a0b75e437
|
|
@ -18,6 +18,7 @@
|
|||
| 版本 | 日期 | 修订人 | 修订内容 |
|
||||
| ---- | ---------- | ----- | ---- |
|
||||
| V1.0 | 2026-01-31 | pangu | 初稿 |
|
||||
| V1.1 | 2026-02-03 | pangu | 更新会员多教育身份模型、微信扫码登录流程 |
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -193,6 +194,8 @@
|
|||
| 家长 | 通过小程序/H5注册的家长用户 | 可绑定多个学生(不限学校) |
|
||||
| 教师 | 通过小程序/H5注册的教师用户 | 需绑定所属学校,只能绑定本校学生 |
|
||||
|
||||
> **多教育身份说明**:一个会员可以同时拥有多个教育身份(如在多个班级任教),每个教育身份独立包含学校、年级、班级、学科信息。会员首次绑定学生时,如无教育身份则默认设为"家长"身份。
|
||||
|
||||
---
|
||||
|
||||
## 4. 功能需求
|
||||
|
|
@ -269,17 +272,18 @@
|
|||
|
||||
| 规则编号 | 规则描述 |
|
||||
| ------- | ---------------------------- |
|
||||
| MEM-R01 | 会员编号由系统自动生成,格式:JS + 时间戳 |
|
||||
| MEM-R02 | 昵称未填写时,系统自动生成默认昵称 |
|
||||
| MEM-R01 | 会员编号由系统自动生成,格式:M + 时间戳 |
|
||||
| MEM-R02 | 昵称未填写时,系统自动生成默认昵称(user_手机号后4位)|
|
||||
| MEM-R03 | 手机号为必填项,需验证格式有效性和唯一性 |
|
||||
| MEM-R04 | 出生日期和性别为选填项 |
|
||||
| MEM-R05 | 身份类型为"教师"时,必须选择所属区域/学校/年级/班级 |
|
||||
| MEM-R06 | 身份类型为"教师"时,只能绑定同校学生 |
|
||||
| MEM-R07 | 身份类型为"家长"时,不显示区域信息,可绑定任意学生 |
|
||||
| MEM-R05 | 会员可添加多个教育身份,每个教育身份包含学校/年级/班级/学科 |
|
||||
| MEM-R06 | 有教育身份的会员绑定学生时,校验学生学校与教育身份学校一致 |
|
||||
| MEM-R07 | 无教育身份的会员可绑定任意学校的学生,首次绑定后默认设为"家长"身份 |
|
||||
| MEM-R08 | 删除会员前需检查是否绑定学生,有则不允许删除 |
|
||||
| MEM-R09 | 重置密码后,需弹窗显示新密码并提供复制功能 |
|
||||
| MEM-R10 | 禁用会员后,该用户无法登录任何端 |
|
||||
| MEM-R11 | 使用RuoYi鉴权体系,区分后台用户和会员信息 |
|
||||
| MEM-R11 | 使用Sa-Token鉴权体系,区分后台用户和会员信息 |
|
||||
| MEM-R12 | 会员可设置一个默认教育身份,用于业务默认展示 |
|
||||
|
||||
#### 4.2.4 登录方式支持
|
||||
|
||||
|
|
@ -287,7 +291,13 @@
|
|||
| --------- | ----------------- |
|
||||
| 手机号 + 验证码 | 发送短信验证码登录 |
|
||||
| 手机号 + 密码 | 使用账号密码登录 |
|
||||
| 微信登录 | 通过微信授权登录,获取openId |
|
||||
| 微信扫码登录 | 扫描二维码授权登录,首次需绑定手机号 |
|
||||
|
||||
> **微信扫码登录流程**:
|
||||
> 1. 用户点击微信登录,获取二维码
|
||||
> 2. 用户使用微信扫码确认
|
||||
> 3. 如已绑定手机号,直接登录成功
|
||||
> 4. 如未绑定手机号,需输入手机号和短信验证码完成绑定后登录
|
||||
|
||||
#### 4.2.5 数据项说明
|
||||
|
||||
|
|
@ -298,18 +308,26 @@
|
|||
| 会员编号 | 文本 | ✓ | 系统自动生成,唯一 |
|
||||
| 手机号 | 文本 | ✓ | 11位手机号,唯一 |
|
||||
| 昵称 | 文本 | - | 最大长度50字符 |
|
||||
| 头像 | URL | - | 头像图片地址 |
|
||||
| 性别 | 枚举 | - | 男/女/未知 |
|
||||
| 出生日期 | 日期 | - | 格式:YYYY-MM-DD |
|
||||
| 身份类型 | 枚举 | ✓ | 家长/教师 |
|
||||
| 所属区域 | 树形选择 | 条件必填 | 教师身份必填 |
|
||||
| 所属学校 | 下拉选择 | 条件必填 | 教师身份必填 |
|
||||
| 所属年级 | 下拉选择 | 条件必填 | 教师身份必填 |
|
||||
| 所属班级 | 下拉选择 | 条件必填 | 教师身份必填 |
|
||||
| openId | 文本 | - | 微信用户标识 |
|
||||
| 注册时间 | 日期时间 | - | 系统自动记录 |
|
||||
| 注册来源 | 枚举 | - | 小程序/H5/后台新增 |
|
||||
| 状态 | 开关 | ✓ | 启用/禁用 |
|
||||
|
||||
**教育身份信息(多条)**
|
||||
|
||||
| 字段名称 | 字段类型 | 必填 | 说明 |
|
||||
| ------ | ---- |:----:| ----------- |
|
||||
| 教育身份ID | 数字 | ✓ | 系统自动生成 |
|
||||
| 所属区域 | 树形选择 | ✓ | 省-市-区三级 |
|
||||
| 所属学校 | 下拉选择 | ✓ | 依赖区域 |
|
||||
| 所属年级 | 下拉选择 | ✓ | 依赖学校 |
|
||||
| 所属班级 | 下拉选择 | ✓ | 依赖年级 |
|
||||
| 任教学科 | 下拉选择 | ✓ | 学科列表 |
|
||||
| 是否默认 | 布尔 | ✓ | 默认教育身份 |
|
||||
|
||||
---
|
||||
|
||||
### 4.3 学生管理模块
|
||||
|
|
@ -619,8 +637,9 @@
|
|||
| **参与者** | 会员(家长/教师) |
|
||||
| **前置条件** | 用户已注册账号 |
|
||||
| **后置条件** | 用户成功登录,获取访问Token |
|
||||
| **基本流程** | 1. 用户打开登录页面<br>2. 用户选择登录方式(验证码/密码/微信)<br>3. 用户输入登录信息<br>4. 系统验证登录信息<br>5. 验证通过,生成Token并返回<br>6. 跳转到首页 |
|
||||
| **基本流程** | 1. 用户打开登录页面<br>2. 用户选择登录方式(验证码/密码/微信扫码)<br>3. 用户输入登录信息或扫描二维码<br>4. 系统验证登录信息<br>5. 验证通过,生成Token并返回<br>6. 跳转到首页 |
|
||||
| **异常流程** | 3a. 手机号格式错误,提示"请输入正确的手机号"<br>4a. 验证码错误,提示"验证码错误"<br>4b. 密码错误,提示"密码错误"<br>4c. 密码错误5次,锁定账号10分钟<br>4d. 账号被禁用,提示"账号已被禁用" |
|
||||
| **微信扫码流程** | 1. 用户点击微信登录<br>2. 系统生成二维码并展示<br>3. 用户使用微信扫码确认<br>4a. 已绑定手机号,直接登录成功<br>4b. 未绑定手机号,进入绑定流程<br>5. 用户输入手机号和短信验证码<br>6. 绑定成功并登录 |
|
||||
|
||||
### 6.2 UC-002 批量导入学生
|
||||
|
||||
|
|
@ -792,8 +811,8 @@
|
|||
| 7 | 昵称未填写时,自动生成 |
|
||||
| 8 | 会员编号自动生成 |
|
||||
| 9 | 出生日期和性别选填 |
|
||||
| 10 | 身份信息为老师时,需要选择对应的区域/学校/年级/班级,学生信息从学生管理的数据中选择绑定,只允许选择与老师所属学校一样的学生 |
|
||||
| 11 | 身份信息为家长时,不显示区域/学校/年级/班级,学生允许随便选择 |
|
||||
| 10 | 会员可添加多个教育身份(教师身份),每个教育身份需选择区域/学校/年级/班级/学科,绑定学生时校验学校一致性 |
|
||||
| 11 | 无教育身份的会员可绑定任意学校的学生,首次绑定后默认设为"家长"身份 |
|
||||
|
||||
**示例数据:**
|
||||
- 会员编号:JS123123123
|
||||
|
|
|
|||
|
|
@ -2,7 +2,8 @@
|
|||
|
||||
> 作者:pangu
|
||||
> 创建时间:2026-02-02
|
||||
> 版本:v1.1
|
||||
> 更新时间:2026-02-04
|
||||
> 版本:v1.2
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -57,6 +58,51 @@
|
|||
|------|------|
|
||||
| **接口** | `POST /h5/auth/logout` |
|
||||
|
||||
#### 2.1.7 微信扫码登录
|
||||
|
||||
##### 2.1.7.1 获取微信扫码登录二维码
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `GET /h5/auth/wechat/qrcode` |
|
||||
| **返回** | qrcodeUrl(二维码URL)、ticket(二维码凭证)、expireSeconds(有效期秒数) |
|
||||
| **有效期** | 默认5分钟 |
|
||||
|
||||
##### 2.1.7.2 查询微信扫码状态
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `GET /h5/auth/wechat/status/{ticket}` |
|
||||
| **返回** | status(waiting/scanned/confirmed/expired)、tempCode(确认后返回) |
|
||||
| **轮询建议** | 每2秒查询一次 |
|
||||
|
||||
##### 2.1.7.3 微信扫码登录
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `POST /h5/auth/wechat/login` |
|
||||
| **请求参数** | ticket(二维码凭证)、tempCode(临时登录码) |
|
||||
| **返回** | needBindPhone=false时返回Token;needBindPhone=true时返回bindToken需绑定手机号 |
|
||||
|
||||
##### 2.1.7.4 发送微信绑定手机号短信验证码
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `POST /h5/auth/wechat/sms/send` |
|
||||
| **请求参数** | phone(手机号)、captchaCode(图形验证码)、uuid |
|
||||
| **业务场景** | 微信首次登录时绑定手机号 |
|
||||
|
||||
##### 2.1.7.5 微信登录绑定手机号
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `POST /h5/auth/wechat/bindPhone` |
|
||||
| **请求参数** | bindToken、phone、smsCode、captchaCode、uuid |
|
||||
| **业务逻辑** | 手机号已存在则绑定到现有账号,否则创建新会员 |
|
||||
| **返回** | accessToken、refreshToken |
|
||||
|
||||
##### 2.1.7.6 微信回调处理
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `GET /h5/auth/wechat/callback` |
|
||||
| **请求参数** | code(微信授权码)、state(即ticket) |
|
||||
| **业务场景** | 前端回调页面收到微信code后调用 |
|
||||
|
||||
---
|
||||
|
||||
### 2.2 注册模块
|
||||
|
|
@ -84,7 +130,7 @@
|
|||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `GET /h5/member/info` |
|
||||
| **返回** | memberId、phone(脱敏)、nickname、avatar、gender、birthday、registerTime、identityType、教育信息、绑定学生列表 |
|
||||
| **返回** | memberId、memberCode、phone(脱敏)、nickname、avatar、gender、birthday、registerTime、educations(教育身份列表)、students(绑定学生列表) |
|
||||
|
||||
#### 2.3.2 修改会员基本信息
|
||||
| 项目 | 说明 |
|
||||
|
|
@ -106,25 +152,41 @@
|
|||
|
||||
---
|
||||
|
||||
### 2.5 教育身份管理(教师身份)
|
||||
### 2.5 教育身份管理(多教育身份)
|
||||
|
||||
#### 2.5.1 添加/修改教育身份
|
||||
> **设计说明**:一个会员可以有多个教育身份(如同时在多个班级任教),每个教育身份独立管理。
|
||||
|
||||
#### 2.5.1 添加教育身份
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `POST /h5/member/education` |
|
||||
| **接口** | `POST /h5/member/educations` |
|
||||
| **请求参数** | schoolId(学校)、schoolGradeId(年级)、schoolClassId(班级)、subjectId(学科) |
|
||||
| **业务逻辑** | 设置会员身份为"教师",关联学校班级学科信息 |
|
||||
| **业务逻辑** | 添加一条教育身份记录,支持多条 |
|
||||
|
||||
#### 2.5.2 获取教育身份信息
|
||||
#### 2.5.2 获取教育身份列表
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `GET /h5/member/education` |
|
||||
| **返回** | 学校、年级、班级、学科名称及ID |
|
||||
| **接口** | `GET /h5/member/educations` |
|
||||
| **返回** | 教育身份列表(每条包含:educationId、学校、年级、班级、学科名称及ID、是否默认) |
|
||||
|
||||
#### 2.5.3 删除教育身份
|
||||
#### 2.5.3 修改教育身份
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `DELETE /h5/member/education` |
|
||||
| **接口** | `PUT /h5/member/educations/{educationId}` |
|
||||
| **请求参数** | schoolId(学校)、schoolGradeId(年级)、schoolClassId(班级)、subjectId(学科) |
|
||||
| **业务逻辑** | 修改指定教育身份的信息 |
|
||||
|
||||
#### 2.5.4 删除教育身份
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `DELETE /h5/member/educations/{educationId}` |
|
||||
| **业务逻辑** | 删除指定的教育身份记录 |
|
||||
|
||||
#### 2.5.5 设置默认教育身份
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `PUT /h5/member/educations/{educationId}/default` |
|
||||
| **业务逻辑** | 将指定教育身份设为默认,其他教育身份自动取消默认状态 |
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -168,7 +230,19 @@
|
|||
|
||||
---
|
||||
|
||||
### 2.8 接口规范
|
||||
### 2.8 操作日志
|
||||
|
||||
#### 2.8.1 获取操作日志列表
|
||||
| 项目 | 说明 |
|
||||
|------|------|
|
||||
| **接口** | `GET /h5/member/logs` |
|
||||
| **请求参数** | pageNum(页码,默认1)、pageSize(每页条数,默认10) |
|
||||
| **返回** | 分页的操作日志列表(操作类型、操作内容、操作时间、IP地址等) |
|
||||
| **业务场景** | 用户查看自己的操作记录 |
|
||||
|
||||
---
|
||||
|
||||
### 2.9 接口规范
|
||||
|
||||
| 规范项 | 说明 |
|
||||
|------|------|
|
||||
|
|
@ -187,18 +261,18 @@
|
|||
在 `pangu-business` 模块下新建 `h5` 包:
|
||||
|
||||
```
|
||||
backend/ruoyi-modules/pangu-business/src/main/java/org/dromara/pangu/
|
||||
backend/pangu-modules/pangu-business/src/main/java/org/dromara/pangu/
|
||||
├── h5/ # H5接口模块
|
||||
│ ├── config/
|
||||
│ │ └── H5SmsProperties.java # 短信防刷配置类
|
||||
│ ├── controller/
|
||||
│ │ ├── H5AuthController.java # 认证接口
|
||||
│ │ ├── H5MemberController.java # 会员信息接口
|
||||
│ │ ├── H5AuthController.java # 认证接口(含微信登录)
|
||||
│ │ ├── H5MemberController.java # 会员信息接口(含多教育身份)
|
||||
│ │ └── H5BaseDataController.java # 基础数据接口
|
||||
│ ├── service/
|
||||
│ │ ├── H5AuthService.java # 认证服务接口
|
||||
│ │ ├── impl/
|
||||
│ │ │ └── H5AuthServiceImpl.java # 认证服务实现
|
||||
│ │ │ └── H5AuthServiceImpl.java # 认证服务实现(含微信登录)
|
||||
│ │ ├── H5MemberService.java # 会员服务接口
|
||||
│ │ └── impl/
|
||||
│ │ └── H5MemberServiceImpl.java # 会员服务实现
|
||||
|
|
@ -211,13 +285,19 @@ backend/ruoyi-modules/pangu-business/src/main/java/org/dromara/pangu/
|
|||
│ │ ├── H5MemberUpdateDto.java # 会员信息修改
|
||||
│ │ ├── H5PasswordUpdateDto.java # 密码修改
|
||||
│ │ ├── H5EducationDto.java # 教育身份
|
||||
│ │ └── H5StudentBindDto.java # 绑定学生
|
||||
│ │ ├── H5StudentBindDto.java # 绑定学生
|
||||
│ │ ├── WechatLoginDto.java # 微信登录
|
||||
│ │ └── WechatBindPhoneDto.java # 微信绑定手机号
|
||||
│ └── vo/ # 响应VO
|
||||
│ ├── H5LoginVo.java # 登录响应
|
||||
│ ├── H5CaptchaVo.java # 验证码响应
|
||||
│ ├── H5MemberInfoVo.java # 会员信息
|
||||
│ ├── H5MemberInfoVo.java # 会员信息(含教育身份列表)
|
||||
│ ├── H5EducationVo.java # 教育身份
|
||||
│ └── H5StudentVo.java # 学生信息
|
||||
│ ├── H5StudentVo.java # 学生信息
|
||||
│ ├── H5MemberLogVo.java # 操作日志
|
||||
│ ├── WechatQrcodeVo.java # 微信二维码
|
||||
│ ├── WechatStatusVo.java # 微信扫码状态
|
||||
│ └── WechatLoginVo.java # 微信登录响应
|
||||
```
|
||||
|
||||
### 3.2 接口路径规划
|
||||
|
|
@ -225,7 +305,11 @@ backend/ruoyi-modules/pangu-business/src/main/java/org/dromara/pangu/
|
|||
| 模块 | 路径前缀 | 认证要求 |
|
||||
|------|---------|---------|
|
||||
| 认证接口 | `/h5/auth/*` | 无需认证 |
|
||||
| 微信登录 | `/h5/auth/wechat/*` | 无需认证 |
|
||||
| 会员接口 | `/h5/member/*` | 需要Token |
|
||||
| 教育身份 | `/h5/member/educations/*` | 需要Token |
|
||||
| 学生管理 | `/h5/member/student/*` | 需要Token |
|
||||
| 操作日志 | `/h5/member/logs` | 需要Token |
|
||||
| 基础数据 | `/h5/base/*` | 无需认证 |
|
||||
|
||||
### 3.3 认证方案(Sa-Token)
|
||||
|
|
@ -383,14 +467,15 @@ H5 Service(新建)
|
|||
|
||||
| 序号 | 内容 | 文件 |
|
||||
|------|------|------|
|
||||
| 1 | DTO类 | H5PasswordLoginDto, H5SmsLoginDto, H5RegisterDto, H5SmsSendDto, H5MemberUpdateDto, H5PasswordUpdateDto, H5EducationDto, H5StudentBindDto |
|
||||
| 2 | VO类 | H5LoginVo, H5CaptchaVo, H5MemberInfoVo, H5EducationVo, H5StudentVo |
|
||||
| 3 | 认证服务 | H5AuthService, H5AuthServiceImpl |
|
||||
| 4 | 会员服务 | H5MemberService, H5MemberServiceImpl |
|
||||
| 5 | Controller | H5AuthController, H5MemberController, H5BaseDataController |
|
||||
| 1 | DTO类 | H5PasswordLoginDto, H5SmsLoginDto, H5RegisterDto, H5SmsSendDto, H5MemberUpdateDto, H5PasswordUpdateDto, H5EducationDto, H5StudentBindDto, WechatLoginDto, WechatBindPhoneDto |
|
||||
| 2 | VO类 | H5LoginVo, H5CaptchaVo, H5MemberInfoVo, H5EducationVo, H5StudentVo, H5MemberLogVo, WechatQrcodeVo, WechatStatusVo, WechatLoginVo |
|
||||
| 3 | 认证服务 | H5AuthService, H5AuthServiceImpl(含微信登录) |
|
||||
| 4 | 会员服务 | H5MemberService, H5MemberServiceImpl(含多教育身份、操作日志) |
|
||||
| 5 | Controller | H5AuthController(含微信登录), H5MemberController(含多教育身份), H5BaseDataController |
|
||||
| 6 | 安全配置 | SecurityConfig(添加放行规则) |
|
||||
| 7 | 短信配置 | application-dev.yml |
|
||||
| 8 | 微信配置 | 微信开放平台AppID、AppSecret配置 |
|
||||
|
||||
---
|
||||
|
||||
*最后更新: 2026-02-02*
|
||||
*最后更新: 2026-02-03*
|
||||
|
|
|
|||
|
|
@ -0,0 +1,394 @@
|
|||
# 盘古用户认证中心 - 接口清单
|
||||
|
||||
> 本文档列出系统所有接口的地址和说明
|
||||
> 作者: pangu
|
||||
> 更新日期: 2026-02-03
|
||||
|
||||
---
|
||||
|
||||
## 一、H5端接口
|
||||
|
||||
### 1.1 H5认证接口
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| -------------- | ------ | ---------------------------------- |
|
||||
| 获取图形验证码 | GET | `/h5/auth/captcha` |
|
||||
| 发送短信验证码 | POST | `/h5/auth/sms/send` |
|
||||
| 密码登录 | POST | `/h5/auth/login/password` |
|
||||
| 短信验证码登录 | POST | `/h5/auth/login/sms` |
|
||||
| 会员注册 | POST | `/h5/auth/register` |
|
||||
| 刷新Token | POST | `/h5/auth/refresh` |
|
||||
| 退出登录 | POST | `/h5/auth/logout` |
|
||||
| 获取微信扫码登录二维码 | GET | `/h5/auth/wechat/qrcode` |
|
||||
| 查询微信扫码状态 | GET | `/h5/auth/wechat/status/{ticket}` |
|
||||
| 微信扫码登录 | POST | `/h5/auth/wechat/login` |
|
||||
| 发送微信绑定手机号短信验证码 | POST | `/h5/auth/wechat/sms/send` |
|
||||
| 微信登录绑定手机号 | POST | `/h5/auth/wechat/bindPhone` |
|
||||
| 微信回调处理 | GET | `/h5/auth/wechat/callback` |
|
||||
| 清除短信限制(调试用) | DELETE | `/h5/auth/debug/sms-limit/{phone}` |
|
||||
|
||||
### 1.2 H5会员接口
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| --------- | ------ | --------------------------------------------- |
|
||||
| 获取当前会员信息 | GET | `/h5/member/info` |
|
||||
| 修改会员基本信息 | PUT | `/h5/member/info` |
|
||||
| 修改登录密码 | PUT | `/h5/member/password` |
|
||||
| 添加教育身份 | POST | `/h5/member/educations` |
|
||||
| 获取教育身份列表 | GET | `/h5/member/educations` |
|
||||
| 修改教育身份 | PUT | `/h5/member/educations/{educationId}` |
|
||||
| 删除教育身份 | DELETE | `/h5/member/educations/{educationId}` |
|
||||
| 设置默认教育身份 | PUT | `/h5/member/educations/{educationId}/default` |
|
||||
| 绑定学生 | POST | `/h5/member/student` |
|
||||
| 获取绑定的学生列表 | GET | `/h5/member/students` |
|
||||
| 修改学生信息 | PUT | `/h5/member/student/{studentId}` |
|
||||
| 解绑学生 | DELETE | `/h5/member/student/{studentId}` |
|
||||
| 获取操作日志列表 | GET | `/h5/member/logs` |
|
||||
|
||||
### 1.3 H5基础数据接口
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ---------- | ---- | ------------------- |
|
||||
| 获取区域树 | GET | `/h5/base/regions` |
|
||||
| 根据区域获取学校列表 | GET | `/h5/base/schools` |
|
||||
| 根据学校获取年级列表 | GET | `/h5/base/grades` |
|
||||
| 根据年级获取班级列表 | GET | `/h5/base/classes` |
|
||||
| 获取学科列表 | GET | `/h5/base/subjects` |
|
||||
|
||||
---
|
||||
|
||||
## 二、管理后台接口
|
||||
|
||||
### 2.1 认证接口
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ------------ | ------ | ------------------------- |
|
||||
| 获取图形验证码 | GET | `/auth/code` |
|
||||
| 管理后台登录 | POST | `/auth/login` |
|
||||
| 退出登录 | POST | `/auth/logout` |
|
||||
| 用户注册 | POST | `/auth/register` |
|
||||
| 获取第三方登录跳转URL | GET | `/auth/binding/{source}` |
|
||||
| 前端回调绑定授权 | POST | `/auth/social/callback` |
|
||||
| 取消第三方授权 | DELETE | `/auth/unlock/{socialId}` |
|
||||
| 获取租户列表 | GET | `/auth/tenant/list` |
|
||||
|
||||
### 2.2 验证码接口
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ------- | ---- | ---------------------- |
|
||||
| 发送短信验证码 | GET | `/resource/sms/code` |
|
||||
| 发送邮箱验证码 | GET | `/resource/email/code` |
|
||||
|
||||
---
|
||||
|
||||
## 三、业务管理接口
|
||||
|
||||
### 3.1 会员管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ------------ | ------ | -------------------------------------------------------------- |
|
||||
| 查询会员列表 | GET | `/business/member/list` |
|
||||
| 获取会员详情 | GET | `/business/member/{memberId}` |
|
||||
| 新增会员 | POST | `/business/member` |
|
||||
| 修改会员 | PUT | `/business/member` |
|
||||
| 删除会员 | DELETE | `/business/member/{memberIds}` |
|
||||
| 重置会员密码 | PUT | `/business/member/resetPwd/{memberId}` |
|
||||
| 修改会员状态 | PUT | `/business/member/changeStatus` |
|
||||
| 检查手机号是否唯一 | GET | `/business/member/checkPhoneUnique` |
|
||||
| 获取会员已绑定的学生列表 | GET | `/business/member/{memberId}/students` |
|
||||
| 批量绑定学生到会员 | POST | `/business/member/{memberId}/bindStudents` |
|
||||
| 解绑学生 | POST | `/business/member/{memberId}/unbindStudent/{studentId}` |
|
||||
| 获取会员教育身份列表 | GET | `/business/member/{memberId}/educations` |
|
||||
| 添加教育身份 | POST | `/business/member/{memberId}/educations` |
|
||||
| 修改教育身份 | PUT | `/business/member/{memberId}/educations/{educationId}` |
|
||||
| 删除教育身份 | DELETE | `/business/member/{memberId}/educations/{educationId}` |
|
||||
| 设置默认教育身份 | PUT | `/business/member/{memberId}/educations/{educationId}/default` |
|
||||
|
||||
### 3.2 学生管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ------------ | ------ | --------------------------------------- |
|
||||
| 查询学生列表 | GET | `/business/student/list` |
|
||||
| 获取学校树结构 | GET | `/business/student/schoolTree` |
|
||||
| 获取学生详情 | GET | `/business/student/{studentId}` |
|
||||
| 新增学生 | POST | `/business/student` |
|
||||
| 修改学生 | PUT | `/business/student` |
|
||||
| 删除学生 | DELETE | `/business/student/{studentIds}` |
|
||||
| 查询可绑定的学生列表 | GET | `/business/student/available` |
|
||||
| 查询会员已绑定的学生列表 | GET | `/business/student/byMember/{memberId}` |
|
||||
| 下载学生导入模板 | GET | `/business/student/template` |
|
||||
| 批量导入学生 | POST | `/business/student/import` |
|
||||
|
||||
### 3.3 学校管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ---------- | ------ | ------------------------------------------------ |
|
||||
| 查询学校列表(分页) | GET | `/business/school/list` |
|
||||
| 查询学校列表(全部) | GET | `/business/school/listAll` |
|
||||
| 获取学校树形结构 | GET | `/business/school/tree` |
|
||||
| 获取学校详情 | GET | `/business/school/{schoolId}` |
|
||||
| 新增学校 | POST | `/business/school` |
|
||||
| 修改学校 | PUT | `/business/school` |
|
||||
| 删除学校 | DELETE | `/business/school/{schoolIds}` |
|
||||
| 获取学校的年级列表 | GET | `/business/school/{schoolId}/grades` |
|
||||
| 获取年级下的班级列表 | GET | `/business/school/grade/{schoolGradeId}/classes` |
|
||||
| 为学校添加年级 | POST | `/business/school/grade` |
|
||||
| 为年级添加班级 | POST | `/business/school/class` |
|
||||
| 删除学校下的年级 | DELETE | `/business/school/grade/{schoolGradeId}` |
|
||||
| 删除年级下的班级 | DELETE | `/business/school/class/{schoolClassId}` |
|
||||
|
||||
### 3.4 区域管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ------- | ------ | -------------------------------------- |
|
||||
| 查询区域列表 | GET | `/business/region/list` |
|
||||
| 获取区域树 | GET | `/business/region/tree` |
|
||||
| 获取子区域列表 | GET | `/business/region/children/{parentId}` |
|
||||
| 获取区域详情 | GET | `/business/region/{regionId}` |
|
||||
| 获取区域路径 | GET | `/business/region/{regionId}/path` |
|
||||
| 新增区域 | POST | `/business/region` |
|
||||
| 修改区域 | PUT | `/business/region` |
|
||||
| 删除区域 | DELETE | `/business/region/{regionIds}` |
|
||||
|
||||
### 3.5 年级管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ---------- | ------ | ---------------------------- |
|
||||
| 查询年级列表(分页) | GET | `/business/grade/list` |
|
||||
| 查询年级列表(全部) | GET | `/business/grade/listAll` |
|
||||
| 获取年级详情 | GET | `/business/grade/{gradeId}` |
|
||||
| 新增年级 | POST | `/business/grade` |
|
||||
| 修改年级 | PUT | `/business/grade` |
|
||||
| 删除年级 | DELETE | `/business/grade/{gradeIds}` |
|
||||
|
||||
### 3.6 班级管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ---------- | ------ | ---------------------------- |
|
||||
| 查询班级列表(分页) | GET | `/business/class/list` |
|
||||
| 查询班级列表(全部) | GET | `/business/class/listAll` |
|
||||
| 获取班级详情 | GET | `/business/class/{classId}` |
|
||||
| 新增班级 | POST | `/business/class` |
|
||||
| 修改班级 | PUT | `/business/class` |
|
||||
| 删除班级 | DELETE | `/business/class/{classIds}` |
|
||||
|
||||
### 3.7 学科管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ---------- | ------ | -------------------------------- |
|
||||
| 查询学科列表(分页) | GET | `/business/subject/list` |
|
||||
| 查询学科列表(全部) | GET | `/business/subject/listAll` |
|
||||
| 获取学科详情 | GET | `/business/subject/{subjectId}` |
|
||||
| 新增学科 | POST | `/business/subject` |
|
||||
| 修改学科 | PUT | `/business/subject` |
|
||||
| 删除学科 | DELETE | `/business/subject/{subjectIds}` |
|
||||
|
||||
### 3.8 第三方应用管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| --------- | ------ | ------------------------------------------- |
|
||||
| 查询应用列表 | GET | `/business/application/list` |
|
||||
| 获取应用详情 | GET | `/business/application/{appId}` |
|
||||
| 新增应用 | POST | `/business/application` |
|
||||
| 修改应用 | PUT | `/business/application` |
|
||||
| 删除应用 | DELETE | `/business/application/{appIds}` |
|
||||
| 重置应用密钥 | PUT | `/business/application/resetSecret/{appId}` |
|
||||
| 获取API接口列表 | GET | `/business/application/apiList` |
|
||||
|
||||
---
|
||||
|
||||
## 四、系统管理接口
|
||||
|
||||
### 4.1 用户管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ---------- | ------ | --------------------------------- |
|
||||
| 获取用户列表 | GET | `/system/user/list` |
|
||||
| 导出用户列表 | POST | `/system/user/export` |
|
||||
| 导入用户数据 | POST | `/system/user/importData` |
|
||||
| 获取导入模板 | POST | `/system/user/importTemplate` |
|
||||
| 获取当前登录用户信息 | GET | `/system/user/getInfo` |
|
||||
| 获取用户详情 | GET | `/system/user/{userId}` |
|
||||
| 新增用户 | POST | `/system/user` |
|
||||
| 修改用户 | PUT | `/system/user` |
|
||||
| 删除用户 | DELETE | `/system/user/{userIds}` |
|
||||
| 批量获取用户基础信息 | GET | `/system/user/optionselect` |
|
||||
| 重置用户密码 | PUT | `/system/user/resetPwd` |
|
||||
| 修改用户状态 | PUT | `/system/user/changeStatus` |
|
||||
| 获取用户授权角色 | GET | `/system/user/authRole/{userId}` |
|
||||
| 用户授权角色 | PUT | `/system/user/authRole` |
|
||||
| 获取部门树列表 | GET | `/system/user/deptTree` |
|
||||
| 获取部门下的所有用户 | GET | `/system/user/list/dept/{deptId}` |
|
||||
|
||||
### 4.2 角色管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| --------- | ------ | --------------------------------------- |
|
||||
| 获取角色列表 | GET | `/system/role/list` |
|
||||
| 导出角色列表 | POST | `/system/role/export` |
|
||||
| 获取角色详情 | GET | `/system/role/{roleId}` |
|
||||
| 新增角色 | POST | `/system/role` |
|
||||
| 修改角色 | PUT | `/system/role` |
|
||||
| 修改数据权限 | PUT | `/system/role/dataScope` |
|
||||
| 修改角色状态 | PUT | `/system/role/changeStatus` |
|
||||
| 删除角色 | DELETE | `/system/role/{roleIds}` |
|
||||
| 获取角色选择框列表 | GET | `/system/role/optionselect` |
|
||||
| 查询已分配用户列表 | GET | `/system/role/authUser/allocatedList` |
|
||||
| 查询未分配用户列表 | GET | `/system/role/authUser/unallocatedList` |
|
||||
| 取消授权用户 | PUT | `/system/role/authUser/cancel` |
|
||||
| 批量取消授权用户 | PUT | `/system/role/authUser/cancelAll` |
|
||||
| 批量选择用户授权 | PUT | `/system/role/authUser/selectAll` |
|
||||
| 获取角色部门树列表 | GET | `/system/role/deptTree/{roleId}` |
|
||||
|
||||
### 4.3 部门管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ------------ | ------ | ------------------------------------ |
|
||||
| 获取部门列表 | GET | `/system/dept/list` |
|
||||
| 查询部门列表(排除节点) | GET | `/system/dept/list/exclude/{deptId}` |
|
||||
| 获取部门详情 | GET | `/system/dept/{deptId}` |
|
||||
| 新增部门 | POST | `/system/dept` |
|
||||
| 修改部门 | PUT | `/system/dept` |
|
||||
| 删除部门 | DELETE | `/system/dept/{deptId}` |
|
||||
| 获取部门选择框列表 | GET | `/system/dept/optionselect` |
|
||||
|
||||
### 4.4 菜单管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ----------- | ------ | ------------------------------------------------------ |
|
||||
| 获取路由信息 | GET | `/system/menu/getRouters` |
|
||||
| 获取菜单列表 | GET | `/system/menu/list` |
|
||||
| 获取菜单详情 | GET | `/system/menu/{menuId}` |
|
||||
| 获取菜单下拉树列表 | GET | `/system/menu/treeselect` |
|
||||
| 加载角色菜单列表树 | GET | `/system/menu/roleMenuTreeselect/{roleId}` |
|
||||
| 加载租户套餐菜单列表树 | GET | `/system/menu/tenantPackageMenuTreeselect/{packageId}` |
|
||||
| 新增菜单 | POST | `/system/menu` |
|
||||
| 修改菜单 | PUT | `/system/menu` |
|
||||
| 删除菜单 | DELETE | `/system/menu/{menuId}` |
|
||||
| 批量级联删除菜单 | DELETE | `/system/menu/cascade/{menuIds}` |
|
||||
|
||||
### 4.5 字典类型管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| --------- | ------ | -------------------------------- |
|
||||
| 查询字典类型列表 | GET | `/system/dict/type/list` |
|
||||
| 导出字典类型列表 | POST | `/system/dict/type/export` |
|
||||
| 获取字典类型详情 | GET | `/system/dict/type/{dictId}` |
|
||||
| 新增字典类型 | POST | `/system/dict/type` |
|
||||
| 修改字典类型 | PUT | `/system/dict/type` |
|
||||
| 删除字典类型 | DELETE | `/system/dict/type/{dictIds}` |
|
||||
| 刷新字典缓存 | DELETE | `/system/dict/type/refreshCache` |
|
||||
| 获取字典选择框列表 | GET | `/system/dict/type/optionselect` |
|
||||
|
||||
### 4.6 字典数据管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ------------ | ------ | ----------------------------------- |
|
||||
| 查询字典数据列表 | GET | `/system/dict/data/list` |
|
||||
| 导出字典数据列表 | POST | `/system/dict/data/export` |
|
||||
| 获取字典数据详情 | GET | `/system/dict/data/{dictCode}` |
|
||||
| 根据字典类型查询字典数据 | GET | `/system/dict/data/type/{dictType}` |
|
||||
| 新增字典数据 | POST | `/system/dict/data` |
|
||||
| 修改字典数据 | PUT | `/system/dict/data` |
|
||||
| 删除字典数据 | DELETE | `/system/dict/data/{dictCodes}` |
|
||||
|
||||
### 4.7 岗位管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| --------- | ------ | --------------------------- |
|
||||
| 获取岗位列表 | GET | `/system/post/list` |
|
||||
| 导出岗位列表 | POST | `/system/post/export` |
|
||||
| 获取岗位详情 | GET | `/system/post/{postId}` |
|
||||
| 新增岗位 | POST | `/system/post` |
|
||||
| 修改岗位 | PUT | `/system/post` |
|
||||
| 删除岗位 | DELETE | `/system/post/{postIds}` |
|
||||
| 获取岗位选择框列表 | GET | `/system/post/optionselect` |
|
||||
| 获取部门树列表 | GET | `/system/post/deptTree` |
|
||||
|
||||
### 4.8 参数配置管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ------------ | ------ | -------------------------------------- |
|
||||
| 获取参数配置列表 | GET | `/system/config/list` |
|
||||
| 导出参数配置列表 | POST | `/system/config/export` |
|
||||
| 获取参数配置详情 | GET | `/system/config/{configId}` |
|
||||
| 根据参数键名查询参数值 | GET | `/system/config/configKey/{configKey}` |
|
||||
| 新增参数配置 | POST | `/system/config` |
|
||||
| 修改参数配置 | PUT | `/system/config` |
|
||||
| 根据参数键名修改参数配置 | PUT | `/system/config/updateByKey` |
|
||||
| 删除参数配置 | DELETE | `/system/config/{configIds}` |
|
||||
| 刷新参数缓存 | DELETE | `/system/config/refreshCache` |
|
||||
|
||||
### 4.9 通知公告管理
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| -------- | ------ | ---------------------------- |
|
||||
| 获取通知公告列表 | GET | `/system/notice/list` |
|
||||
| 获取通知公告详情 | GET | `/system/notice/{noticeId}` |
|
||||
| 新增通知公告 | POST | `/system/notice` |
|
||||
| 修改通知公告 | PUT | `/system/notice` |
|
||||
| 删除通知公告 | DELETE | `/system/notice/{noticeIds}` |
|
||||
|
||||
---
|
||||
|
||||
## 五、日志监控接口
|
||||
|
||||
### 5.1 操作日志
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| -------- | ------ | ---------------------------- |
|
||||
| 获取操作日志列表 | GET | `/monitor/operlog/list` |
|
||||
| 导出操作日志列表 | POST | `/monitor/operlog/export` |
|
||||
| 删除操作日志 | DELETE | `/monitor/operlog/{operIds}` |
|
||||
| 清理操作日志 | DELETE | `/monitor/operlog/clean` |
|
||||
|
||||
### 5.2 登录日志
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| -------- | ------ | --------------------------------------- |
|
||||
| 获取登录日志列表 | GET | `/monitor/logininfor/list` |
|
||||
| 导出登录日志列表 | POST | `/monitor/logininfor/export` |
|
||||
| 删除登录日志 | DELETE | `/monitor/logininfor/{infoIds}` |
|
||||
| 清理登录日志 | DELETE | `/monitor/logininfor/clean` |
|
||||
| 账户解锁 | GET | `/monitor/logininfor/unlock/{userName}` |
|
||||
|
||||
### 5.3 在线用户
|
||||
|
||||
| 接口说明 | 请求方式 | 接口地址 |
|
||||
| ---------- | ------ | ---------------------------------- |
|
||||
| 获取在线用户列表 | GET | `/monitor/online/list` |
|
||||
| 强退用户 | DELETE | `/monitor/online/{tokenId}` |
|
||||
| 获取当前用户登录设备 | GET | `/monitor/online` |
|
||||
| 强退当前在线设备 | DELETE | `/monitor/online/myself/{tokenId}` |
|
||||
|
||||
---
|
||||
|
||||
## 六、接口统计
|
||||
|
||||
| 模块 | 接口数量 |
|
||||
| -------- | -------- |
|
||||
| H5认证接口 | 14 |
|
||||
| H5会员接口 | 13 |
|
||||
| H5基础数据接口 | 5 |
|
||||
| 管理后台认证接口 | 10 |
|
||||
| 会员管理 | 16 |
|
||||
| 学生管理 | 10 |
|
||||
| 学校管理 | 13 |
|
||||
| 区域管理 | 8 |
|
||||
| 年级管理 | 6 |
|
||||
| 班级管理 | 6 |
|
||||
| 学科管理 | 6 |
|
||||
| 第三方应用管理 | 7 |
|
||||
| 用户管理 | 16 |
|
||||
| 角色管理 | 16 |
|
||||
| 部门管理 | 7 |
|
||||
| 菜单管理 | 10 |
|
||||
| 字典类型管理 | 8 |
|
||||
| 字典数据管理 | 7 |
|
||||
| 岗位管理 | 8 |
|
||||
| 参数配置管理 | 9 |
|
||||
| 通知公告管理 | 5 |
|
||||
| 操作日志 | 4 |
|
||||
| 登录日志 | 5 |
|
||||
| 在线用户 | 4 |
|
||||
| **总计** | **203*** |
|
||||
Loading…
Reference in New Issue