# 专业/宿舍关联校区接口评估与需求 ## 1. 当前可用能力评估 ### 1.1 宿舍管理(可支撑) - 已有校区列表接口:`GET /art/schoolCampus/list` - 支持入参 `schoolId`,可按学校查询校区。 - 已有宿舍新增/修改接口: - `POST /art/schoolDorm` - `PUT /art/schoolDorm` - 入参已包含 `campusId`,可直接做“校区下拉选择后提交关联”。 ### 1.2 专业管理(当前不可完全支撑) - 专业接口当前为: - `GET /art/schoolMajor/list` - `POST /art/schoolMajor` - `PUT /art/schoolMajor` - 现有专业模型/类型无 `campusId` 字段,仅有 `schoolId`、`collegeId` 等。 - 结论:前端可加载校区列表,但无法通过现有专业接口保存“专业 -> 校区”关联。 ## 2. 专业管理所需接口改造(建议) ## 2.1 方案:在专业主模型中新增 `campusId`(单校区关联) ### 专业列表查询 - URL: `GET /art/schoolMajor/list` - 新增查询入参: - `campusId` `number|string` 可选 - 返回字段新增: - `campusId` `number|string` - `campusName` `string`(建议返回,便于表格展示) #### 查询入参示例 ```json { "pageNum": 1, "pageSize": 10, "schoolId": 1001, "campusId": 2001, "majorName": "视觉传达设计" } ``` #### 查询返回 rows 单项示例 ```json { "majorId": 3001, "schoolId": 1001, "campusId": 2001, "campusName": "主校区", "collegeId": 5001, "majorName": "视觉传达设计" } ``` ### 专业新增 - URL: `POST /art/schoolMajor` - 新增必填入参: - `campusId` `number|string` #### 新增入参示例 ```json { "schoolId": 1001, "campusId": 2001, "collegeId": 5001, "majorCode": "130502", "majorName": "视觉传达设计", "educationLevel": "本科", "durationYears": 4 } ``` ### 专业修改 - URL: `PUT /art/schoolMajor` - 新增必填入参: - `campusId` `number|string` #### 修改入参示例 ```json { "majorId": 3001, "schoolId": 1001, "campusId": 2002, "collegeId": 5001, "majorName": "视觉传达设计" } ``` ## 3. 统一返回格式建议 ### 列表接口返回(保持现有 RuoYi 分页结构) ```json { "code": 200, "msg": "操作成功", "rows": [], "total": 0 } ``` ### 新增/修改接口返回 ```json { "code": 200, "msg": "操作成功", "data": true } ```