Browse Source

用户组绑定角色时,删除原来此用户下所有角色关系

hym 4 years ago
parent
commit
a0bdc821fb

+ 2 - 0
user_center/src/main/java/com/huaxu/dto/UserGroupDto.java

@@ -14,4 +14,6 @@ public class UserGroupDto {
     private Long roleId;
     @ApiModelProperty(value = "右边全部删除标识")
     private Integer deleteFlag=1;
+    @ApiModelProperty(value = "用户右侧ids")
+    private List<Long> orginUserIds;
 }

+ 5 - 1
user_center/src/main/java/com/huaxu/service/impl/UserGroupServiceImpl.java

@@ -184,6 +184,8 @@ public class UserGroupServiceImpl implements UserGroupService {
         List<Long> userIds = userGroupDto.getUserIds();
         List<GroupUser>groupUsers=new ArrayList<>();
         List<UserRoleEntity>userRoleEntities=new ArrayList<>();
+        List<Long> orginUserIds = userGroupDto.getOrginUserIds();
+
         userIds.forEach(id->{
             GroupUser user=new GroupUser();
             user.setUserId(id);
@@ -196,8 +198,10 @@ public class UserGroupServiceImpl implements UserGroupService {
             user.setStatus(1);
             userRoleEntities.add(userRoleEntity);
         });
+        if(orginUserIds.size()>0){
+            userGroupMapper.deleteUserRoles(userGroupDto);
+        }
 
-        userGroupMapper.deleteUserRoles(userGroupDto);
         if(userGroupDto.getDeleteFlag()==1){
             userGroupMapper.batchInsertRoles(userRoleEntities);
             groupUserMapper.batchInsert(groupUsers);

+ 1 - 1
user_center/src/main/resources/mapper/UserGroupMapper.xml

@@ -235,7 +235,7 @@
     </update>
     <update id="deleteUserRoles">
        update uims_user_role set STATUS=0 where STATUS!=0 and USER_ID in
-        <foreach collection="userGroupDto.userIds" item="id" index="index" open="(" close=")" separator=",">
+        <foreach collection="userGroupDto.orginUserIds" item="id" index="index" open="(" close=")" separator=",">
             #{id}
         </foreach>