|
@@ -20,6 +20,7 @@ import com.xy.entity.DeviceInfo;
|
|
import com.xy.entity.SysCodeConfigureRedis;
|
|
import com.xy.entity.SysCodeConfigureRedis;
|
|
import com.xy.enums.ChannelType;
|
|
import com.xy.enums.ChannelType;
|
|
import com.xy.enums.MsgType;
|
|
import com.xy.enums.MsgType;
|
|
|
|
+import com.xy.enums.SysCodeConfigureEnum;
|
|
import com.xy.service.*;
|
|
import com.xy.service.*;
|
|
import com.xy.service.be.MercFeignService;
|
|
import com.xy.service.be.MercFeignService;
|
|
import com.xy.utils.R;
|
|
import com.xy.utils.R;
|
|
@@ -63,7 +64,23 @@ public class DevicePushMsgConsumer implements MqttConsumer {
|
|
Long mercId = deviceEventMsg.getMercId();
|
|
Long mercId = deviceEventMsg.getMercId();
|
|
LocalDateTime createTime = deviceEventMsg.getCreateTime();
|
|
LocalDateTime createTime = deviceEventMsg.getCreateTime();
|
|
String msg = deviceEventMsg.getMsg();
|
|
String msg = deviceEventMsg.getMsg();
|
|
- SysCodeConfigureRedis sysCodeConfigureRedis = SysCodeConfigureUtils.get(deviceEventMsg.getCode());
|
|
|
|
|
|
+ String code = deviceEventMsg.getCode();
|
|
|
|
+ SysCodeConfigureRedis sysCodeConfigureRedis = SysCodeConfigureUtils.get(code);
|
|
|
|
+ String expand = sysCodeConfigureRedis.getExpand();
|
|
|
|
+ if (StrUtil.isEmpty(expand)) {
|
|
|
|
+ return true;
|
|
|
|
+ }
|
|
|
|
+ String paterCode = sysCodeConfigureRedis.getPaterCode();
|
|
|
|
+ SysCodeConfigureEnum sysCodeConfigureEnum = SysCodeConfigureEnum.valueOf(paterCode);
|
|
|
|
+ String eventType = sysCodeConfigureEnum.getMsg();
|
|
|
|
+ String title = sysCodeConfigureRedis.getTitle();
|
|
|
|
+ //是否展示给商户
|
|
|
|
+ boolean expShow2Merc = SysCodeConfigureUtils.getExpShow2Merc(expand);
|
|
|
|
+ //是否推送给商户
|
|
|
|
+ boolean expPush2Merc = SysCodeConfigureUtils.getExpPush2Merc(expand);
|
|
|
|
+ //是否推送时间段
|
|
|
|
+ boolean expCanPush = SysCodeConfigureUtils.getExpCanPush(expand);
|
|
|
|
+
|
|
Long configId = 12L;
|
|
Long configId = 12L;
|
|
MsgConfigDto.Vo msgConfig = R.feignCheckData(msgSendApiService.getMsgConfig(new MsgConfigDto.Vo().setId(configId)));
|
|
MsgConfigDto.Vo msgConfig = R.feignCheckData(msgSendApiService.getMsgConfig(new MsgConfigDto.Vo().setId(configId)));
|
|
List<MsgConfigTestDto.BizParam> bizParams = R.feignCheckData(msgSendApiService.getBizParamByMsgConfig(new MsgConfigTestDto.MsgConfig().setConfigId(configId)));
|
|
List<MsgConfigTestDto.BizParam> bizParams = R.feignCheckData(msgSendApiService.getBizParamByMsgConfig(new MsgConfigTestDto.MsgConfig().setConfigId(configId)));
|
|
@@ -106,19 +123,23 @@ public class DevicePushMsgConsumer implements MqttConsumer {
|
|
.append(DateUtil.format(createTime, DatePattern.NORM_DATETIME_PATTERN));
|
|
.append(DateUtil.format(createTime, DatePattern.NORM_DATETIME_PATTERN));
|
|
//查询userinfo表的mpOpenId
|
|
//查询userinfo表的mpOpenId
|
|
List<UserInfoDto.Vo> userInfoList = R.feignCheckData(userInfoService.list(new UserInfoDto.SelectListDto().setUserIds(userInfoIdList)));
|
|
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.setUserId(u.getAuthorizeUserId());
|
|
|
|
- msgSys.setMsgType(MsgType.TYPE6.getCode()).setContent(sbMsg.toString())
|
|
|
|
- .setPubTime(LocalDateTime.now()).setPubState(2)
|
|
|
|
- .setSendTargets(name)
|
|
|
|
- .setPriority(msgConfig.getPriority())
|
|
|
|
- .setTitle(msgConfig.getTitle())
|
|
|
|
- .setPubUserId(-1).setTitle(MsgType.TYPE6.getDescription());
|
|
|
|
- msgSysMonitorNoticeService.save(msgSys);
|
|
|
|
- });
|
|
|
|
|
|
+ //配置了展示给商户才生成数据
|
|
|
|
+ if (expShow2Merc) {
|
|
|
|
+ userInfoList.forEach(u -> {
|
|
|
|
+ String name = u.getName();
|
|
|
|
+ //系统消息
|
|
|
|
+ MsgSysMonitorNoticeDto.Save msgSys = new MsgSysMonitorNoticeDto.Save();
|
|
|
|
+ msgSys.setUserId(u.getAuthorizeUserId());
|
|
|
|
+ msgSys.setMsgType(MsgType.TYPE6.getCode()).setContent(sbMsg.toString())
|
|
|
|
+ .setPubTime(LocalDateTime.now()).setPubState(2)
|
|
|
|
+ .setSendTargets(name)
|
|
|
|
+ .setPriority(msgConfig.getPriority())
|
|
|
|
+ .setTitle(eventType + "-" + title)
|
|
|
|
+ .setPubUserId(-1).setTitle(MsgType.TYPE6.getDescription());
|
|
|
|
+ msgSysMonitorNoticeService.save(msgSys);
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
for (MsgConfigTestDto.BizData b : bizDataList) {
|
|
for (MsgConfigTestDto.BizData b : bizDataList) {
|
|
String channelType = b.getChannelType();
|
|
String channelType = b.getChannelType();
|
|
@@ -154,7 +175,8 @@ public class DevicePushMsgConsumer implements MqttConsumer {
|
|
sendList.add(b);
|
|
sendList.add(b);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if (CollUtil.isNotEmpty(sendList)) {
|
|
|
|
|
|
+ //是否可推送条件
|
|
|
|
+ if (CollUtil.isNotEmpty(sendList) && expPush2Merc && expCanPush) {
|
|
msgSendApiService.sendByMsgConfig(new MsgConfigTestDto.SendByMsgConfig().setConfigId(configId).setBizDataList(sendList));
|
|
msgSendApiService.sendByMsgConfig(new MsgConfigTestDto.SendByMsgConfig().setConfigId(configId).setBizDataList(sendList));
|
|
}
|
|
}
|
|
|
|
|