|
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.google.common.collect.Lists;
|
|
import com.google.common.collect.Lists;
|
|
import com.microsvc.toolkit.middleware.im.ImPluginContext;
|
|
import com.microsvc.toolkit.middleware.im.ImPluginContext;
|
|
import com.microsvc.toolkit.middleware.im.message.GroupMemberWrapper;
|
|
import com.microsvc.toolkit.middleware.im.message.GroupMemberWrapper;
|
|
|
|
+import com.microsvc.toolkit.middleware.im.message.MessageWrapper;
|
|
import com.microsvc.toolkit.middleware.im.properties.ImConfigProperties;
|
|
import com.microsvc.toolkit.middleware.im.properties.ImConfigProperties;
|
|
import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
|
|
import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
|
|
import com.yonge.cooleshow.auth.api.entity.SysUser;
|
|
import com.yonge.cooleshow.auth.api.entity.SysUser;
|
|
@@ -19,7 +20,6 @@ import com.yonge.cooleshow.biz.dal.entity.*;
|
|
import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
|
|
import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
|
|
import com.yonge.cooleshow.biz.dal.enums.ImGroupMemberRoleType;
|
|
import com.yonge.cooleshow.biz.dal.enums.ImGroupMemberRoleType;
|
|
import com.yonge.cooleshow.biz.dal.enums.ImGroupType;
|
|
import com.yonge.cooleshow.biz.dal.enums.ImGroupType;
|
|
-import com.yonge.cooleshow.biz.dal.service.*;
|
|
|
|
import com.yonge.cooleshow.biz.dal.entity.Teacher;
|
|
import com.yonge.cooleshow.biz.dal.entity.Teacher;
|
|
import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
|
|
import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
|
|
import com.yonge.cooleshow.biz.dal.enums.ImGroupMemberRoleType;
|
|
import com.yonge.cooleshow.biz.dal.enums.ImGroupMemberRoleType;
|
|
@@ -35,6 +35,7 @@ import com.yonge.cooleshow.biz.dal.service.TeacherService;
|
|
import com.yonge.cooleshow.biz.dal.wrapper.im.ImGroupWrapper;
|
|
import com.yonge.cooleshow.biz.dal.wrapper.im.ImGroupWrapper;
|
|
import com.yonge.toolset.base.exception.BizException;
|
|
import com.yonge.toolset.base.exception.BizException;
|
|
import com.yonge.toolset.base.util.ThreadPool;
|
|
import com.yonge.toolset.base.util.ThreadPool;
|
|
|
|
+import com.yonge.toolset.utils.http.HttpUtil;
|
|
import io.rong.RongCloud;
|
|
import io.rong.RongCloud;
|
|
import io.rong.methods.message.history.History;
|
|
import io.rong.methods.message.history.History;
|
|
import io.rong.models.Result;
|
|
import io.rong.models.Result;
|
|
@@ -53,6 +54,9 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
import java.io.*;
|
|
import java.io.*;
|
|
|
|
+import java.net.HttpURLConnection;
|
|
|
|
+import java.net.MalformedURLException;
|
|
|
|
+import java.net.URL;
|
|
import java.nio.charset.StandardCharsets;
|
|
import java.nio.charset.StandardCharsets;
|
|
import java.text.MessageFormat;
|
|
import java.text.MessageFormat;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
@@ -62,6 +66,10 @@ import java.util.zip.ZipEntry;
|
|
import java.util.zip.ZipFile;
|
|
import java.util.zip.ZipFile;
|
|
import java.util.zip.ZipInputStream;
|
|
import java.util.zip.ZipInputStream;
|
|
|
|
|
|
|
|
+import static com.microsvc.toolkit.middleware.im.message.ETencentMessage.TIMImageElem;
|
|
|
|
+import static com.microsvc.toolkit.middleware.im.message.ETencentMessage.TIMLocationElem;
|
|
|
|
+import static com.microsvc.toolkit.middleware.im.message.ETencentMessage.TIMTextElem;
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 即时通讯群组(ImGroup)表服务实现类
|
|
* 即时通讯群组(ImGroup)表服务实现类
|
|
*
|
|
*
|
|
@@ -582,7 +590,8 @@ public class ImGroupServiceImpl extends ServiceImpl<ImGroupDao, ImGroup> impleme
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
if(historyMessages.size() > 0){
|
|
if(historyMessages.size() > 0){
|
|
- //imGroupDao.batchInsert(historyMessages.stream().sorted(Comparator.comparing(ImHistoryMessage::getDateTime)).collect(Collectors.toList()),HistoryMessage.class);
|
|
|
|
|
|
+ ImGroupDao dao = getDao();
|
|
|
|
+ dao.batchInsert(historyMessages.stream().sorted(Comparator.comparing(ImHistoryMessage::getDateTime)).collect(Collectors.toList()));
|
|
}
|
|
}
|
|
} catch (IOException e) {
|
|
} catch (IOException e) {
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|
|
@@ -597,6 +606,50 @@ public class ImGroupServiceImpl extends ServiceImpl<ImGroupDao, ImGroup> impleme
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
+ public List<ImHistoryMessage> getRongYunInfo() {
|
|
|
|
+ List<ImHistoryMessage> list = getDao().selectAll();
|
|
|
|
+ return list;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * IM导入消息
|
|
|
|
+ */
|
|
|
|
+ @Override
|
|
|
|
+ public void importInfo(List<ImHistoryMessage> info) throws Exception {
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ URL url = new URL("https://console.tim.qq.com/v4/im_open_login_svc/account_import");
|
|
|
|
+
|
|
|
|
+ info.stream().forEach(i -> {
|
|
|
|
+ //判断消息类型
|
|
|
|
+ Integer type = i.getTargetType();
|
|
|
|
+
|
|
|
|
+ if (type == 1) {
|
|
|
|
+ //单聊会话
|
|
|
|
+ //todo
|
|
|
|
+ } else if (type == 3) {
|
|
|
|
+ //群组会话
|
|
|
|
+ MessageWrapper.GroupImportMessage groupImportMessage = new MessageWrapper.GroupImportMessage();
|
|
|
|
+ //设置群组Id
|
|
|
|
+ groupImportMessage.setGroupId(i.getGroupId());
|
|
|
|
+
|
|
|
|
+ //导入消息列表
|
|
|
|
+ List<MessageWrapper.GroupImportMessageData> data = new ArrayList<>();
|
|
|
|
+
|
|
|
|
+ //groupImportMessage.setMsgList();
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ //imPluginContext.getPluginService().importGroupMessage();
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
private History getHistory(){
|
|
private History getHistory(){
|
|
RongCloud rongCloud = RongCloud.getInstance(appKey, appSecret);
|
|
RongCloud rongCloud = RongCloud.getInstance(appKey, appSecret);
|