win代码上传
parent
f20a2f1d40
commit
531f9bf5c9
|
|
@ -18,9 +18,12 @@ import com.ruoyi.common.utils.modbus.ModbusUtils;
|
||||||
import com.ruoyi.framework.web.domain.server.Sys;
|
import com.ruoyi.framework.web.domain.server.Sys;
|
||||||
import com.ruoyi.system.service.ISysRadarService;
|
import com.ruoyi.system.service.ISysRadarService;
|
||||||
import com.ruoyi.system.service.PrimaryRadarDataService;
|
import com.ruoyi.system.service.PrimaryRadarDataService;
|
||||||
|
import com.ruoyi.system.service.impl.IdentifierStatusServiceImpl;
|
||||||
import com.serotonin.modbus4j.ModbusMaster;
|
import com.serotonin.modbus4j.ModbusMaster;
|
||||||
import com.serotonin.modbus4j.exception.ErrorResponseException;
|
import com.serotonin.modbus4j.exception.ErrorResponseException;
|
||||||
import com.serotonin.modbus4j.exception.ModbusTransportException;
|
import com.serotonin.modbus4j.exception.ModbusTransportException;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
|
|
@ -29,10 +32,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 java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.concurrent.CompletableFuture;
|
import java.util.concurrent.CompletableFuture;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -44,6 +44,7 @@ import java.util.concurrent.CompletableFuture;
|
||||||
@RequestMapping("/system/radarStatus")
|
@RequestMapping("/system/radarStatus")
|
||||||
public class RadarStatusController
|
public class RadarStatusController
|
||||||
{
|
{
|
||||||
|
private static final Logger log = LoggerFactory.getLogger(RadarStatusController.class);
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private ISysRadarService service;
|
private ISysRadarService service;
|
||||||
|
|
@ -72,35 +73,50 @@ public class RadarStatusController
|
||||||
// 异步连接硬件
|
// 异步连接硬件
|
||||||
CompletableFuture<List<ModbusResponse>> listCompletableFuture = CompletableFuture.supplyAsync(() -> {
|
CompletableFuture<List<ModbusResponse>> listCompletableFuture = CompletableFuture.supplyAsync(() -> {
|
||||||
List<ModbusResponse> responses = new ArrayList<>();
|
List<ModbusResponse> responses = new ArrayList<>();
|
||||||
for (SysRadar radar : radarList) {
|
|
||||||
ModbusResponse modbusResponse = new ModbusResponse();
|
Timer timer = new Timer();
|
||||||
while (true) {
|
TimerTask task = new TimerTask() {
|
||||||
ModbusMaster master = ModbusUtils.getSlave(radar.getRadarIp(), 23);
|
@Override
|
||||||
try {
|
public void run() {try {
|
||||||
modbusResponse = ModbusUtils.holdingRegister();
|
for (SysRadar radar : radarList) {
|
||||||
System.out.println(modbusResponse);
|
|
||||||
} catch (ModbusTransportException e) {
|
ModbusResponse modbusResponse = new ModbusResponse();
|
||||||
throw new RuntimeException(e);
|
ModbusMaster master = ModbusUtils.getSlave(radar.getRadarIp(), 23);
|
||||||
} catch (ErrorResponseException e) {
|
System.out.println(radar.getRadarIp());
|
||||||
throw new RuntimeException(e);
|
try {
|
||||||
|
modbusResponse = ModbusUtils.holdingRegister();
|
||||||
|
System.out.println(modbusResponse);
|
||||||
|
} catch (ModbusTransportException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
} catch (ErrorResponseException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.err.println("从串口读取失败:" + e.getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
timer.scheduleAtFixedRate(task, 1, 40);
|
||||||
|
|
||||||
return responses;
|
return responses;
|
||||||
});
|
});
|
||||||
try {
|
// try {
|
||||||
Thread.sleep(1000); // 睡眠1秒钟
|
// Thread.sleep(1000); // 睡眠1秒钟
|
||||||
} catch (InterruptedException e) {
|
// } catch (InterruptedException e) {
|
||||||
e.printStackTrace();
|
// e.printStackTrace();
|
||||||
}
|
// }
|
||||||
listCompletableFuture.thenAccept(modbusResponses -> {
|
// listCompletableFuture.thenAccept(modbusResponses -> {
|
||||||
for (ModbusResponse modbusResponse : modbusResponses) {
|
// for (ModbusResponse modbusResponse : modbusResponses) {
|
||||||
System.out.println(modbusResponse);
|
// System.out.println(modbusResponse);
|
||||||
PrimaryRadarData primaryRadarData = new PrimaryRadarData();
|
//
|
||||||
BeanUtils.copyProperties(modbusResponse, primaryRadarData);
|
// PrimaryRadarData primaryRadarData = new PrimaryRadarData();
|
||||||
primaryRadarDataService.insertPrimaryRadarData(primaryRadarData);
|
// BeanUtils.copyProperties(modbusResponse, primaryRadarData);
|
||||||
}
|
// primaryRadarDataService.insertPrimaryRadarData(primaryRadarData);
|
||||||
});
|
// }
|
||||||
|
// });
|
||||||
PageDomain pageDomain = TableSupport.buildPageRequest();
|
PageDomain pageDomain = TableSupport.buildPageRequest();
|
||||||
if (null == pageDomain.getPageNum() || null == pageDomain.getPageSize())
|
if (null == pageDomain.getPageNum() || null == pageDomain.getPageSize())
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue