Browse Source

feat:增加设备报警信息反馈给前端

master
白凤吉 6 months ago
parent
commit
2d68b0f597
  1. 4
      src/main/java/com/qyft/gd/device/handler/DeviceMessageHandler.java

4
src/main/java/com/qyft/gd/device/handler/DeviceMessageHandler.java

@ -7,6 +7,7 @@ import com.qyft.gd.device.model.bo.DeviceAlarm;
import com.qyft.gd.device.model.bo.DeviceFeedback;
import com.qyft.gd.device.model.bo.DeviceStatus;
import com.qyft.gd.device.service.DeviceStateService;
import com.qyft.gd.service.WebSocketService;
import io.netty.buffer.ByteBuf;
import io.netty.channel.ChannelHandler;
import io.netty.channel.ChannelHandlerContext;
@ -27,6 +28,7 @@ import java.util.concurrent.ConcurrentHashMap;
public class DeviceMessageHandler extends ChannelInboundHandlerAdapter {
private final DeviceStateService deviceStateService;
private final WebSocketService webSocketService;
public final Map<String, CompletableFuture<DeviceFeedback>> responseMap = new ConcurrentHashMap<>();
@ -42,7 +44,7 @@ public class DeviceMessageHandler extends ChannelInboundHandlerAdapter {
deviceStateService.updateDeviceStatus(deviceStatus); // 更新设备状态
} else if (TcpMessageType.ALARM.equals(jsonRpcResponse.getType())) {//设备报警
DeviceAlarm deviceAlarm = JSONUtil.toBean(jsonRpcResponse.getData(), DeviceAlarm.class);
webSocketService.pushMsg("alarm", deviceAlarm);
} else if (TcpMessageType.FEEDBACK.equals(jsonRpcResponse.getType())) {//设备指令反馈
DeviceFeedback deviceFeedback = JSONUtil.toBean(jsonRpcResponse.getData(), DeviceFeedback.class);
this.handleTcpResponse(deviceFeedback);

Loading…
Cancel
Save