|
|
@ -155,11 +155,21 @@ public class ModbusConverter { |
|
|
|
|
|
|
|
|
|
|
|
public static CCModBusEntity convertCommonProtocolToCCModbus(OutMessage outMessage) throws IOException { |
|
|
|
log.info("封装数据"); |
|
|
|
CCModBusEntity ccModBusEntity = null; |
|
|
|
JsonNode typeNode = JacksonUtil.getJsonProperty(outMessage.getData(), "type"); |
|
|
|
JsonNode typeNode = null; |
|
|
|
try { |
|
|
|
typeNode = JacksonUtil.getJsonProperty(outMessage.getData(), "type"); |
|
|
|
} catch (Exception e) { |
|
|
|
ccModBusEntity = getData(outMessage); |
|
|
|
log.info(""); |
|
|
|
return ccModBusEntity; |
|
|
|
} |
|
|
|
|
|
|
|
if (typeNode == null || StrUtil.isEmpty(typeNode.textValue())) { |
|
|
|
ccModBusEntity = fromModBusMessage(JacksonUtil.jsonToBean(outMessage.getData(), ModBusAckMessage.class)); |
|
|
|
log.info("普通的读写操作,返回结果:{}", ccModBusEntity); |
|
|
|
// ccModBusEntity = fromModBusMessage(JacksonUtil.jsonToBean(outMessage.getData(), ModBusAckMessage.class));
|
|
|
|
// log.info("普通的读写操作,返回结果:{}", ccModBusEntity);
|
|
|
|
ccModBusEntity = getData(outMessage); |
|
|
|
return ccModBusEntity; |
|
|
|
} |
|
|
|
|
|
|
@ -187,11 +197,30 @@ public class ModbusConverter { |
|
|
|
break; |
|
|
|
} |
|
|
|
default: |
|
|
|
|
|
|
|
ccModBusEntity = getData(outMessage); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
log.info("封装完成"); |
|
|
|
return ccModBusEntity; |
|
|
|
} |
|
|
|
|
|
|
|
private static CCModBusEntity getData(OutMessage outMessage) { |
|
|
|
CCModBusEntity ccModBusEntity; |
|
|
|
byte[] modBusData = null; |
|
|
|
ccModBusEntity = new CCModBusEntity(); |
|
|
|
if (outMessage.getData() != null && outMessage.getData().length() > 0) { |
|
|
|
String[] split = outMessage.getData().split(","); |
|
|
|
modBusData = new byte[split.length]; |
|
|
|
for (int i = 0; i < split.length; i++) { |
|
|
|
|
|
|
|
byte hexNum = (byte) (Byte.parseByte(split[i].replace("[","").replace("]","").trim()) & 0Xff); |
|
|
|
modBusData[i] = hexNum; |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
ccModBusEntity.setModbusData(modBusData); |
|
|
|
log.info("封装完成:{}", modBusData); |
|
|
|
return ccModBusEntity; |
|
|
|
} |
|
|
|
|
|
|
|