Browse Source

群主转让、群注销

zouxuan 1 year ago
parent
commit
0aab1f08ad

+ 14 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ImGroupServiceImpl.java

@@ -193,18 +193,22 @@ public class ImGroupServiceImpl extends BaseServiceImpl<String, ImGroup> impleme
         com.ym.mec.biz.dal.wrapper.ImGroupMemberWrapper.ImGroupMember groupMember = null;
         if (userId != null) {
             SysUser sysUser = teacherDao.getUser(userId);
-            groupMember = ImGroupMemberWrapper.ImGroupMember
-                    .builder()
-                    .userId(userId.longValue())
-                    .clientType("")
-                    .isAdmin(false)
-                    .avatar(sysUserService.getImAvatar(sysUser))
-                    .nickname(sysUserService.getImName(sysUser))
-                    .roleType(roleType)
-                    .tenantId(Optional.ofNullable(imGroup.getTenantId()).orElse(TenantContextHolder.getTenantId()))
-                    .build();
+            groupMember = new ImGroupMemberWrapper.ImGroupMember();
+            groupMember.setUserId(userId.longValue());
+            groupMember.setClientType("");
+            groupMember.setAvatar(sysUserService.getImAvatar(sysUser));
+            groupMember.setRoleType(roleType);
+            groupMember.setTenantId(Optional.ofNullable(imGroup.getTenantId()).orElse(TenantContextHolder.getTenantId()));
+            groupMember.setGroupRoleType(StringUtils.isEmpty(roleType)?EImGroupRoleType.Member.getCode():EImGroupRoleType.Admin.getCode());
+            if(StringUtils.isNotEmpty(roleType)){
+                groupMember.setType(EFriendRoleType.getByName(roleType).name());
+                groupMember.setNickname(StringUtils.isEmpty(sysUser.getRealName())?sysUser.getUsername():sysUser.getRealName());
+            }else {
+                groupMember.setNickname(StringUtils.isEmpty(sysUser.getUsername())?sysUser.getRealName():sysUser.getUsername());
+            }
             if(StringUtils.equals(roleType,"乐团领队")){
                 groupMember.setIsAdmin(true);
+                groupMember.setGroupRoleType(EImGroupRoleType.Owner.getCode());
             }
         }
         return imGroupCoreService.groupCreate(groupMember, group);