# 宿舍管理员授权API文档 ## 1. 接口总览 | 接口名称 | 请求方式 | 接口地址 | 接口描述 | | ------- | ------- | ------- | ------- | | 获取宿舍区树形结构 | GET | /ssqxx/dormArea/tree | 获取以校区为根节点、宿舍区为子节点的树形结构数据 | ## 2. 权限要求 - 查询宿舍区树形结构:`ssqxx:dormArea:query` ## 3. 接口详情 ### 3.1 获取宿舍区树形结构 #### 接口说明 该接口用于获取宿舍区的树形结构数据,以校区为根节点,宿舍区为子节点。前端可以使用该接口实现树形下拉选择,实现宿舍管理员授权范围选择功能。 #### 请求URL ``` GET /ssqxx/dormArea/tree ``` #### 请求参数 无 #### 响应参数 | 参数名 | 类型 | 说明 | | ------ | ---- | ---- | | code | Integer | 状态码,200表示成功 | | msg | String | 提示信息 | | data | Array | 数据内容 | | data[i].id | Long | 节点ID | | data[i].label | String | 节点名称 | | data[i].type | String | 节点类型(campus:校区,area:宿舍区) | | data[i].disabled | Boolean | 是否禁用选择(校区节点为true,宿舍区节点为false) | | data[i].children | Array | 子节点,结构同父节点 | #### 响应示例 ```json { "code": 200, "msg": "操作成功", "data": [ { "id": 1, "label": "东校区", "type": "campus", "disabled": true, "children": [ { "id": 101, "label": "1号宿舍区", "type": "area", "disabled": false, "children": [] }, { "id": 102, "label": "2号宿舍区", "type": "area", "disabled": false, "children": [] } ] }, { "id": 2, "label": "西校区", "type": "campus", "disabled": true, "children": [ { "id": 201, "label": "3号宿舍区", "type": "area", "disabled": false, "children": [] } ] } ] } ``` ## 4. 使用说明 ### 前端使用方式 1. 调用树形结构接口获取宿舍区树形数据 2. 使用树形选择组件展示数据,设置不可选择校区节点(根据disabled属性) 3. 用户只能选择宿舍区节点,不能选择校区节点 4. 支持多选宿舍区节点 ### 数据说明 - 树形结构中,校区为第一级节点,宿舍区为第二级节点 - 校区节点的disabled属性为true,表示不可选择 - 宿舍区节点的disabled属性为false,表示可以选择 - 通过type字段可以区分节点类型:campus为校区,area为宿舍区 ## 5. 实现细节 - 宿舍区数据存放在xg_dorm_area表中,校区数据存放在xg_dorm_campus表中 - xg_dorm_area表中campus_id字段关联xg_dorm_campus表的id字段 - 树形数据的构建逻辑是:先查询所有校区,再查询所有宿舍区,然后根据关联关系构建树形结构