package com.sandu.ximon.admin.controller;
|
|
import com.github.pagehelper.PageHelper;
|
import com.sandu.common.domain.ResponseVO;
|
import com.sandu.common.object.BaseConditionVO;
|
import com.sandu.common.util.ResponseUtil;
|
import com.sandu.ximon.admin.param.RoleParam;
|
import com.sandu.ximon.admin.security.PermissionConfig;
|
import com.sandu.ximon.admin.service.RoleService;
|
import com.sandu.ximon.dao.domain.Role;
|
import com.sandu.ximon.dao.domain.RoleDetail;
|
import lombok.AllArgsConstructor;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
|
/**
|
* @author chenjiantian
|
* @date 2021/4/27 18:47
|
*/
|
@AllArgsConstructor
|
@RestController
|
@RequestMapping("/v1/role")
|
public class RoleController {
|
private PermissionConfig permissionConfig;
|
private final RoleService roleService;
|
|
/**
|
* 获取管理员的角色
|
*/
|
@GetMapping("/getRoleListByAdmin/{adminId}")
|
public ResponseVO<Object> getRoleListByAdmin(@PathVariable Long adminId) {
|
List<Role> roles = roleService.listByAdminId(adminId);
|
return ResponseUtil.success(roles);
|
}
|
|
|
@GetMapping("/list")
|
public ResponseVO<Object> listRole(BaseConditionVO conditionVO) {
|
if (!permissionConfig.check("角色管理")) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
|
List<RoleDetail> roleDetails = roleService.listRole(conditionVO.getPageNo(), conditionVO.getPageSize());
|
return ResponseUtil.success(roleDetails);
|
}
|
|
@PostMapping("/add")
|
public ResponseVO<Object> addRole(@Validated @RequestBody RoleParam param) {
|
boolean result = roleService.addRole(param);
|
if (result) {
|
return ResponseUtil.success("添加成功");
|
} else {
|
return ResponseUtil.success("添加失败");
|
}
|
}
|
|
@PostMapping("/update/{roleId}")
|
public ResponseVO<Object> updateRole(@PathVariable Long roleId, @Validated @RequestBody RoleParam param) {
|
boolean result = roleService.updateRole(roleId, param);
|
if (result) {
|
return ResponseUtil.success("编辑成功");
|
} else {
|
return ResponseUtil.success("编辑失败");
|
}
|
}
|
|
@PostMapping("/del/{roleId}")
|
public ResponseVO<Object> delRole(@PathVariable Long roleId) {
|
boolean result = roleService.delRole(roleId);
|
if (result) {
|
return ResponseUtil.success("删除成功");
|
} else {
|
return ResponseUtil.success("删除失败");
|
}
|
}
|
|
}
|