Browse Source

角色删除

wangliang 3 years ago
parent
commit
81407f3fe6

+ 4 - 4
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/SysRoleGroupMemberServiceImpl.java

@@ -170,7 +170,7 @@ public class SysRoleGroupMemberServiceImpl extends ServiceImpl<SysRoleGroupMembe
      */
     @Override
     public int findByIdsCount(List<Long> ids) {
-        return this.count(new QueryWrapper<SysRoleGroupMember>().lambda().in(SysRoleGroupMember::getId, ids));
+        return this.count(new QueryWrapper<SysRoleGroupMember>().lambda().in(SysRoleGroupMember::getId, ids).eq(SysRoleGroupMember::getEnable, true));
     }
 
     /**
@@ -182,7 +182,7 @@ public class SysRoleGroupMemberServiceImpl extends ServiceImpl<SysRoleGroupMembe
      */
     @Override
     public List<SysRoleGroupMember> findByRoleIdAndUserId(Long roleId, Long userId) {
-        return this.list(new QueryWrapper<SysRoleGroupMember>().lambda().eq(SysRoleGroupMember::getRoleId, roleId).eq(SysRoleGroupMember::getUserId, userId));
+        return this.list(new QueryWrapper<SysRoleGroupMember>().lambda().eq(SysRoleGroupMember::getRoleId, roleId).eq(SysRoleGroupMember::getUserId, userId).eq(SysRoleGroupMember::getEnable, true));
     }
 
     /**
@@ -194,7 +194,7 @@ public class SysRoleGroupMemberServiceImpl extends ServiceImpl<SysRoleGroupMembe
      */
     @Override
     public List<SysRoleGroupMember> findByRoleIdsAndMemberId(List<Long> roleIds, Long memberId) {
-        return this.list(new QueryWrapper<SysRoleGroupMember>().lambda().in(SysRoleGroupMember::getRoleId, roleIds).eq(SysRoleGroupMember::getMemberId, memberId));
+        return this.list(new QueryWrapper<SysRoleGroupMember>().lambda().in(SysRoleGroupMember::getRoleId, roleIds).eq(SysRoleGroupMember::getMemberId, memberId).eq(SysRoleGroupMember::getEnable, true));
     }
 
     /**
@@ -206,7 +206,7 @@ public class SysRoleGroupMemberServiceImpl extends ServiceImpl<SysRoleGroupMembe
      */
     @Override
     public List<SysRoleGroupMember> findByRoleIdsAndMemberIds(List<Long> roleIds, List<Long> memberIds) {
-        return this.list(new QueryWrapper<SysRoleGroupMember>().lambda().in(SysRoleGroupMember::getRoleId, roleIds).in(SysRoleGroupMember::getMemberId, memberIds));
+        return this.list(new QueryWrapper<SysRoleGroupMember>().lambda().in(SysRoleGroupMember::getRoleId, roleIds).in(SysRoleGroupMember::getMemberId, memberIds).eq(SysRoleGroupMember::getEnable, true));
     }
 
     /**

+ 14 - 0
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/SysRoleServiceImpl.java

@@ -66,6 +66,9 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
     @Resource
     PushUserTrackService pushUserTrackService;
 
+    @Resource
+    SysRoleGroupMemberService sysRoleGroupMemberService;
+
     @Override
     public IPage<SysRole> list(String name, Boolean enable, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
@@ -204,6 +207,12 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
         UpdateWrapper<SysRole> updateWrapper = new UpdateWrapper<>();
         updateWrapper.lambda().set(SysRole::getEnable, role.getEnable()).eq(SysRole::getId, role.getId());
         this.update(updateWrapper);
+
+        UpdateWrapper<SysRoleGroupMember> sysRoleGroupMemberUpdateWrapper = new UpdateWrapper<>();
+        sysRoleGroupMemberUpdateWrapper.lambda().eq(SysRoleGroupMember::getRoleId, role.getId())
+                .set(SysRoleGroupMember::getEnable, role.getEnable());
+        sysRoleGroupMemberService.update(sysRoleGroupMemberUpdateWrapper);
+
         commonCacheService.updateRoleCache(role.getId());
         //如果状态为禁用,需要踢下线重新登录
         if (!role.getEnable()) {
@@ -226,6 +235,11 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
         //删除权限
         sysRolePrivilegeService.removeByRoleId(id);
         this.removeById(id);
+
+        QueryWrapper<SysRoleGroupMember> sysRoleGroupMemberQueryWrapper = new QueryWrapper<>();
+        sysRoleGroupMemberQueryWrapper.lambda().eq(SysRoleGroupMember::getRoleId, id);
+        sysRoleGroupMemberService.remove(sysRoleGroupMemberQueryWrapper);
+
         commonCacheService.removeRoleCache(id);
         commonCacheService.removeRolePrivilegeCache(id);
         return true;

+ 1 - 0
teachcloud-common/src/main/resources/mapper/SysUserMapper.xml

@@ -352,6 +352,7 @@
                 and su.real_name like concat('%',#{name},'%')
             </if>
             and su.enable = 1
+            and srgm.enable = 1
         </where>
     </select>
 </mapper>