9.8 KiB
9.8 KiB
院校模块(School)后台接口文档
适用范围:后台管理(CRUD / 导入导出 / 聚合详情)。
代码位置:
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/school/controller/*
1. 基础约定(JEECG-Boot)
1.1 基础地址
- 默认
server.servlet.context-path为/jeecg-boot - 文档中接口地址以:
/jeecg-boot+ Controller 的@RequestMapping为准
示例:
GET /jeecg-boot/school/school/list
1.2 认证
- 需要登录后调用(通常前端会在请求头携带 token)
- 权限控制使用
@RequiresPermissions(文档中会标注权限码)
1.3 统一返回结构
接口统一返回:org.jeecg.common.api.vo.Result<T>。
成功示例:
{
"success": true,
"message": "",
"code": 200,
"result": {},
"timestamp": 1700000000000
}
失败示例:
{
"success": false,
"message": "未找到对应数据",
"code": 500,
"result": null,
"timestamp": 1700000000000
}
1.4 分页返回结构(MyBatis-Plus IPage)
分页接口 result 为 IPage<T>,常见字段示例:
{
"success": true,
"code": 200,
"result": {
"records": [],
"total": 0,
"size": 10,
"current": 1,
"pages": 0
}
}
1.5 导入 / 导出
- 导出:
GET /exportXls,返回 Excel 文件流 - 导入:
POST /importExcel,multipart/form-data,上传字段名通常为file
2. 数据表与字段说明(摘要)
下面仅列出接口当前代码中实体字段;若你按
Task2_solution.md扩展了更多列,可继续在实体中补字段以支持后台维护。
2.1 学校主表(t_school)
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键ID |
| mainCode | String | 学校编码(唯一) |
| mainName | String | 学校主名称(官方全称) |
| shortName | String | 学校简称 |
| schoolIcon | String | 院校图标(URL) |
| createBy/createTime | String/Date | 创建人/创建时间 |
| updateBy/updateTime | String/Date | 更新人/更新时间 |
2.2 学校详情(t_school_detail)
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键ID |
| schoolId | Long | 学校ID |
| introduction | String | 学校简介(大文本) |
| address | String | 地址 |
| contact | String | 联系电话 |
| website | String | 官网 |
| updateTime | Date | 更新时间 |
2.3 学校名称(t_school_name)
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键ID |
| schoolId | Long | 学校ID |
| name | String | 名称(别名/曾用名/英文名) |
| nameType | Integer | 名称类型:1官方全称/2曾用名/3别名/4英文名称 |
2.4 学校标签(t_school_tag)
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 主键ID |
| schoolId | Long | 学校ID |
| tagName | String | 标签名(985/211/双一流/…) |
2.5 学院 / 专业(Task2 扩展表)
- 学院:
t_school_college - 专业:
t_school_major - 专业标签:
t_school_major_tag
2.6 校区 / 宿舍 / 媒体 / 招生计划(Task2 扩展表)
- 校区:
t_school_campus - 宿舍:
t_school_dorm - 媒体:
t_school_media(biz_type + biz_id) - 招生计划:
t_school_enroll_plan
3. 接口清单
说明:所有
/list接口均支持pageNo/pageSize分页。对于使用
QueryGenerator的/list:可通过 query 参数传实体字段实现筛选(例如schoolId=1、majorName=计算机)。
3.1 学校主表(SchoolController)
Base:/jeecg-boot/school/school
3.1.1 分页列表(通用查询)
- Method:
GET - Path:
/list - 权限:无(如需权限可自行加
@RequiresPermissions) - Query:
pageNo:默认 1pageSize:默认 10- 其他:
t_school对应字段(例如mainName、mainCode等)
3.1.2 关键词搜索(编码/名称/简称/别名)
- Method:
GET - Path:
/search - 权限:无
- Query:
keyword:可空pageNo、pageSize
3.1.3 新增
- Method:
POST - Path:
/add - 权限:
school:school:add - Body(JSON):
{
"mainCode": "10001",
"mainName": "示例大学",
"shortName": "示大",
"schoolIcon": "https://example.com/icon.png"
}
3.1.4 修改
- Method:
PUTorPOST - Path:
/edit - 权限:
school:school:edit - Body(JSON):必须包含
id
3.1.5 删除
- Method:
DELETE - Path:
/delete - 权限:
school:school:delete - Query:
id
3.1.6 批量删除
- Method:
DELETE - Path:
/deleteBatch - 权限:
school:school:deleteBatch - Query:
ids(逗号分隔 Long,例如:1,2,3)
3.1.7 按ID查询
- Method:
GET - Path:
/queryById - Query:
id
3.1.8 全量聚合详情(按ID)
- Method:
GET - Path:
/fullById - Query:
id - 返回:
SchoolFullVO(主表 + detail + names + tags + colleges/majors/...)
3.1.9 全量聚合详情(按mainCode)
- Method:
GET - Path:
/fullByMainCode - Query:
mainCode
3.1.10 导出
- Method:
GET - Path:
/exportXls - 权限:
school:school:exportXls - Query:可带筛选条件(同
/list)
3.1.11 导入
- Method:
POST - Path:
/importExcel - 权限:
school:school:importExcel - Form-Data:
file=@xxx.xlsx
3.2 学校详情(SchoolDetailController)
Base:/jeecg-boot/school/detail
GET /list(QueryGenerator)POST /add(权限:school:detail:add)PUT|POST /edit(权限:school:detail:edit)DELETE /delete(权限:school:detail:delete)DELETE /deleteBatch(权限:school:detail:deleteBatch)GET /queryByIdGET /exportXls(权限:school:detail:exportXls)POST /importExcel(权限:school:detail:importExcel)
3.3 学校名称(SchoolNameController)
Base:/jeecg-boot/school/name
GET /listPOST /add(权限:school:name:add)PUT|POST /edit(权限:school:name:edit)DELETE /delete(权限:school:name:delete)DELETE /deleteBatch(权限:school:name:deleteBatch)GET /queryByIdGET /exportXls(权限:school:name:exportXls)POST /importExcel(权限:school:name:importExcel)
3.4 学校标签(SchoolTagController)
Base:/jeecg-boot/school/tag
GET /listPOST /add(权限:school:tag:add)PUT|POST /edit(权限:school:tag:edit)DELETE /delete(权限:school:tag:delete)DELETE /deleteBatch(权限:school:tag:deleteBatch)GET /queryByIdGET /exportXls(权限:school:tag:exportXls)POST /importExcel(权限:school:tag:importExcel)
3.5 学院(SchoolCollegeController)
Base:/jeecg-boot/school/college
GET /listPOST /add(权限:school:college:add)PUT|POST /edit(权限:school:college:edit)DELETE /delete(权限:school:college:delete)DELETE /deleteBatch(权限:school:college:deleteBatch)GET /queryByIdGET /exportXls(权限:school:college:exportXls)POST /importExcel(权限:school:college:importExcel)
3.6 专业(SchoolMajorController)
Base:/jeecg-boot/school/major
GET /listPOST /add(权限:school:major:add)PUT|POST /edit(权限:school:major:edit)DELETE /delete(权限:school:major:delete)DELETE /deleteBatch(权限:school:major:deleteBatch)GET /queryByIdGET /exportXls(权限:school:major:exportXls)POST /importExcel(权限:school:major:importExcel)
3.7 专业标签(SchoolMajorTagController)
Base:/jeecg-boot/school/majorTag
GET /listPOST /add(权限:school:majorTag:add)PUT|POST /edit(权限:school:majorTag:edit)DELETE /delete(权限:school:majorTag:delete)DELETE /deleteBatch(权限:school:majorTag:deleteBatch)GET /queryByIdGET /exportXls(权限:school:majorTag:exportXls)POST /importExcel(权限:school:majorTag:importExcel)
3.8 校区(SchoolCampusController)
Base:/jeecg-boot/school/campus
GET /listPOST /add(权限:school:campus:add)PUT|POST /edit(权限:school:campus:edit)DELETE /delete(权限:school:campus:delete)DELETE /deleteBatch(权限:school:campus:deleteBatch)GET /queryByIdGET /exportXls(权限:school:campus:exportXls)POST /importExcel(权限:school:campus:importExcel)
3.9 宿舍(SchoolDormController)
Base:/jeecg-boot/school/dorm
GET /listPOST /add(权限:school:dorm:add)PUT|POST /edit(权限:school:dorm:edit)DELETE /delete(权限:school:dorm:delete)DELETE /deleteBatch(权限:school:dorm:deleteBatch)GET /queryByIdGET /exportXls(权限:school:dorm:exportXls)POST /importExcel(权限:school:dorm:importExcel)
3.10 媒体(SchoolMediaController)
Base:/jeecg-boot/school/media
GET /listPOST /add(权限:school:media:add)PUT|POST /edit(权限:school:media:edit)DELETE /delete(权限:school:media:delete)DELETE /deleteBatch(权限:school:media:deleteBatch)GET /queryByIdGET /exportXls(权限:school:media:exportXls)POST /importExcel(权限:school:media:importExcel)
3.11 招生计划(SchoolEnrollPlanController)
Base:/jeecg-boot/school/enrollPlan
GET /listPOST /add(权限:school:enrollPlan:add)PUT|POST /edit(权限:school:enrollPlan:edit)DELETE /delete(权限:school:enrollPlan:delete)DELETE /deleteBatch(权限:school:enrollPlan:deleteBatch)GET /queryByIdGET /exportXls(权限:school:enrollPlan:exportXls)POST /importExcel(权限:school:enrollPlan:importExcel)