liujc 2 years ago
parent
commit
cd5f8a10cb

+ 6 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/im/impl/ImGroupCoreServiceImpl.java

@@ -184,8 +184,10 @@ public class ImGroupCoreServiceImpl implements ImGroupCoreService {
                 .type(Optional.ofNullable(imGroup.getType()).orElse("CLASS"))
                 .groupId(String.valueOf(id));
 
+        ImGroup group = JSON.parseObject(imGroup.jsonString(), ImGroup.class);
+        group.setId(imGroup.getGroupId());
         // 保存群组信息
-        imGroupService.saveOrUpdate(JSON.parseObject(imGroup.jsonString(), ImGroup.class));
+        imGroupService.saveOrUpdate(group);
 
 
         List<ImGroupMemberWrapper.ImGroupMember> groupMembers = Lists.newArrayList();
@@ -202,7 +204,7 @@ public class ImGroupCoreServiceImpl implements ImGroupCoreService {
                 .roleType(userInfo.getRoleType())
                 .build();
 
-        groupMembers.add(groupMember.imUserId(getImUserId(groupMember.getImUserId(),userInfo.getClientType())));
+        groupMembers.add(groupMember.imUserId(getImUserId(groupMember.getUserId().toString(),userInfo.getClientType())));
         imGroupMemberService.insertBatch(JSON.parseArray(JSON.toJSONString(groupMembers), ImGroupMember.class));
 
         // 自动激活学生IM帐号
@@ -228,7 +230,7 @@ public class ImGroupCoreServiceImpl implements ImGroupCoreService {
     private List<GroupMemberWrapper.ImGroupMember> getImGroupMembers(List<ImGroupMemberWrapper.ImGroupMember> groupMembers) {
         // 统一转换为群组成员信息
         for (ImGroupMemberWrapper.ImGroupMember member : groupMembers) {
-            member.setImUserId(getImUserId(member.getImUserId(),member.getClientType()));
+            member.setImUserId(getImUserId(member.getUserId().toString(),member.getClientType()));
         }
         return JSON.parseArray(JSON.toJSONString(groupMembers), GroupMemberWrapper.ImGroupMember.class);
     }
@@ -253,7 +255,7 @@ public class ImGroupCoreServiceImpl implements ImGroupCoreService {
             }
 
             try {
-                String imUserId = member.getImUserId();
+                String imUserId = member.getUserId().toString();
                 if (StringUtils.isBlank(imUserId)) {
                     imUserId = getImUserId(String.valueOf(member.getUserId()),
                             member.getClientType());

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/im/ImGroupMemberWrapper.java

@@ -106,7 +106,7 @@ public class ImGroupMemberWrapper {
 
         public String getImUserId() {
             if (StringUtils.isBlank(this.imUserId)) {
-                return MessageFormat.format("{0}:{1}", String.valueOf(getUserId()), getClientType());
+                return MessageFormat.format("{0}_{1}", String.valueOf(getUserId()), getClientType());
             }
             return this.imUserId;
         }