|
@@ -1,5 +1,6 @@
|
|
|
package com.fs.app.controller.im;
|
|
package com.fs.app.controller.im;
|
|
|
|
|
|
|
|
|
|
+import com.fs.app.service.param.BatchSendImTextRequest;
|
|
|
import com.fs.app.service.param.FsImMsgSendLogRequest;
|
|
import com.fs.app.service.param.FsImMsgSendLogRequest;
|
|
|
import com.fs.app.service.param.FsImMsgSendLogResponse;
|
|
import com.fs.app.service.param.FsImMsgSendLogResponse;
|
|
|
import com.fs.common.core.controller.BaseController;
|
|
import com.fs.common.core.controller.BaseController;
|
|
@@ -11,9 +12,12 @@ import com.fs.common.utils.poi.ExcelUtil;
|
|
|
import com.fs.framework.security.LoginUser;
|
|
import com.fs.framework.security.LoginUser;
|
|
|
import com.fs.framework.service.TokenService;
|
|
import com.fs.framework.service.TokenService;
|
|
|
import com.fs.im.domain.FsImMsgSendLog;
|
|
import com.fs.im.domain.FsImMsgSendLog;
|
|
|
|
|
+import com.fs.im.dto.OpenImResponseDTO;
|
|
|
import com.fs.im.service.IFsImMsgSendLogService;
|
|
import com.fs.im.service.IFsImMsgSendLogService;
|
|
|
|
|
+import com.fs.im.service.OpenIMService;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
import com.github.pagehelper.PageHelper;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
+import org.springframework.validation.annotation.Validated;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
@@ -30,6 +34,9 @@ public class FsImMsgSendLogController extends BaseController {
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private IFsImMsgSendLogService fsImMsgSendLogService;
|
|
private IFsImMsgSendLogService fsImMsgSendLogService;
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private OpenIMService openIMService;
|
|
|
|
|
+
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private TokenService tokenService;
|
|
private TokenService tokenService;
|
|
|
|
|
|
|
@@ -65,4 +72,29 @@ public class FsImMsgSendLogController extends BaseController {
|
|
|
request.setCompanyId(loginUser.getCompany().getCompanyId());
|
|
request.setCompanyId(loginUser.getCompany().getCompanyId());
|
|
|
return fsImMsgSendLogService.getFsImMsgSendStatistics(request);
|
|
return fsImMsgSendLogService.getFsImMsgSendStatistics(request);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 批量发送文本消息
|
|
|
|
|
+ */
|
|
|
|
|
+
|
|
|
|
|
+ @PostMapping("/batchSendText")
|
|
|
|
|
+ public R batchSendText(@Validated @RequestBody BatchSendImTextRequest request) {
|
|
|
|
|
+ LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
|
|
|
|
|
+ request.setSenderId("C"+loginUser.getUser().getUserId());
|
|
|
|
|
+ if(request.getUserIds().size() > 100){
|
|
|
|
|
+ return R.error("一次最多只能发送100个用户");
|
|
|
|
|
+ }
|
|
|
|
|
+ // 前面加一个U
|
|
|
|
|
+ List<String> userIds = request.getUserIds();
|
|
|
|
|
+ userIds.replaceAll(userId -> "U"+userId);
|
|
|
|
|
+ request.setUserIds(userIds);
|
|
|
|
|
+ request.setPushDesc(request.getPushDesc() == null ? request.getTextContent() : request.getPushDesc());
|
|
|
|
|
+ OpenImResponseDTO openImResponseDTO =openIMService.batchSendTextMessage( request.getSenderId(), request.getUserIds(), request.getTextContent(), request.getPushTitle(), request.getPushDesc(), request.getEx());
|
|
|
|
|
+ if(openImResponseDTO.getErrCode() == 0){
|
|
|
|
|
+ return R.ok("发送成功");
|
|
|
|
|
+ }else {
|
|
|
|
|
+ return R.error(openImResponseDTO.getErrMsg());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|