|
@@ -122,6 +122,7 @@ public class YkcMsgHandle {
|
|
|
//将接收到的消息类型拿到进行判断
|
|
//将接收到的消息类型拿到进行判断
|
|
|
System.arraycopy(receiveData, 0, response, 0, response.length);
|
|
System.arraycopy(receiveData, 0, response, 0, response.length);
|
|
|
String s = Integer.toHexString(response[5] & 0xFF);
|
|
String s = Integer.toHexString(response[5] & 0xFF);
|
|
|
|
|
+ byte[] fromMsgSeq = {response[2],response[3]};
|
|
|
int framType = response[5] & 0xFF;//Integer.parseInt(s);
|
|
int framType = response[5] & 0xFF;//Integer.parseInt(s);
|
|
|
int encry = response[4] & 0xFF;
|
|
int encry = response[4] & 0xFF;
|
|
|
|
|
|
|
@@ -206,23 +207,23 @@ public class YkcMsgHandle {
|
|
|
|
|
|
|
|
} else if (framType == YkcSendDevice.START_CHARNGING_REQUEST.getFrameType() || framType == YkcSendDevice.START_CHARNGING_REQUEST_16.getFrameType()) {
|
|
} else if (framType == YkcSendDevice.START_CHARNGING_REQUEST.getFrameType() || framType == YkcSendDevice.START_CHARNGING_REQUEST_16.getFrameType()) {
|
|
|
logger.info("↓↓↓↓↓{}运营平台远程控制启机" + framType,deviceConnectionMsg.getDeviceId());
|
|
logger.info("↓↓↓↓↓{}运营平台远程控制启机" + framType,deviceConnectionMsg.getDeviceId());
|
|
|
- startChargingRequest(deviceConnectionMsg, respone_msg);
|
|
|
|
|
|
|
+ startChargingRequest(deviceConnectionMsg, respone_msg,fromMsgSeq);
|
|
|
|
|
|
|
|
} else if (framType == YkcSendDevice.STOP_CHARNGING_REQUEST.getFrameType()) {
|
|
} else if (framType == YkcSendDevice.STOP_CHARNGING_REQUEST.getFrameType()) {
|
|
|
logger.info("↓↓↓↓↓{}运营平台远程停机",deviceConnectionMsg.getDeviceId());
|
|
logger.info("↓↓↓↓↓{}运营平台远程停机",deviceConnectionMsg.getDeviceId());
|
|
|
- stopChargingRequest(deviceConnectionMsg, respone_msg);
|
|
|
|
|
|
|
+ stopChargingRequest(deviceConnectionMsg, respone_msg,fromMsgSeq);
|
|
|
|
|
|
|
|
} else if (framType == YkcSendDevice.UPDATE_BALANCE.getFrameType()) {
|
|
} else if (framType == YkcSendDevice.UPDATE_BALANCE.getFrameType()) {
|
|
|
logger.info("↓↓↓↓↓{}远程更新余额",deviceConnectionMsg.getDeviceId());
|
|
logger.info("↓↓↓↓↓{}远程更新余额",deviceConnectionMsg.getDeviceId());
|
|
|
try {
|
|
try {
|
|
|
- remoteBalanceUpdate(deviceConnectionMsg, respone_msg);
|
|
|
|
|
|
|
+ remoteBalanceUpdate(deviceConnectionMsg, respone_msg,fromMsgSeq);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
} else if (framType == YkcSendDevice.CHECKTIME.getFrameType()) {
|
|
} else if (framType == YkcSendDevice.CHECKTIME.getFrameType()) {
|
|
|
logger.info("↓↓↓↓↓{}对时设置" + framType,deviceConnectionMsg.getDeviceId());
|
|
logger.info("↓↓↓↓↓{}对时设置" + framType,deviceConnectionMsg.getDeviceId());
|
|
|
- checkTime.checkTimeSend(deviceConnectionMsg);
|
|
|
|
|
|
|
+ checkTime.checkTimeSend(deviceConnectionMsg,fromMsgSeq);
|
|
|
|
|
|
|
|
} else if (framType == YkcSendDevice.BILLING_MODEL_SETTING_SG.getFrameType()) {
|
|
} else if (framType == YkcSendDevice.BILLING_MODEL_SETTING_SG.getFrameType()) {
|
|
|
logger.info("↓↓↓↓↓{}深谷计费模型设置",deviceConnectionMsg.getDeviceId());
|
|
logger.info("↓↓↓↓↓{}深谷计费模型设置",deviceConnectionMsg.getDeviceId());
|
|
@@ -287,12 +288,12 @@ public class YkcMsgHandle {
|
|
|
* @param deviceConnectionMsg
|
|
* @param deviceConnectionMsg
|
|
|
* @param respone_msg
|
|
* @param respone_msg
|
|
|
*/
|
|
*/
|
|
|
- private void startChargingRequest(DeviceConnectionMsg deviceConnectionMsg, byte[] respone_msg) {
|
|
|
|
|
|
|
+ private void startChargingRequest(DeviceConnectionMsg deviceConnectionMsg, byte[] respone_msg,byte[] fromMsgSeq) {
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
//1.解析出启动充电流水号
|
|
//1.解析出启动充电流水号
|
|
|
//查询设备sn和imie
|
|
//查询设备sn和imie
|
|
|
-
|
|
|
|
|
|
|
+ deviceConnectionMsg.setStartChargeReq(fromMsgSeq);
|
|
|
//切出订单号,保存在连接的该设备中
|
|
//切出订单号,保存在连接的该设备中
|
|
|
byte[] transOrder = Arrays.copyOfRange(respone_msg, 0, 16);
|
|
byte[] transOrder = Arrays.copyOfRange(respone_msg, 0, 16);
|
|
|
//测试
|
|
//测试
|
|
@@ -418,7 +419,10 @@ public class YkcMsgHandle {
|
|
|
* @param deviceConnectionMsg
|
|
* @param deviceConnectionMsg
|
|
|
* @param respone_msg
|
|
* @param respone_msg
|
|
|
*/
|
|
*/
|
|
|
- private void stopChargingRequest(DeviceConnectionMsg deviceConnectionMsg, byte[] respone_msg) {
|
|
|
|
|
|
|
+ private void stopChargingRequest(DeviceConnectionMsg deviceConnectionMsg, byte[] respone_msg,byte[] fromMsgSeq) {
|
|
|
|
|
+
|
|
|
|
|
+ deviceConnectionMsg.setStopChargeReq(fromMsgSeq);
|
|
|
|
|
+
|
|
|
byte[] guns = Arrays.copyOfRange(respone_msg, 7, 8);
|
|
byte[] guns = Arrays.copyOfRange(respone_msg, 7, 8);
|
|
|
//查询设备sn和imie
|
|
//查询设备sn和imie
|
|
|
QueryWrapper<DeviceStatus> deviceStatusQueryWrapper = new QueryWrapper<>();
|
|
QueryWrapper<DeviceStatus> deviceStatusQueryWrapper = new QueryWrapper<>();
|
|
@@ -470,7 +474,7 @@ public class YkcMsgHandle {
|
|
|
* @param deviceConnectionMsg
|
|
* @param deviceConnectionMsg
|
|
|
* @param respone_msg
|
|
* @param respone_msg
|
|
|
*/
|
|
*/
|
|
|
- private void remoteBalanceUpdate(DeviceConnectionMsg deviceConnectionMsg, byte[] respone_msg) throws Exception {
|
|
|
|
|
|
|
+ private void remoteBalanceUpdate(DeviceConnectionMsg deviceConnectionMsg, byte[] respone_msg,byte[] fromMsgSeq) throws Exception {
|
|
|
byte[] pileCode = Arrays.copyOfRange(respone_msg, 0, 7);
|
|
byte[] pileCode = Arrays.copyOfRange(respone_msg, 0, 7);
|
|
|
byte[] guns = Arrays.copyOfRange(respone_msg, 7, 8);
|
|
byte[] guns = Arrays.copyOfRange(respone_msg, 7, 8);
|
|
|
byte[] card = Arrays.copyOfRange(respone_msg, 8, 16);
|
|
byte[] card = Arrays.copyOfRange(respone_msg, 8, 16);
|
|
@@ -507,7 +511,7 @@ public class YkcMsgHandle {
|
|
|
|
|
|
|
|
|
|
|
|
|
//这里测试默认更新成功
|
|
//这里测试默认更新成功
|
|
|
- remoteBalanceUpdatePushFrame.updateBalance(deviceConnectionMsg, card, (byte) 0x00);
|
|
|
|
|
|
|
+ remoteBalanceUpdatePushFrame.updateBalance(deviceConnectionMsg, card, (byte) 0x00,fromMsgSeq);
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|