win代码上传

detached
zouyiqing 2024-01-17 14:45:03 +08:00
parent 363f046374
commit d9010a27c1
5 changed files with 82 additions and 36 deletions

View File

@ -1,6 +1,7 @@
package com.ruoyi.web.controller.system;
import com.ruoyi.common.core.domain.entity.DataResponse;
import com.ruoyi.common.core.domain.entity.PrimaryRadarData;
import com.ruoyi.common.core.domain.entity.SysIdentifier;
import com.ruoyi.common.core.domain.entity.SysRadar;
@ -34,13 +35,12 @@ import java.util.concurrent.CompletableFuture;
/**
*
*
*
* @author ruoyi
*/
@Controller
@RequestMapping("/system/radarStatus")
public class RadarStatusController
{
public class RadarStatusController {
private static final Logger log = LoggerFactory.getLogger(RadarStatusController.class);
@Autowired
@ -59,15 +59,13 @@ public class RadarStatusController
*
*/
@GetMapping()
public String button()
{
public String button() {
return prefix + "/radarStatus";
}
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(SysRadar sysRadar)
{
public TableDataInfo list(SysRadar sysRadar) {
TableDataInfo rspData = new TableDataInfo();
List<SysRadar> radarList = service.selectRadarList(sysRadar);
// 异步连接硬件
@ -80,39 +78,49 @@ public class RadarStatusController
@Override
public void run() {
try {
for (SysRadar radar : radarList) {
for (SysRadar radar : radarList) {
// ModbusResponse modbusResponse = new ModbusResponse();
ModbusMaster master = ModbusUtils.getSlave(radar.getRadarIp(), 23);
System.out.println(radar.getRadarIp());
ModbusResponse modbusResponse = ModbusUtils.holdingRegister();
connectionStatus.connected= true;
ModbusMaster master = ModbusUtils.getSlave(radar.getRadarIp(), 23);
DataResponse dataResponse = new DataResponse();
dataResponse.setRadarIp(radar.getRadarIp());
System.out.println(radar.getRadarIp());
ModbusResponse modbusResponse = ModbusUtils.holdingRegister();
if (modbusResponse == null){
dataResponse.setStatus("0");
}
System.out.println(modbusResponse);
String tag = modbusResponse.getTagId();
PrimaryRadarData primaryRadarData = new PrimaryRadarData();
SysIdentifier sysIdentifier = new SysIdentifier();
BeanUtils.copyProperties(modbusResponse,primaryRadarData);
if (!"0".equals(modbusResponse.getTagId())) {
PrimaryRadarData primaryRadarData = new PrimaryRadarData();
SysIdentifier sysIdentifier = new SysIdentifier();
BeanUtils.copyProperties(modbusResponse, primaryRadarData);
if (!"0".equals(modbusResponse.getTagId())) {
sysIdentifier = identifierService.selectIdentifierByTag(tag);
primaryRadarData.setLadleNumber(sysIdentifier.getLadleNumber());
primaryRadarData.setRadarLocation(radar.getRadarLocation());
primaryRadarData.setRadarIp(radar.getRadarIp());
}else {
primaryRadarData.setRadarLocation(radar.getRadarLocation());
primaryRadarData.setRadarIp(radar.getRadarIp());
} else {
primaryRadarData.setLadleNumber(null);
primaryRadarData.setRadarLocation(null);
primaryRadarData.setRadarIp(radar.getRadarIp());
primaryRadarData.setRadarLocation(null);
primaryRadarData.setRadarIp(radar.getRadarIp());
}
dataResponse.setRadarLocation(primaryRadarData.getRadarLocation());
String ip = Inet4Address.getLocalHost().getHostAddress();
if (modbusResponse.getValue4() != null && !"0".equals(modbusResponse.getValue4())) {
primaryRadarDataService.insertPrimaryRadarData(primaryRadarData);
dataResponse.setStatus("1");
dataResponse.setRadarLocation(primaryRadarData.getRadarLocation());
} else {
dataResponse.setStatus("0");
}
RadarStatusWebSocket.sendToAll(dataResponse.toString());
}
String ip = Inet4Address.getLocalHost().getHostAddress();
if (modbusResponse.getValue4()!=null && !"0".equals(modbusResponse.getValue4())) {
primaryRadarDataService.insertPrimaryRadarData(primaryRadarData);
}
RadarStatusWebSocket.sendToAll(modbusResponse.toString());
}
} catch (Exception e) {
} catch (Exception e) {
if (e.equals("java.net.SocketTimeoutException: connect timed out")) {
System.err.println("从串口读取失败:" + "连接超时");
}
// RadarStatusWebSocket.sendToAll(dataResponse.toString());
e.printStackTrace();
}
}
}
};
timer.scheduleAtFixedRate(task, 1, 1000);
@ -120,16 +128,14 @@ public class RadarStatusController
return responses;
});
PageDomain pageDomain = TableSupport.buildPageRequest();
if (null == pageDomain.getPageNum() || null == pageDomain.getPageSize())
{
if (null == pageDomain.getPageNum() || null == pageDomain.getPageSize()) {
rspData.setRows(radarList);
rspData.setTotal(radarList.size());
return rspData;
}
Integer pageNum = (pageDomain.getPageNum() - 1) * 10;
Integer pageSize = pageDomain.getPageNum() * 10;
if (pageSize > radarList.size())
{
if (pageSize > radarList.size()) {
pageSize = radarList.size();
}
rspData.setRows(radarList.subList(pageNum, pageSize));

View File

@ -0,0 +1,40 @@
package com.ruoyi.web.core.config;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.json.JsonMapper;
import com.ruoyi.common.core.page.TableDataInfo;
import javax.websocket.EncodeException;
import javax.websocket.Encoder;
import javax.websocket.EndpointConfig;
/**
* @author YUSHENGDADA
* @title: BaseModelEncoder
* @projectName v2_lab
* @description:
* @date 2022/8/22 0022 14:15
*/
public class BaseModelEncoder implements Encoder.Text<TableDataInfo> {
@Override
public String encode(TableDataInfo baseResponseMessage) throws EncodeException {
try {
JsonMapper jsonMapper = new JsonMapper();
return jsonMapper.writeValueAsString(baseResponseMessage);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
return null;
}
@Override
public void init(EndpointConfig endpointConfig) {
}
@Override
public void destroy() {
}
}

View File

@ -12,7 +12,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.Set;
@ServerEndpoint(value="/websocket",configurator = WebSocketConfig.class)
@ServerEndpoint(value="/websocket",configurator = WebSocketConfig.class,encoders = {BaseModelEncoder.class})
@Component
public class RadarStatusWebSocket {

View File

@ -22,7 +22,7 @@
<ul class="list-group list-group-striped">
<li class="list-group-item"><i class="fa fa-user"></i>
<b class="font-noraml">工厂名称:</b>
<p class="pull-right">[[${user.loginName}]]</p>
<p class="pull-right">[[${user.userName}]]</p>
</li>
</ul>
</div>

View File

@ -17,6 +17,6 @@ public class DataResponse {
/**
*
*/
private String status;
private String status = "0" ;
}