|
@@ -10,6 +10,8 @@ import cn.hutool.core.util.StrUtil;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
import com.xy.consumer.MqttConsumer;
|
|
|
import com.xy.dto.MsgConfigTestDto;
|
|
|
+import com.xy.dto.MsgSysMonitorNoticeDto;
|
|
|
+import com.xy.dto.MsgUserMessageDto;
|
|
|
import com.xy.dto.UserInfoDto;
|
|
|
import com.xy.dto.be.MercDto;
|
|
|
import com.xy.dto.be.MercUserDeviceDto;
|
|
@@ -17,9 +19,8 @@ import com.xy.entity.DeviceEventMsg;
|
|
|
import com.xy.entity.DeviceInfo;
|
|
|
import com.xy.entity.SysCodeConfigureRedis;
|
|
|
import com.xy.enums.ChannelType;
|
|
|
-import com.xy.service.DeviceInfoServiceImpl;
|
|
|
-import com.xy.service.MsgSendApiService;
|
|
|
-import com.xy.service.UserInfoService;
|
|
|
+import com.xy.enums.MsgType;
|
|
|
+import com.xy.service.*;
|
|
|
import com.xy.service.be.MercFeignService;
|
|
|
import com.xy.utils.R;
|
|
|
import com.xy.utils.SysCodeConfigureUtils;
|
|
@@ -47,6 +48,8 @@ public class DevicePushMsgConsumer implements MqttConsumer {
|
|
|
private DeviceInfoServiceImpl deviceInfoService;
|
|
|
private MercFeignService mercFeignService;
|
|
|
private UserInfoService userInfoService;
|
|
|
+ private MsgUserMessageService msgUserMessageService;
|
|
|
+ private MsgSysMonitorNoticeService msgSysMonitorNoticeService;
|
|
|
|
|
|
@Override
|
|
|
public boolean message(String topic, String payload) {
|
|
@@ -58,8 +61,8 @@ public class DevicePushMsgConsumer implements MqttConsumer {
|
|
|
LocalDateTime createTime = deviceEventMsg.getCreateTime();
|
|
|
String msg = deviceEventMsg.getMsg();
|
|
|
SysCodeConfigureRedis sysCodeConfigureRedis = SysCodeConfigureUtils.get(deviceEventMsg.getCode());
|
|
|
-
|
|
|
Long configId = 12L;
|
|
|
+
|
|
|
List<MsgConfigTestDto.BizParam> bizParams = R.feignCheckData(msgSendApiService.getBizParamByMsgConfig(new MsgConfigTestDto.MsgConfig().setConfigId(configId)));
|
|
|
if (CollUtil.isNotEmpty(bizParams)) {
|
|
|
List<MsgConfigTestDto.BizData> bizDataList = BeanUtil.copyToList(bizParams, MsgConfigTestDto.BizData.class);
|
|
@@ -82,6 +85,23 @@ public class DevicePushMsgConsumer implements MqttConsumer {
|
|
|
}
|
|
|
//查询userinfo表的mpOpenId
|
|
|
List<UserInfoDto.Vo> userInfoList = R.feignCheckData(userInfoService.list(new UserInfoDto.SelectListDto().setUserIds(userInfoIdList)));
|
|
|
+ userInfoList.forEach(u -> {
|
|
|
+ String name = u.getName();
|
|
|
+ //系统消息
|
|
|
+ MsgSysMonitorNoticeDto.Save msgSys = new MsgSysMonitorNoticeDto.Save();
|
|
|
+ msgSys.setMsgType(MsgType.TYPE6.getCode()).setContent(msg)
|
|
|
+ .setPubTime(LocalDateTime.now()).setPubState(2)
|
|
|
+ .setSendTargets(name)
|
|
|
+ .setPriority(1)
|
|
|
+ .setPubUserId(-1).setTitle(MsgType.TYPE6.getDescription());
|
|
|
+ msgSysMonitorNoticeService.save(msgSys);
|
|
|
+ MsgUserMessageDto.Save mum = new MsgUserMessageDto.Save();
|
|
|
+ mum.setMsgId(msgSys.getMsgId());
|
|
|
+ mum.setMsgType(msgSys.getMsgType());
|
|
|
+ mum.setPriority(msgSys.getPriority());
|
|
|
+ mum.setUserId(u.getAuthorizeUserId());
|
|
|
+ msgUserMessageService.save(mum);
|
|
|
+ });
|
|
|
|
|
|
Set<String> mpOpenIds = userInfoList.stream().filter(Objects::nonNull)
|
|
|
.map(UserInfoDto.Vo::getMpOpenid)
|