diff --git a/backend/src/main/java/io/dataease/plugins/server/XRoleServer.java b/backend/src/main/java/io/dataease/plugins/server/XRoleServer.java index ff9db5f9ff..6980aa9d09 100644 --- a/backend/src/main/java/io/dataease/plugins/server/XRoleServer.java +++ b/backend/src/main/java/io/dataease/plugins/server/XRoleServer.java @@ -10,10 +10,16 @@ import io.dataease.commons.utils.PageUtils; import io.dataease.commons.utils.Pager; import io.dataease.plugins.common.entity.XpackGridRequest; import io.dataease.plugins.config.SpringContextUtil; +import io.dataease.plugins.xpack.role.dto.request.RoleUserMappingDelRequest; +import io.dataease.plugins.xpack.role.dto.request.RoleUserMappingRequest; +import io.dataease.plugins.xpack.role.dto.request.RoleUserRequest; +import io.dataease.plugins.xpack.role.dto.response.RoleUserItem; import io.dataease.plugins.xpack.role.dto.response.XpackRoleDto; import io.dataease.plugins.xpack.role.dto.response.XpackRoleItemDto; import io.dataease.plugins.xpack.role.service.RoleXpackService; import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; @@ -52,7 +58,7 @@ public class XRoleServer { ) public void delete(@PathVariable("roleId") Long roleId){ RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class); - extAuthService.clearDeptResource(roleId); + extAuthService.clearRoleResource(roleId); roleXpackService.delete(roleId); } @@ -73,6 +79,11 @@ public class XRoleServer { @RequiresPermissions("role:read") @ApiOperation("分页查询") @PostMapping("/roleGrid/{goPage}/{pageSize}") + @ApiImplicitParams({ + @ApiImplicitParam(paramType = "path", name = "goPage", value = "页码", required = true, dataType = "Integer"), + @ApiImplicitParam(paramType = "path", name = "pageSize", value = "页容量", required = true, dataType = "Integer"), + @ApiImplicitParam(name = "request", value = "查询条件", required = true) + }) public Pager> roleGrid(@PathVariable int goPage, @PathVariable int pageSize, @RequestBody XpackGridRequest request) { RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class); Page page = PageHelper.startPage(goPage, pageSize, true); @@ -86,4 +97,36 @@ public class XRoleServer { RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class); return roleXpackService.allRoles(); } + + @RequiresPermissions({"role:read", "user:read"}) + @ApiOperation("查询角色下用户") + @ApiImplicitParams({ + @ApiImplicitParam(paramType = "path", name = "goPage", value = "页码", required = true, dataType = "Integer"), + @ApiImplicitParam(paramType = "path", name = "pageSize", value = "页容量", required = true, dataType = "Integer"), + @ApiImplicitParam(name = "request", value = "查询条件", required = true) + }) + @PostMapping("/userGrid/{goPage}/{pageSize}") + public Pager> userGrid(@PathVariable int goPage, @PathVariable int pageSize, @RequestBody RoleUserRequest request) { + RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class); + Page page = PageHelper.startPage(goPage, pageSize, true); + List userItems = roleXpackService.userItems(request); + Pager> setPageInfo = PageUtils.setPageInfo(page, userItems); + return setPageInfo; + } + + @RequiresPermissions({"role:edit", "user:edit"}) + @ApiOperation("绑定用户") + @PostMapping("/bindUser") + public void bindUser(@RequestBody RoleUserMappingRequest request) { + RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class); + roleXpackService.addUser(request); + } + + @RequiresPermissions({"role:edit", "user:edit"}) + @ApiOperation("解绑用户") + @PostMapping("/unBindUsers") + public void unBindUsers(@RequestBody RoleUserMappingDelRequest request) { + RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class); + roleXpackService.batchDelUser(request); + } }