|
|
@@ -0,0 +1,136 @@
|
|
|
+package com.goafanti.permission.controller;
|
|
|
+
|
|
|
+import javax.annotation.Resource;
|
|
|
+
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
+import org.springframework.web.bind.annotation.RequestMethod;
|
|
|
+import org.springframework.web.bind.annotation.RestController;
|
|
|
+
|
|
|
+import com.goafanti.common.bo.Result;
|
|
|
+import com.goafanti.common.constant.ErrorConstants;
|
|
|
+import com.goafanti.common.controller.BaseApiController;
|
|
|
+import com.goafanti.common.dao.PermissionMapper;
|
|
|
+import com.goafanti.common.model.Permission;
|
|
|
+import com.goafanti.common.utils.StringUtils;
|
|
|
+import com.goafanti.permission.bo.PermissionBo;
|
|
|
+import com.goafanti.permission.service.PermissionService;
|
|
|
+
|
|
|
+@RestController
|
|
|
+@RequestMapping("api/admin")
|
|
|
+public class NewPermissionApiController extends BaseApiController {
|
|
|
+ @Resource
|
|
|
+ private PermissionService permissionService;
|
|
|
+ @Autowired
|
|
|
+ PermissionMapper permissionMapper;
|
|
|
+ /**权限管理列表 **/
|
|
|
+ @RequestMapping(value = "/permissions", method = RequestMethod.POST)
|
|
|
+ public Result permissions() {
|
|
|
+ Result res = new Result();
|
|
|
+ res.setData(permissionService.findPermissionsAll());
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**权限管理最上级新增 **/
|
|
|
+ @RequestMapping(value = "/addSupPermission" , method = RequestMethod.POST)
|
|
|
+ public Result addSupPermission(Permission record ){
|
|
|
+ Result res = new Result();
|
|
|
+ if(StringUtils.isBlank(record.getName())){
|
|
|
+ res.getError().add(buildError("","权限名不能为空"));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ String aut=permissionMapper.selectAutNoByName(record.getName());
|
|
|
+ if(aut!=null){
|
|
|
+ res.getError().add(buildError("","权限已存在"));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ res.setData(permissionService.insertn(record));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ /**新增上级名称自动生成 **/
|
|
|
+ @RequestMapping(value = "/selectSuperIdById" , method = RequestMethod.POST)
|
|
|
+ public Permission selectSuperIdById(String id ){
|
|
|
+ return permissionService.selectSuperIdById(id);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**权限管理新增 **/
|
|
|
+ @RequestMapping(value = "/addPermission" , method = RequestMethod.POST)
|
|
|
+ public Result addPermission(Permission record ){
|
|
|
+ Result res = new Result();
|
|
|
+ if(StringUtils.isBlank(record.getName())|| StringUtils.isBlank(record.getUrl())
|
|
|
+ || StringUtils.isBlank(record.getSuperId())){
|
|
|
+ res.getError().add(buildError("","名称、路径、上级不能为空"));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ String aut=permissionMapper.selectAutNoByName(record.getName());
|
|
|
+ if(aut!=null){
|
|
|
+ res.getError().add(buildError("","权限已存在"));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ String supaut=permissionMapper.selectAutNoByName(record.getSuperId());
|
|
|
+ if(supaut.length()>=7){
|
|
|
+ res.getError().add(buildError("","权限层级超限"));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ res.setData(permissionService.insertSubordinate(record));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**删除列表信息**/
|
|
|
+ @RequestMapping(value = "/deleteById" , method = RequestMethod.POST)
|
|
|
+ public Result deleteById(String id){
|
|
|
+ Result res = new Result();
|
|
|
+ if(StringUtils.isBlank(id)){
|
|
|
+ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "id"));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ Permission permission=permissionMapper.selectAllById(id);
|
|
|
+ String superId=permission.getName();
|
|
|
+ int subordinate=permissionMapper.selectCountBySuperId(superId);
|
|
|
+ if(subordinate>0){
|
|
|
+ res.getError().add(buildError("","存在下级权限不能删除"));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ res.setData(permissionService.deleteById(id));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**编辑页面数据读取**/
|
|
|
+ @RequestMapping(value = "/selectAllById" , method = RequestMethod.POST)
|
|
|
+ public Result selectAllById(String id){
|
|
|
+ Result res = new Result();
|
|
|
+ res.setData(permissionService.selectAllById(id));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**上级权限自动补全查询**/
|
|
|
+ @RequestMapping(value = "/selectName" , method = RequestMethod.POST)
|
|
|
+ public Result selectName(String name){
|
|
|
+ Result res = new Result();
|
|
|
+ res.setData(permissionService.selectName(name));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**修改信息**/
|
|
|
+ @RequestMapping(value = "/updateById" , method = RequestMethod.POST)
|
|
|
+ public Result updateById(Permission record ){
|
|
|
+ Result res = new Result();
|
|
|
+ if(StringUtils.isBlank(record.getName())|| StringUtils.isBlank(record.getUrl())
|
|
|
+ || StringUtils.isBlank(record.getSuperId())){
|
|
|
+ res.getError().add(buildError("","名称、路径、上级不能为空"));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ String pname=permissionMapper.selectAutNoByName(record.getSuperId());
|
|
|
+ if(StringUtils.isBlank(pname)){
|
|
|
+ res.getError().add(buildError("","上级权限不匹配"));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ String supaut=permissionMapper.selectAutNoByName(record.getSuperId());
|
|
|
+ if(supaut.length()>=7){
|
|
|
+ res.getError().add(buildError("","权限层级超限"));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+ res.setData(permissionService.updateById(record));
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+}
|