From cbe1226ae82f1818e13b7a4faa965b591d631633 Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期三, 11 十月 2023 12:24:18 +0800
Subject: [PATCH] 更新油罐页面
---
igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteEsServiceImpl.java | 65 +++++++++++++++++++++++++++++++-
1 files changed, 63 insertions(+), 2 deletions(-)
diff --git a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteEsServiceImpl.java b/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteEsServiceImpl.java
index beee3fe..2c72b32 100644
--- a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteEsServiceImpl.java
+++ b/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/command/RemoteEsServiceImpl.java
@@ -1,10 +1,24 @@
package com.ld.igds.protocol.modbus.command;
+import com.ld.igds.common.CoreSerService;
+import com.ld.igds.constant.BizType;
import com.ld.igds.io.RemoteEsService;
+import com.ld.igds.io.constant.OrderRespEnum;
+import com.ld.igds.io.constant.ProtocolEnum;
import com.ld.igds.io.request.BaseRequest;
import com.ld.igds.io.response.BaseResponse;
+import com.ld.igds.io.response.GasResponse;
+import com.ld.igds.modbus.service.HModbusService;
+import com.ld.igds.models.DeviceModbus;
+import com.ld.igds.models.DeviceSer;
+import com.ld.igds.protocol.modbus.ModbusUtil2;
+import com.ld.igds.protocol.modbus.ServerUtil;
+import com.ld.igds.protocol.modbus.data.ModbusTcp;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Component;
+import javax.annotation.Resource;
+import java.util.List;
/**
* 褰撳墠鍗忚閽堝鏍囧噯Modbus-TCP鍗忚
@@ -19,13 +33,60 @@
public static final String BEAN_ID = "modbus.remoteEsService";
+ @Resource
+ private HModbusService modbusService;
+ @Resource
+ private AnalysisService analysisService;
+ @Resource
+ private CoreSerService coreSerService;
+
@Override
public String getProtocol() {
- return null;
+ return ProtocolEnum.TCP_MODBUS.getCode();
}
@Override
public BaseResponse checkEs(BaseRequest request) {
- return null;
+
+ String passCode = request.getDepotId();
+
+ try {
+ //鑾峰彇闇�瑕佹墽琛岀殑璁惧閰嶇疆
+ List<DeviceModbus> list = modbusService.getDataByBizType(BizType.ES.getCode(), request.getSerId());
+
+ if(null == list || list.isEmpty()){
+ return new GasResponse(OrderRespEnum.ORDER_ERROR.getCode(), "鏈幏鍙栧埌Modbus鑳借�楅厤缃俊鎭�");
+ }
+ ModbusTcp modbusTcp;
+ DeviceSer deviceSer;
+ for (DeviceModbus deviceModbus : list) {
+ modbusTcp = new ModbusTcp(deviceModbus);
+ modbusTcp.setIp(request.getIp());
+ modbusTcp.setPort(request.getPort());
+
+ //鑻odbus璁惧閰嶇疆鍒嗘満锛屽垯浣跨敤鎵�閰嶇疆鍒嗘満鐨処P銆佺鍙�
+ if(StringUtils.isNotEmpty(deviceModbus.getSerId())){
+ deviceSer = coreSerService.getCacheSer(request.getCompanyId(), deviceModbus.getSerId());
+ modbusTcp.setIp(deviceSer.getIp());
+ modbusTcp.setPort(deviceSer.getPort());
+ }
+
+ modbusTcp.setBizCode(passCode);
+ modbusTcp.setSerId(request.getSerId());
+ modbusTcp.setCompanyId(request.getCompanyId());
+
+ modbusTcp.setAddrExe(ServerUtil.getAddrExe(deviceModbus.getOpen()));
+
+ log.debug("--------鍚姩鑳借�楁煡璇�---{}-{}", modbusTcp.getSerId(), modbusTcp.getBizCode());
+ Number check = ModbusUtil2.readHoldingRegister(modbusTcp.getIp(), modbusTcp.getPort(), modbusTcp.getAddrExe());
+
+ //瑙f瀽鑳借�楁暟鎹�
+ analysisService.analysisEs(request, check);
+ }
+ } catch (Exception e) {
+ return new GasResponse(OrderRespEnum.ORDER_ERROR.getCode(), "鍚庡彴鎵ц寮傚父锛�" + e.getLocalizedMessage());
+ }
+
+ return new GasResponse(OrderRespEnum.ORDER_SUCCESS);
}
}
--
Gitblit v1.9.3