视频讲解
1_演示接口
2_演示接口
3_演示接口
4_讲解演示接口
演示的接口 – 37 个
course
course
-
POST
findCourseByCondition
-
POST
courseUpload
-
POST
saveOrUpdateCourse
-
GET
findCourseById
-
GET
updateCourseStatus
courseContent
courseContent
-
GET
findSectionAndLesson
-
GET
findCourseByCourseId
-
POST
saveOrUpdateSection
-
GET
updateSectionStatus
-
POST
saveOrUpdateLesson
PromotionSpace
PromotionSpace
-
GET
findAllPromotionSpace
-
POST
saveOrUpdatePromotionSpace
-
GET
findPromotionSpaceById
PromotionAd
PromotionAd
-
GET
findAllPromotionAdByPage
-
POST
PromotionAdUpload
-
POST
saveOrUpdatePromotionAd
-
GET
findPromotionAdById
-
GET
updatePromotionAdStatus
user
user
-
POST
findAllUserByPage
-
GET
updateUserStatus
-
GET
login
-
GET
findUserRoleById
-
POST
userContextRole
-
GET
getUserPermissions
role
role
-
POST
findAllRole
-
POST
saveOrUpdateRole
-
GET
findAllMenu
-
GET
findMenuByRoleId
-
POST
RoleContextMenu
-
GET
deleteRole
menu
menu
-
GET
findAllMenu
-
GET
findMenuInfoById
-
POST
saveOrUpdateMenu
ResourceCategory
ResourceCategory
-
GET
findAllResourceCategory
resource
resource
-
POST
findAllResource
-
POST
saveOrUpdateResource
-
GET
deleteResource
讲解并演示接口
完成资源分类管理功能
需求分析
- 权限管理模块展示资源列表页面,有一个资源分类按钮
- 点击资源分类,跳转到资源分类页面,对资源分类数据进行维护(增删改查)
-
后台对应的数据库表为:资源分类表
接口文档
完成资源分类模块的数据维护
资源分类信息查询
-
名称:
findAllResourceCategory
-
描述: 查询资源分类信息
-
URL: http://localhost:8080/ssm_web/ResourceCategory/findAllResourceCategory
-
请求方式: GET
-
请求示例
http://localhost:8080/ssm_web/ResourceCategory/findAllResourceCategory
- 响应参数示例
{
"success": true,
"state": 200,
"message": "响应成功",
"content": [
{
"id": 1,
"name": "角色管理",
"sort": 1,
"createdTime": 1595230906000,
"updatedTime": 1595230906000,
"createdBy": "system",
"updatedBy": "system"
},
...
]
}
添加 & 修改资源分类
-
名称:
saveOrUpdateResourceCategory
-
描述: 添加 & 修改资源分类接口
-
URL: http://localhost:8080/ssm_web/ResourceCategory/saveOrUpdateResourceCategory
-
请求方式: POST
-
请求示例
// 新增
{
"name": "作业管理",
"sort": 1
}
// 修改
{
"id": 10,
"name": "家庭作业管理",
"sort": 2
}
- 响应参数
参数名称 | 类型 |
---|---|
success | boolean |
state | integer(int32) |
message | string |
content | object |
删除资源分类
-
名称:
deleteResourceCategory
-
描述: 删除资源分类接口
-
URL: http://localhost:8080/ssm_web/ResourceCategory/deleteResourceCategory
-
请求方式: GET
-
请求示例
http://localhost:8080/ssm_web/ResourceCategory/deleteResourceCategory?id=1
- 响应数据
参数名称 | 类型 |
---|---|
success | boolean |
state | integer(int32) |
message | string |
content | object |
完成为角色分配资源功能
需求分析
- 权限管理模块的角色列表页面,可以为角色分配资源
- 当选中某个角色,点击分配资源时,就会显示该角色当前拥有的资源权限信息
例如:点击课程管理员的分配资源按钮,会显示课程管理员拥有哪些的资源权限的信息
课程管理员所拥有的是课程管理资源分类下的资源权限
前端需要这两组数据进行资源列表的展示:
-
查询资源分类信息 – GET
ResourceCategory/findAllResourceCategory
-
资源信息分页 – GET
resource/findAllResource
资源列表展示后,需要回显当前角色拥有的资源信息
获取当前角色拥有的资源信息步骤提示
实体类
- 在 ResourceCategory 类中,有一个集合,泛型为 Resource,来表示一对多关系
// 资源集合 一对多
private List<Resource> resourceList = new ArrayList<>();
dao
层
- 在 RoleMapper 中需要编写两个方法
- 方法 1:查询当前角色拥有的资源分类信息
- 方法 2:查询当前角色拥有的资源信息
service
层
- 调用 dao 中的两个方法分别获取资源分类数据和资源数据
- 将资源数据封装到对应的分类下
web
层
- 编写一个接口,参数为角色 id
- 根据角色 id 查询当前角色拥有的资源信息并返回
为角色分配资源步骤提示
实体类
- 创建 RoleResourceRelation 类
public class RoleResourceRelation{
private Integer id;
private Integer resourceId;
private Integer roleId;
private Date createdTime;
private Date updatedTime;
private String createdBy;
private String updatedBy;
// getter setter ...
}
- RoleResourceRelation 对应的是 role_resource_relation 表,该表是一张中间表,记录了角色与资源的对应关系
dao
层
- 方法 1:根据角色 ID 删除角色与资源的关联关系(操作中中间表 role_resource_relation)
- 方法 2:为角色分配资源,删除完成后,插入最新的关联关系
service
层
-
编写一个为角色分配资源的方法
- 先清空之前的关联关系
- 然后补全信息,插入新的关联关系
web
层
- 创建一个 VO 类:RoleResourceVo,用来接收角色 ID 与资源 ID 集合
public class RoleResourceVo {
private Integer roleId;
private List<Integer> resourceIdList;
// getter setter ...
}
- 将接收的数据,交给 service 处理
接口文档
获取当前角色拥有的资源分类和资源信息
-
名称:
findResourceListByRoleId
-
描述: 获取当前角色拥有的资源分类和资源信息的接口
-
URL: http://localhost:8080/ssm_web/role/findResourceListByRoleId
-
请求方式: GET
-
请求示例
http://localhost:8080/ssm_web/role/findResourceListByRoleId?roleId=3
- 响应数据示例
{
"success": true,
"state": 200,
"message": "成功获取角色的资源信息",
"content": [
{
"id": 4,
"name": "课程管理",
"sort": 4,
"createdTime": 1595230906000,
"updatedTime": 1595230906000,
"createdBy": "system",
"updatedBy": "system",
"resourceList": [
{
"id": 33,
"name": "课程上下架",
"url": "/boss/course/changeState",
"categoryId": 4,
"description": "课程上下架",
"createdTime": 1595230917000,
"updatedTime": 1595230917000,
"createdBy": "system",
"updatedBy": "system"
},
...
]
},
...
]
}
为角色分配资源
-
名称:
roleContextResource
- 描述: 为角色分配资源接口
- URL: http://localhost:8080/ssm_web/role/roleContextResource
- 请求方式: POST
- 请求示例
roleId - 角色 id
resourceIdList - 要分配的资源 id
{
"roleId": 5,
"resourceIdList": [1, 2, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]
}
- 响应结果示例
参数名称 | 类型 |
---|---|
success | boolean |
state | integer(int32) |
message | string |
content | object |
想了解更多,欢迎关注我的微信公众号:Renda_Zhang