Explorar o código

角色删除判断权限

%!s(int64=5) %!d(string=hai) anos
pai
achega
88d4b72d57

+ 1 - 1
cloud-model/src/main/java/com/hssx/cloudmodel/controller/RoleController.java

@@ -62,7 +62,7 @@ public class RoleController {
     public HttpRespMsg deleteRole(Role role, HttpServletRequest request,
                                HttpServletResponse response) {
         HttpRespMsg msg = new HttpRespMsg();
-        msg.data = roleService.removeById(role.getId());
+        msg.data = roleService.deleteById(role.getId());
         return msg;
     }
 

+ 2 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/service/RoleService.java

@@ -23,4 +23,6 @@ public interface RoleService extends IService<Role> {
     HttpRespMsg pageList(PageUtil page, String keyName);
 
     List<Role> getIdAndNamelist();
+
+    HttpRespMsg deleteById(Integer id);
 }

+ 19 - 3
cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/RoleServiceImpl.java

@@ -2,7 +2,9 @@ package com.hssx.cloudmodel.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.hssx.cloudmodel.entity.Role;
+import com.hssx.cloudmodel.entity.User;
 import com.hssx.cloudmodel.mapper.RoleMapper;
+import com.hssx.cloudmodel.mapper.UserMapper;
 import com.hssx.cloudmodel.service.RoleService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.hssx.cloudmodel.util.HttpRespMsg;
@@ -24,6 +26,8 @@ import java.util.List;
 public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements RoleService {
     @Autowired
     RoleMapper roleMapper;
+    @Autowired
+    UserMapper userMapper;
 
     @Override
     public HttpRespMsg addAndUpdateRole(Role role, Integer flag) {
@@ -50,9 +54,9 @@ public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements Ro
     public HttpRespMsg pageList(PageUtil page, String keyName) {
         HttpRespMsg msg = new HttpRespMsg();
         QueryWrapper<Role> qw = new QueryWrapper<>();
-        Integer start = (page.getPageNum()-1)*page.getPageSize();
-        if(keyName !=null && !"".equals(keyName)){
-            qw.like("role_name",keyName);
+        Integer start = (page.getPageNum() - 1) * page.getPageSize();
+        if (keyName != null && !"".equals(keyName)) {
+            qw.like("role_name", keyName);
         }
         Integer count = roleMapper.selectCount(qw);
         page.setTotal(count);
@@ -67,4 +71,16 @@ public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements Ro
     public List<Role> getIdAndNamelist() {
         return roleMapper.selectIdAndNamelist();
     }
+
+    @Override
+    public HttpRespMsg deleteById(Integer id) {
+        HttpRespMsg msg = new HttpRespMsg();
+        Integer count = userMapper.selectCount(new QueryWrapper<User>().eq("role_type", id));
+        if (count > 0) {
+            msg.setError("该角色已被应用到用户中,暂不提供删除操作");
+        } else {
+            roleMapper.deleteById(id);
+        }
+        return msg;
+    }
 }