Commit 169414f6 LN

设备互联界面文字显示修改。消息查询增加DATA类型。

1 个父辈 10c154f6
......@@ -40,32 +40,31 @@ public class BaseEquipHandler implements IEquipmentHandler {
// EquipStatusUtil.updateClientMsg(statusBean.getCid(), "", "", "", null);
}
//记录提示信息
if(statusBean.getMsgList()!=null){
if (statusBean.getMsgList() != null) {
for (EquipMsg msg :
statusBean.getMsgList()) {
//判断是否有内容
//判断消息是否有内容
if(ObjectUtil.isNotEmpty(msg.getMsg())||ObjectUtil.isNotEmpty(msg.getMsgCode())){
boolean newMsg=true;
if (ObjectUtil.isNotEmpty(msg.getMsg()) || ObjectUtil.isNotEmpty(msg.getMsgCode())) {
boolean newMsg = true;
//和上个消息是否一样
if(preBean!=null){
EquipMsg preMsg=preBean.getMsgByType(msg.getType());
if(preMsg!=null){
if(msg.getMsgCode().equals(preMsg.getMsgCode())&&msg.getMsg().equals(preMsg.getMsg())){
newMsg=false;
if (preBean != null) {
EquipMsg preMsg = preBean.getMsgByType(msg.getType());
if (preMsg != null) {
if (msg.getMsgCode().equals(preMsg.getMsgCode()) && msg.getMsg().equals(preMsg.getMsg())) {
newMsg = false;
}
}
}
if(newMsg){
DeviceMessageUtil.addDeviceMessage(statusBean.getCid(),msg.getType(),msg.getModule(),msg.getMsgCode(),msg.getMsg(),msg.getMsgParams());
if (newMsg) {
DeviceMessageUtil.addDeviceMessage(statusBean.getCid(), msg.getType(), msg.getModule(), msg.getMsgCode(), msg.getMsg(), msg.getMsgParams());
}
}
}
}
EquipStatusUtil.updateStatusBean(statusBean);
// }
} catch (Exception e) {
log.error("客户端故障消息处理出错", e);
}
......
......@@ -57,6 +57,9 @@ public class EquipViewController {
if(showMsg==null){
showMsg=bean.getMsgByType(MessageType.WARNING.name());
}
if(showMsg==null){
showMsg=bean.getMsgByType(MessageType.INFO.name());
}
if(showMsg!=null){
dto.setMsg(showMsg.getShowMsg(locale));
}
......
......@@ -2,14 +2,20 @@ package com.neotel.smfcore.core.message.util;
import cn.hutool.core.util.ObjectUtil;
import com.neotel.smfcore.core.device.util.DataCache;
import com.neotel.smfcore.core.device.util.EquipmentCache;
import com.neotel.smfcore.core.equipment.service.po.Equipment;
import com.neotel.smfcore.core.language.util.MessageUtils;
import com.neotel.smfcore.core.message.enums.MessageType;
import com.neotel.smfcore.core.message.service.manager.IMessageManager;
import com.neotel.smfcore.core.message.service.po.Message;
import com.neotel.smfcore.core.message.util.bean.DeviceInfo;
import com.neotel.smfcore.core.storage.service.po.Storage;
import com.neotel.smfcore.core.storage.service.po.StoragePos;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.aggregation.ComparisonOperators;
import org.springframework.stereotype.Component;
@Slf4j
......@@ -17,14 +23,18 @@ import org.springframework.stereotype.Component;
public class DeviceMessageUtil {
private static DataCache dataCache;
private static EquipmentCache equipmentCache;
private static IMessageManager messageManager;
@Autowired
public void seDataCache(DataCache dataCache) {
public void setDataCache(DataCache dataCache) {
this.dataCache = dataCache;
}
@Autowired
public void setEquipmentCache(EquipmentCache equipmentCache) {
this.equipmentCache = equipmentCache;
}
@Autowired
public void setMessageManager(IMessageManager messageManager) {
this.messageManager = messageManager;
......@@ -51,25 +61,37 @@ public class DeviceMessageUtil {
lastLineMsg=message;
}
public static void addDeviceMessage(String cid,String msgType, String moudle, String msgCode, String msg, String[] msgParam) {
private static DeviceInfo getDeviceName(String cid) {
Storage storage = dataCache.getStorage(cid);
if (storage != null) {
return new DeviceInfo(storage.getId(),storage.getName(),storage.getCid());
}
Equipment equipment = equipmentCache.getEquipment(cid);
if(equipment!=null){
return new DeviceInfo(equipment.getId(),equipment.getName(),equipment.getCid());
}
return null;
}
public static void addDeviceMessage(String cid,String msgType, String moudle, String msgCode, String msg, String[] msgParam) {
DeviceInfo deviceInfo=getDeviceName(cid);
if (deviceInfo!=null) {
String code=msgCode;
if(ObjectUtil.isNotEmpty(msgCode)){
if(!msgCode.startsWith(MessageUtils.smfcore)){
code=MessageUtils.smfcore+"."+msgCode;
}
}
Message message=Message.newMsg(MessageType.ERROR ,storage.getName(), storage.getId(), moudle, code,msg,msgParam);
Message message=Message.newMsg(msgType ,deviceInfo.getName(), deviceInfo.getId(), moudle, code,msg,msgParam);
messageManager.save(message);
}
}
public static void addOnlineMessage(String cid, String moudle,String ip) {
Storage storage = dataCache.getStorage(cid);
if (storage != null) {
Message message=Message.newMsg(MessageType.INFO,storage.getName(), storage.getId(), moudle ,"smfcore.messages.online","上线",null);
DeviceInfo deviceInfo=getDeviceName(cid);
if (deviceInfo != null) {
Message message=Message.newMsg(MessageType.INFO,deviceInfo.getName(), deviceInfo.getId(), moudle ,"smfcore.messages.online","上线",null);
message.addData("ip",ip);
messageManager.save(message);
}
......@@ -77,9 +99,9 @@ public class DeviceMessageUtil {
public static void addOfflineMessage(String cid, String moudle) {
Storage storage = dataCache.getStorage(cid);
if (storage != null) {
Message message=Message.newMsg(MessageType.INFO,storage.getName(), storage.getId(), moudle, "smfcore.messages.offline","离线",null);
DeviceInfo deviceInfo=getDeviceName(cid);
if (deviceInfo != null) {
Message message=Message.newMsg(MessageType.INFO,deviceInfo.getName(), deviceInfo.getId(), moudle, "smfcore.messages.offline","离线",null);
messageManager.save(message);
}
......@@ -104,4 +126,6 @@ public class DeviceMessageUtil {
}
}
}
package com.neotel.smfcore.core.message.util.bean;
import lombok.AllArgsConstructor;
import lombok.Data;
@AllArgsConstructor
@Data
public class DeviceInfo {
private String id;
private String name;
private String cid;
}
\ No newline at end of file
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!