| 对比新文件 |
| | |
| | | package com.sandu.ximon.admin.manager.iot.frame.inner.request; |
| | | |
| | | import com.sandu.ximon.admin.manager.iot.frame.inner.IRequestInnerFrame; |
| | | import com.sandu.ximon.admin.manager.iot.rrpc.enums.LightPoleHeelingEnum; |
| | | import com.sandu.ximon.admin.manager.iot.rrpc.enums.MQTTConnectTypeEnum; |
| | | import com.sandu.ximon.admin.manager.iot.rrpc.util.CRC32Utils; |
| | | |
| | | /** |
| | | * @author ZZQ |
| | | * @date 2022/3/22 15:29 |
| | | */ |
| | | public class LightPoleHeelingSetHeartbeatPacketTimeReqInnerFrame implements IRequestInnerFrame { |
| | | private final String payload; |
| | | |
| | | public LightPoleHeelingSetHeartbeatPacketTimeReqInnerFrame(int time) { |
| | | String data = Integer.toHexString(time); |
| | | switch (data.length()) { |
| | | case 1: |
| | | data = "000" + data; |
| | | break; |
| | | case 2: |
| | | data = "00" + data; |
| | | break; |
| | | case 3: |
| | | data = "0" + data; |
| | | break; |
| | | default: |
| | | |
| | | } |
| | | |
| | | payload = "FFFF" + data; |
| | | } |
| | | |
| | | @Override |
| | | public String getEncodeFrame() { |
| | | String functionCode = LightPoleHeelingEnum.SetHeartbeatPacketTime.getCode(); |
| | | String payloadLength = "0004"; |
| | | String frame = functionCode + payloadLength + payload; |
| | | return MQTTConnectTypeEnum.SYNCHRONIZATION.getCode() + frame.toUpperCase() + CRC32Utils.getCRC32(frame.toUpperCase()); |
| | | } |
| | | } |