提交学生管理权限设置的代码

This commit is contained in:
zlwu committed 2025-07-25 14:51:19 +08:00
1 parent 0917c7f156
commit 517a0052bc
28 files changed
+2506 -161

No files matched your search

@@ -0,0 +1,17 @@
2025-07-24 20:00:00 新增
### 【后端】宿舍管理员信息模块
- 新增API:获取当前正在教学的班主任信息
- 路径:/xgStudentManager/studentManager/listActiveClassTeachers
- 入参:phone(手机号,模糊)、name(姓名,模糊)
- 出参:name、phone、sex、className
- 权限:xgStudentManager:studentManager:list
- 相关文件:
- XgStudentManagerController.java
- IXgStudentManagerService.java
- XgStudentManagerServiceImpl.java
- ClassTeacherInfoVo.java
- docs/开发文档/API/宿舍管理员信息API.md
- docs/开发文档/API/API文档总览.md
- 开发人:wuzilong
- 说明:严格遵循API文档与变更记录同步规范。
+27
View File
@@ -10,6 +10,8 @@
- [学生信息管理API](./学生信息管理API.md)
- [班级信息管理API](./班级信息管理API.md)
- [宿舍管理API](./宿舍管理API.md)
- [宿舍管理员信息API](./宿舍管理员信息API.md)
- [宿舍管理员授权API](./宿舍管理员授权API.md)
## 后勤管理模块API
@@ -47,6 +49,29 @@
**详细文档**: [班级信息管理API.md](./班级信息管理API.md)
## 宿舍管理员信息API
- [宿舍管理员信息API](./宿舍管理员信息API.md):包含宿舍管理员信息的增删改查接口
- 支持不同类型宿舍管理员(全校管理员、自定义管理员、班主任)的管理
- 提供获取可用教职工信息的接口,支持选择教职工作为宿舍管理员
- **新增功能**: 在添加管理员时,通过下拉选择可用教师,支持模糊搜索,并自动填充选中教师的手机号码和性别信息
**核心功能**:
- 宿舍管理员信息分页查询(支持多条件搜索)
- 宿舍管理员信息新增、修改、删除
- 宿舍管理员信息导出
- 获取可用教职工信息列表(排除已经成为指定类型管理员的人员)
- 教师选择下拉搜索组件,支持模糊搜索和自动填充数据
**API基础路径**: `/xgStudentManager/studentManager`
**最新更新**:
- 2025-07-25: 优化管理员添加界面,将姓名输入框改为可搜索的下拉选择框,选择后自动填充教师信息
- 2025-07-24: 完成宿舍管理员信息管理模块的API接口设计
- 2025-07-24: 添加获取可用的教职工信息列表接口,支持根据管理员类型筛选可用教职工
**详细文档**: [宿舍管理员信息API.md](./宿舍管理员信息API.md)
## 企业信息管理API
- [企业信息管理API](./企业信息管理API.md):包含企业信息、招聘岗位、招聘海报生成相关接口
@@ -67,3 +92,5 @@
- 2023-07-05: 添加企业规模、所属行业、岗位有效期类型等数据字典
**详细文档**: [企业信息管理API.md](./企业信息管理API.md)
- [获取当前正在教学的班主任信息](/docs/开发文档/API/宿舍管理员信息API.md#获取当前正在教学的班主任信息)
@@ -0,0 +1,259 @@
# 宿舍管理员信息API文档
## 1. API概述
本文档提供宿舍管理员信息相关的API接口说明,包括管理员信息的查询、新增、修改、删除等功能,以及获取可用教师列表的接口。
## 2. 基本信息
- **模块名称**:宿舍管理员信息管理
- **接口前缀**:`/xgStudentManager/studentManager`
- **数据权限**:需要相应的权限才能访问接口
## 3. API列表
### 3.1 查询宿舍管理员信息列表
- **接口地址**:`/xgStudentManager/studentManager/list`
- **请求方式**:GET
- **权限标识**:`xgStudentManager:studentManager:list`
- **请求参数**:
| 参数名 | 类型 | 是否必须 | 描述 |
|------------|--------|----------|-----------------------------------------------|
| managerName| string | 否 | 管理员姓名,支持模糊查询 |
| managerType| string | 否 | 管理员类型(1 全校管理员 2 自定义管理员 3 班主任) |
| managerLevel| number | 否 | 管理级别(1-3,1为最高) |
| phone | string | 否 | 联系电话 |
| gender | string | 否 | 性别(0男 1女 2未知) |
| status | string | 否 | 状态(0正常 1停用) |
| pageNum | number | 是 | 页码 |
| pageSize | number | 是 | 每页记录数 |
- **返回示例**:
```json
{
"total": 2,
"rows": [
{
"id": 1,
"managerName": "张三",
"managerType": "1",
"managerLevel": 1,
"userId": 103,
"phone": "13800138001",
"gender": "0",
"status": "0",
"remark": "全校管理员",
"createTime": "2025-07-24 10:00:00",
"updateTime": "2025-07-24 10:00:00"
}
],
"code": 200,
"msg": "查询成功"
}
```
### 3.2 获取宿舍管理员信息详细信息
- **接口地址**:`/xgStudentManager/studentManager/{id}`
- **请求方式**:GET
- **权限标识**:`xgStudentManager:studentManager:query`
- **请求参数**:
| 参数名 | 类型 | 是否必须 | 描述 |
|-------|--------|----------|-------|
| id | number | 是 | 主键ID |
- **返回示例**:
```json
{
"data": {
"id": 1,
"managerName": "张三",
"managerType": "1",
"managerLevel": 1,
"userId": 103,
"phone": "13800138001",
"gender": "0",
"status": "0",
"remark": "全校管理员",
"createTime": "2025-07-24 10:00:00",
"updateTime": "2025-07-24 10:00:00"
},
"code": 200,
"msg": "操作成功"
}
```
### 3.3 新增宿舍管理员信息
- **接口地址**:`/xgStudentManager/studentManager`
- **请求方式**:POST
- **权限标识**:`xgStudentManager:studentManager:add`
- **请求参数**:
| 参数名 | 类型 | 是否必须 | 描述 |
|------------|--------|----------|-----------------------------------------------|
| managerName| string | 是 | 管理员姓名 |
| managerType| string | 是 | 管理员类型(1 全校管理员 2 自定义管理员 3 班主任) |
| managerLevel| number | 是 | 管理级别(1-3,1为最高) |
| userId | number | 是 | 关联用户ID |
| phone | string | 是 | 联系电话 |
| gender | string | 是 | 性别(0男 1女 2未知) |
| status | string | 否 | 状态(0正常 1停用),默认0 |
| remark | string | 否 | 备注 |
- **返回示例**:
```json
{
"code": 200,
"msg": "操作成功"
}
```
### 3.4 修改宿舍管理员信息
- **接口地址**:`/xgStudentManager/studentManager`
- **请求方式**:PUT
- **权限标识**:`xgStudentManager:studentManager:edit`
- **请求参数**:
| 参数名 | 类型 | 是否必须 | 描述 |
|------------|--------|----------|-----------------------------------------------|
| id | number | 是 | 主键ID |
| managerName| string | 是 | 管理员姓名 |
| managerType| string | 是 | 管理员类型(1 全校管理员 2 自定义管理员 3 班主任) |
| managerLevel| number | 是 | 管理级别(1-3,1为最高) |
| userId | number | 是 | 关联用户ID |
| phone | string | 是 | 联系电话 |
| gender | string | 是 | 性别(0男 1女 2未知) |
| status | string | 否 | 状态(0正常 1停用) |
| remark | string | 否 | 备注 |
- **返回示例**:
```json
{
"code": 200,
"msg": "操作成功"
}
```
### 3.5 删除宿舍管理员信息
- **接口地址**:`/xgStudentManager/studentManager/{ids}`
- **请求方式**:DELETE
- **权限标识**:`xgStudentManager:studentManager:remove`
- **请求参数**:
| 参数名 | 类型 | 是否必须 | 描述 |
|-------|--------|----------|-----------------------|
| ids | array | 是 | 主键ID数组,格式:[1,2] |
- **返回示例**:
```json
{
"code": 200,
"msg": "操作成功"
}
```
### 3.6 导出宿舍管理员信息
- **接口地址**:`/xgStudentManager/studentManager/export`
- **请求方式**:POST
- **权限标识**:`xgStudentManager:studentManager:export`
- **请求参数**:与查询列表接口参数相同
- **返回内容**:Excel文件
### 3.7 获取可用教师列表
- **接口地址**:`/xgStudentManager/studentManager/listAvailableTeachers`
- **请求方式**:GET
- **权限标识**:`xgStudentManager:studentManager:list`
- **请求参数**:
| 参数名 | 类型 | 是否必须 | 描述 |
|------------|--------|----------|-----------------------------------------------|
| managerType| string | 是 | 管理员类型(1 全校管理员 2 自定义管理员 3 班主任) |
- **返回示例**:
```json
{
"data": [
{
"id": 101,
"managerName": "张三",
"phone": "13800138001",
"gender": "0"
},
{
"id": 102,
"managerName": "李四",
"phone": "13800138002",
"gender": "1"
}
],
"code": 200,
"msg": "操作成功"
}
```
## 获取当前正在教学的班主任信息
- **接口路径**:`/xgStudentManager/studentManager/listActiveClassTeachers`
- **请求方式**:GET
- **权限标识**:`xgStudentManager:studentManager:list`
- **入参**:
- `phone`(可选,string):手机号,模糊查询
- `name`(可选,string):姓名,模糊查询
- **出参**:
- `name`:姓名
- `phone`:手机号
- `sex`:性别
- `className`:班级名称
- **返回示例**:
```json
{
"code": 200,
"msg": "操作成功",
"data": [
{
"name": "张三",
"phone": "13800001111",
"sex": "0",
"className": "2025级1班"
}
]
}
```
- **说明**:
- 仅返回当前“正在教学”的班主任(班级状态为1,未删除,班主任ID有效,用户状态正常)。
- 支持姓名和手机号的模糊查询,均为可选参数。
## 4. 数据结构说明
### 4.1 宿舍管理员对象
| 字段名 | 类型 | 描述 |
|------------|--------|-----------------------------------------------|
| id | number | 主键ID |
| managerName| string | 管理员姓名 |
| managerType| string | 管理员类型(1 全校管理员 2 自定义管理员 3 班主任) |
| managerLevel| number | 管理级别(1-3,1为最高) |
| userId | number | 关联用户ID |
| phone | string | 联系电话 |
| gender | string | 性别(0男 1女 2未知) |
| status | string | 状态(0正常 1停用) |
| deleted | string | 删除标志(0代表存在 1代表删除) |
| remark | string | 备注 |
| createBy | number | 创建者 |
| createTime | date | 创建时间 |
| updateBy | number | 更新者 |
| updateTime | date | 更新时间 |
## 5. 错误码说明
| 错误码 | 描述 | 解决方案 |
|-------|----------------|-----------------------------|
| 500 | 系统内部错误 | 联系系统管理员 |
| 401 | 未授权 | 检查用户权限或重新登录 |
| 400 | 请求参数错误 | 检查请求参数是否符合要求 |