Explorar o código

角色删除,部门删除

谭斌 %!s(int64=2) %!d(string=hai) anos
pai
achega
04e01a8154

+ 4 - 1
authorize-api-service/src/main/java/com/xy/service/SysRoleMenuService.java

@@ -1,5 +1,8 @@
 package com.xy.service;
 
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.xy.entity.SysRoleMenu;
+
 import java.util.List;
 
 /***
@@ -7,7 +10,7 @@ import java.util.List;
  * @author 谭斌
  * @date 2022/12/13 9:08
  */
-public interface SysRoleMenuService {
+public interface SysRoleMenuService extends IService<SysRoleMenu> {
 
     /**
      * 更新角色菜单权限

+ 2 - 2
authorize-api-service/src/main/java/com/xy/service/impl/CaptchaServiceImpl.java

@@ -27,7 +27,7 @@ import javax.servlet.http.HttpServletRequest;
 public class CaptchaServiceImpl implements CaptchaService {
 
     private final com.anji.captcha.service.CaptchaService captchaService;
-
+ 
     @Override
     public Boolean reVerification(String captchaVerification) {
         CaptchaVO captchaVO = new CaptchaVO();
@@ -77,7 +77,7 @@ public class CaptchaServiceImpl implements CaptchaService {
      * @param code
      * @return
      */
-    
+
     public static String getRepDesc(String code) {
         RepCodeEnum[] repCodeEnums = RepCodeEnum.values();
         for (RepCodeEnum repCodeEnum : repCodeEnums) {

+ 6 - 0
authorize-api-service/src/main/java/com/xy/service/impl/SysDeptServiceImpl.java

@@ -10,10 +10,12 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.xy.dto.SysDeptDto;
 import com.xy.entity.SysDept;
 import com.xy.entity.SysDeptRelation;
+import com.xy.entity.SysUserDept;
 import com.xy.mapper.SysDeptMapper;
 import com.xy.service.SysDeptRelationService;
 import com.xy.service.SysDeptRoleService;
 import com.xy.service.SysDeptService;
+import com.xy.service.SysUserDeptService;
 import com.xy.utils.R;
 import com.xy.utils.SaTokenUtils;
 import com.xy.vo.SysDeptVo;
@@ -39,6 +41,7 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
 
     private final SysDeptRelationService sysDeptRelationService;
     private final SysDeptRoleService sysDeptRoleService;
+    private final SysUserDeptService sysUserDeptService;
 
 
     @Override
@@ -117,6 +120,9 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
         sysDeptRelationService.removeDeptRelationById(id);
         //部门角色关系移除
         sysDeptRoleService.removeDeptRoleById(id);
+        //业务用户部门关系 sys_user_dept
+        sysUserDeptService.remove(Wrappers.<SysUserDept>lambdaQuery().in(SysUserDept::getDeptId, idList));
+        
         return R.ok(Boolean.TRUE);
     }
 

+ 33 - 1
authorize-api-service/src/main/java/com/xy/service/impl/SysRoleServiceImpl.java

@@ -1,5 +1,6 @@
 package com.xy.service.impl;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -7,10 +8,15 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.xy.dto.BatchDeleteDto;
 import com.xy.dto.SysRoleDto;
+import com.xy.entity.SysDeptRole;
 import com.xy.entity.SysRole;
+import com.xy.entity.SysRoleMenu;
+import com.xy.entity.SysUserRole;
 import com.xy.mapper.SysRoleMapper;
+import com.xy.service.SysDeptRoleService;
 import com.xy.service.SysRoleMenuService;
 import com.xy.service.SysRoleService;
+import com.xy.service.SysUserRoleService;
 import com.xy.utils.PageBean;
 import com.xy.utils.R;
 import com.xy.utils.SaTokenUtils;
@@ -19,6 +25,9 @@ import com.xy.vo.SysRoleVo;
 import io.swagger.annotations.Api;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
 
 import static com.xy.utils.Beans.copy;
 import static com.xy.utils.PlusBeans.toIPage;
@@ -35,6 +44,8 @@ import static com.xy.utils.PlusBeans.toPageBean;
 public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> implements SysRoleService {
 
     private final SysRoleMenuService sysRoleMenuService;
+    private final SysDeptRoleService sysDeptRoleService;
+    private final SysUserRoleService sysUserRoleService;
 
     @Override
     public R<Boolean> saveOrUpdate(SysRoleDto sysRoleDto) {
@@ -59,7 +70,14 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
 
     @Override
     public R<Boolean> batchDelete(BatchDeleteDto batchDeleteDto) {
-        return R.ok(removeByIds(batchDeleteDto.getIds()));
+        List<Long> ids = batchDeleteDto.getIds();
+        if (CollUtil.isNotEmpty(ids)) {
+            for (Long id : ids) {
+                deleteRoleById(id);
+            }
+        }
+
+        return R.ok(Boolean.TRUE);
     }
 
     @Override
@@ -85,5 +103,19 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
         return R.ok(sysRoleMenuService.saveRoleMenus(roleMenuVo.getId(), roleMenuVo.getMenuIds()));
     }
 
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public R<Boolean> deleteRoleById(Long id) {
+        //角色 sys_role
+        removeById(id);
+        //角色菜单 sys_role_menu
+        sysRoleMenuService.remove(Wrappers.<SysRoleMenu>lambdaQuery().eq(SysRoleMenu::getRoleId, id));
+        //部门角色 sys_dept_role
+        sysDeptRoleService.remove(Wrappers.<SysDeptRole>lambdaQuery().eq(SysDeptRole::getRoleId, id));
+        //用户角色 sys_user_role
+        sysUserRoleService.remove(Wrappers.<SysUserRole>lambdaQuery().eq(SysUserRole::getRoleId, id));
+        return R.ok(Boolean.TRUE);
+    }
+
 
 }

+ 5 - 0
authorize-api/src/main/java/com/xy/service/SysRoleService.java

@@ -73,4 +73,9 @@ public interface SysRoleService {
     R<Boolean> saveRoleMenus(@RequestBody RoleMenuVo roleMenuVo);
 
 
+    @ApiOperation(value = "删除角色", notes = "删除角色")
+    @DeleteMapping
+    R<Boolean> deleteRoleById(@PathVariable("id") Long id);
+
+
 }