|
|
@ -44,6 +44,13 @@ public class ModbusConverter { |
|
|
|
break; |
|
|
|
} |
|
|
|
default:{ |
|
|
|
// TODO 兼容智慧平车旧版本的授权操作,智慧平车修改后,即可删除此if语句
|
|
|
|
MessageConstant.Register type = MessageConstant.Register.valueOf(data[0], data[1] ); |
|
|
|
if (type == MessageConstant.Register.Auth) { |
|
|
|
message = toOldAuthMessage(register,ccModBusEntity.getValue()); |
|
|
|
return message; |
|
|
|
} |
|
|
|
|
|
|
|
// 读写操作
|
|
|
|
message = new InMessage(); |
|
|
|
message.setData(JacksonUtil.beanToJson(new ModBusMessage(ccModBusEntity.getAddr(), register,oper,ccModBusEntity.getModbusData()))); |
|
|
@ -115,6 +122,31 @@ public class ModbusConverter { |
|
|
|
return inMessage; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* OriginaData ==> 0x00 0x00 0x00 0x64 |
|
|
|
* 授权 |
|
|
|
* @param register 业务类型 |
|
|
|
* @param values 授权数据 主版本 次版本 授权ID |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
private static InMessage toOldAuthMessage(short register, byte[] values) throws JsonProcessingException { |
|
|
|
|
|
|
|
if (values == null || values.length < 1) { |
|
|
|
return null; |
|
|
|
} |
|
|
|
long userId = 0; |
|
|
|
for(int i=0;i<values.length;i++){ |
|
|
|
userId <<= 8; |
|
|
|
userId |= values[i] & 0xFF; |
|
|
|
} |
|
|
|
|
|
|
|
AuthMessage message = new AuthMessage(userId); |
|
|
|
InMessage inMessage = new InMessage(); |
|
|
|
inMessage.setData(JacksonUtil.beanToJson(message)); |
|
|
|
inMessage.setToDomain(MessageConstant.DomainType.Server); |
|
|
|
return inMessage; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public static CCModBusEntity convertCommonProtocolToCCModbus(OutMessage outMessage) throws IOException { |
|
|
|
CCModBusEntity ccModBusEntity = null; |
|
|
|