|
@@ -573,17 +573,27 @@ public class ImGroupMemberServiceImpl extends BaseServiceImpl<Long, ImGroupMembe
|
|
|
List<ImGroupMember> imGroupMemberList = imGroupMemberDao.queryByImGroupIdAndUserId(imGroupId.toString(), userIdList.stream().map(Objects::toString)
|
|
|
.collect(Collectors.joining(",")));
|
|
|
|
|
|
- if (imGroupMemberList == null || imGroupMemberList.size() == 0) {
|
|
|
+ if (CollectionUtils.isEmpty(imGroupMemberList)) {
|
|
|
throw new BizException("更新失败:找不到用户信息");
|
|
|
}
|
|
|
-
|
|
|
Date date = new Date();
|
|
|
- for (ImGroupMember imGroupMember : imGroupMemberList) {
|
|
|
- imGroupMember.setRoleType(roleType);
|
|
|
- imGroupMember.setUpdateTime(date);
|
|
|
+ ImGroupMember imGroupMember = imGroupMemberList.get(0);
|
|
|
+ imGroupMember.setGroupRoleType(null);
|
|
|
+ imGroupMember.setRoleType(roleType);
|
|
|
+ imGroupMember.setUpdateTime(date);
|
|
|
+ ImGroup group = imGroupDao.get(imGroupId);
|
|
|
+ if(!imGroupMember.getIsAdmin()){
|
|
|
+ this.initImGroupMembers(imGroupMemberList,group.getGroupType());
|
|
|
+ if(imGroupMember.getIsAdmin()){
|
|
|
+ try {
|
|
|
+ imPluginContext.getPluginService().changeGroupOwner(imGroupId,imGroupMember.getUserId().toString(),null);
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error(e.getMessage());
|
|
|
+ throw new BizException("更新失败:设置群主异常");
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- imGroupMemberDao.batchUpdate(imGroupMemberList);
|
|
|
-
|
|
|
+ imGroupMemberDao.update(imGroupMember);
|
|
|
return true;
|
|
|
}
|
|
|
|