74 lines
2.8 KiB
Java
74 lines
2.8 KiB
Java
package io.dataease.plugins.server;
|
||
|
||
|
||
import com.github.pagehelper.Page;
|
||
import com.github.pagehelper.PageHelper;
|
||
import io.dataease.auth.service.ExtAuthService;
|
||
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.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.ApiOperation;
|
||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||
import org.springframework.beans.factory.annotation.Autowired;
|
||
import org.springframework.web.bind.annotation.*;
|
||
import springfox.documentation.annotations.ApiIgnore;
|
||
|
||
import java.util.List;
|
||
@Api(tags = "xpack:角色管理")
|
||
@RequestMapping("/plugin/role")
|
||
@RestController
|
||
public class XRoleServer {
|
||
|
||
@Autowired
|
||
private ExtAuthService extAuthService;
|
||
|
||
@RequiresPermissions("role:add")
|
||
@ApiOperation("新增角色")
|
||
@PostMapping("/create")
|
||
public void create(@RequestBody XpackRoleDto role){
|
||
RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class);
|
||
roleXpackService.save(role);
|
||
}
|
||
|
||
|
||
@RequiresPermissions("role:del")
|
||
@ApiOperation("删除角色")
|
||
@PostMapping("/delete/{roleId}")
|
||
public void delete(@PathVariable("roleId") Long roleId){
|
||
RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class);
|
||
extAuthService.clearDeptResource(roleId);
|
||
roleXpackService.delete(roleId);
|
||
}
|
||
|
||
|
||
@RequiresPermissions("role:edit")
|
||
@ApiOperation("更新角色")
|
||
@PostMapping("/update")
|
||
public void update(@RequestBody XpackRoleDto role){
|
||
RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class);
|
||
roleXpackService.update(role);
|
||
}
|
||
|
||
@RequiresPermissions("role:read")
|
||
@ApiOperation("分页查询")
|
||
@PostMapping("/roleGrid/{goPage}/{pageSize}")
|
||
public Pager<List<XpackRoleDto>> roleGrid(@PathVariable int goPage, @PathVariable int pageSize, @RequestBody XpackGridRequest request) {
|
||
RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class);
|
||
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
||
Pager<List<XpackRoleDto>> listPager = PageUtils.setPageInfo(page, roleXpackService.query(request));
|
||
return listPager;
|
||
}
|
||
|
||
@ApiIgnore
|
||
@PostMapping("/all")
|
||
public List<XpackRoleItemDto> all() {
|
||
RoleXpackService roleXpackService = SpringContextUtil.getBean(RoleXpackService.class);
|
||
return roleXpackService.allRoles();
|
||
}
|
||
}
|