|
@@ -1,5 +1,6 @@
|
|
|
package com.ym.controller;
|
|
|
|
|
|
+import com.google.common.collect.Lists;
|
|
|
import com.ym.mec.common.entity.ImMessageDto;
|
|
|
import com.ym.pojo.NoticeMessage;
|
|
|
import com.ym.service.GroupService;
|
|
@@ -7,6 +8,7 @@ import com.ym.service.MessageService;
|
|
|
import io.rong.messages.FileMessage;
|
|
|
import io.rong.messages.ImgMessage;
|
|
|
import io.rong.messages.TxtMessage;
|
|
|
+import io.rong.models.Result;
|
|
|
import io.rong.models.group.GroupMember;
|
|
|
import io.rong.models.group.GroupModel;
|
|
|
import io.rong.models.group.UserGroup;
|
|
@@ -19,7 +21,9 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
+import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* Created by weiqinxiao on 2019/2/25.
|
|
@@ -50,11 +54,20 @@ public class GroupController{
|
|
|
TxtMessage txtMessage = new TxtMessage(imMessageDto.getMessageContent(),imMessageDto.getExtra());
|
|
|
groupMessage.setContent(txtMessage);
|
|
|
}
|
|
|
- groupMessage.setTargetId(imMessageDto.getTargetIds());
|
|
|
groupMessage.setSenderId(imMessageDto.getSenderId());
|
|
|
groupMessage.setObjectName(imMessageDto.getObjectName());
|
|
|
groupMessage.setIsIncludeSender(1);
|
|
|
- return messageService.groupSend(groupMessage);
|
|
|
+ //融云只支持3个群以内的群发
|
|
|
+ String[] targetIds = imMessageDto.getTargetIds();
|
|
|
+ List<String> imGroupIds = Arrays.stream(targetIds).collect(Collectors.toList());
|
|
|
+ List<List<String>> partition = Lists.partition(imGroupIds, 3);
|
|
|
+ Result result = null;
|
|
|
+ for (List<String> integers : partition) {
|
|
|
+ String[] strings = integers.toArray(new String[integers.size()]);
|
|
|
+ groupMessage.setTargetId(strings);
|
|
|
+ result = messageService.groupSend(groupMessage);
|
|
|
+ }
|
|
|
+ return result;
|
|
|
}
|
|
|
|
|
|
@RequestMapping(value = "/sendDirection", method = RequestMethod.POST)
|