win代码上传
parent
d54c1285eb
commit
ce243f7e0a
|
|
@ -1,6 +1,7 @@
|
||||||
package com.ruoyi.web.controller.system;
|
package com.ruoyi.web.controller.system;
|
||||||
|
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.ruoyi.common.core.domain.entity.DataResponse;
|
import com.ruoyi.common.core.domain.entity.DataResponse;
|
||||||
import com.ruoyi.common.core.domain.entity.PrimaryRadarData;
|
import com.ruoyi.common.core.domain.entity.PrimaryRadarData;
|
||||||
import com.ruoyi.common.core.domain.entity.SysIdentifier;
|
import com.ruoyi.common.core.domain.entity.SysIdentifier;
|
||||||
|
|
@ -29,6 +30,7 @@ import org.springframework.web.bind.annotation.PostMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.ResponseBody;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
|
|
||||||
|
import javax.xml.crypto.Data;
|
||||||
import java.net.Inet4Address;
|
import java.net.Inet4Address;
|
||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.sql.DriverManager;
|
import java.sql.DriverManager;
|
||||||
|
|
@ -81,8 +83,9 @@ public class RadarStatusController {
|
||||||
TimerTask task = new TimerTask() {
|
TimerTask task = new TimerTask() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
try {
|
|
||||||
for (SysRadar radar : radarList) {
|
for (SysRadar radar : radarList) {
|
||||||
|
try {
|
||||||
// ModbusResponse modbusResponse = new ModbusResponse();
|
// ModbusResponse modbusResponse = new ModbusResponse();
|
||||||
ModbusMaster master = ModbusUtils.getSlave(radar.getRadarIp(), 23);
|
ModbusMaster master = ModbusUtils.getSlave(radar.getRadarIp(), 23);
|
||||||
DataResponse dataResponse = new DataResponse();
|
DataResponse dataResponse = new DataResponse();
|
||||||
|
|
@ -90,7 +93,7 @@ public class RadarStatusController {
|
||||||
System.out.println(radar.getRadarIp());
|
System.out.println(radar.getRadarIp());
|
||||||
ModbusResponse modbusResponse = ModbusUtils.holdingRegister();
|
ModbusResponse modbusResponse = ModbusUtils.holdingRegister();
|
||||||
if (modbusResponse == null){
|
if (modbusResponse == null){
|
||||||
dataResponse.setStatus("0");
|
dataResponse.setStatus(0);
|
||||||
}
|
}
|
||||||
System.out.println(modbusResponse);
|
System.out.println(modbusResponse);
|
||||||
String tag = modbusResponse.getTagId();
|
String tag = modbusResponse.getTagId();
|
||||||
|
|
@ -111,21 +114,25 @@ public class RadarStatusController {
|
||||||
String ip = Inet4Address.getLocalHost().getHostAddress();
|
String ip = Inet4Address.getLocalHost().getHostAddress();
|
||||||
if (modbusResponse.getValue4() != null && !"0".equals(modbusResponse.getValue4())) {
|
if (modbusResponse.getValue4() != null && !"0".equals(modbusResponse.getValue4())) {
|
||||||
primaryRadarDataService.insertPrimaryRadarData(primaryRadarData);
|
primaryRadarDataService.insertPrimaryRadarData(primaryRadarData);
|
||||||
dataResponse.setStatus("1");
|
dataResponse.setStatus(1);
|
||||||
dataResponse.setRadarLocation(primaryRadarData.getRadarLocation());
|
dataResponse.setRadarLocation(primaryRadarData.getRadarLocation());
|
||||||
} else {
|
} else {
|
||||||
dataResponse.setStatus("0");
|
dataResponse.setStatus(0);
|
||||||
}
|
|
||||||
RadarStatusWebSocket.sendToAll(dataResponse);
|
|
||||||
}
|
}
|
||||||
|
RadarStatusWebSocket.sendToAll(JSON.toJSONString(dataResponse));
|
||||||
}catch (Exception e) {
|
}catch (Exception e) {
|
||||||
if (e.equals("java.net.SocketTimeoutException: connect timed out")) {
|
if (e.equals("java.net.SocketTimeoutException: connect timed out")) {
|
||||||
System.err.println("从串口读取失败:" + "连接超时");
|
System.err.println("从串口读取失败:" + "连接超时");
|
||||||
}
|
}
|
||||||
// RadarStatusWebSocket.sendToAll(dataResponse.toString());
|
DataResponse dataResponse = new DataResponse();
|
||||||
|
dataResponse.setRadarIp(radar.getRadarIp());
|
||||||
|
dataResponse.setRadarLocation(radar.getRadarLocation());
|
||||||
|
dataResponse.setStatus(0);
|
||||||
|
RadarStatusWebSocket.sendToAll(JSON.toJSONString(dataResponse));
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
timer.scheduleAtFixedRate(task, 1, 1000);
|
timer.scheduleAtFixedRate(task, 1, 1000);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ public class RadarStatusWebSocket {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void sendToAll(DataResponse dataResponse) {
|
public static void sendToAll(Object dataResponse) {
|
||||||
for (Session session : sessions) {
|
for (Session session : sessions) {
|
||||||
try {
|
try {
|
||||||
session.getBasicRemote().sendObject(dataResponse);
|
session.getBasicRemote().sendObject(dataResponse);
|
||||||
|
|
|
||||||
|
|
@ -40,6 +40,8 @@
|
||||||
var prefix = ctx + "system/radarStatus";
|
var prefix = ctx + "system/radarStatus";
|
||||||
var datas = [[${@dict.getType('sys_normal_disable')}]];
|
var datas = [[${@dict.getType('sys_normal_disable')}]];
|
||||||
|
|
||||||
|
var tableData = [];
|
||||||
|
|
||||||
$(function() {
|
$(function() {
|
||||||
var options = {
|
var options = {
|
||||||
url: prefix + "/list",
|
url: prefix + "/list",
|
||||||
|
|
@ -85,18 +87,35 @@
|
||||||
console.log("WebSocket连接已打开");
|
console.log("WebSocket连接已打开");
|
||||||
};
|
};
|
||||||
|
|
||||||
socket.onmessage = function(event) {
|
socket.onmessage = (event)=> {
|
||||||
var data = event.data;
|
|
||||||
// console.log("接收到数据:" + data);
|
var data = JSON.parse(event.data);
|
||||||
// 在这里更新前端界面,显示接收到的数据
|
console.log("接收到数据:" + data);
|
||||||
let parse = JSON.parse(data);
|
$.each($.tableData, function (i, row) {
|
||||||
console.log("接收到数据:" + parse);
|
if(row.radarIp === data.radarIp){
|
||||||
|
console.log("rowbefore"+JSON.stringify(row))
|
||||||
|
|
||||||
|
row.status = data.status;
|
||||||
|
console.log("rowafter"+JSON.stringify(row))
|
||||||
|
}
|
||||||
|
})
|
||||||
|
var template = $('#profileTemplate').html()
|
||||||
|
var view = ''
|
||||||
|
$.each(data, function (i, row) {
|
||||||
|
view += template
|
||||||
|
.replace('%IMAGE%', getImageUrl(row.status))
|
||||||
|
.replace('%radarIp%', row.radarIp)
|
||||||
|
.replace('%radarLocation%', row.radarLocation)
|
||||||
|
})
|
||||||
|
|
||||||
|
return `<div class="row mx-0">${view}</div>`
|
||||||
};
|
};
|
||||||
|
|
||||||
socket.onclose = function(event) {
|
socket.onclose = function(event) {
|
||||||
console.log("WebSocket连接已关闭");
|
console.log("WebSocket连接已关闭");
|
||||||
};
|
};
|
||||||
function customViewFormatter (data) {
|
function customViewFormatter (data) {
|
||||||
|
$.tableData = data
|
||||||
var template = $('#profileTemplate').html()
|
var template = $('#profileTemplate').html()
|
||||||
var view = ''
|
var view = ''
|
||||||
$.each(data, function (i, row) {
|
$.each(data, function (i, row) {
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ public class DataResponse implements Serializable {
|
||||||
/**
|
/**
|
||||||
* 雷达连接状态
|
* 雷达连接状态
|
||||||
*/
|
*/
|
||||||
private String status = "0" ;
|
private Integer status = 0 ;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue