update 0x31启动充电逻辑

This commit is contained in:
Lemon
2023-06-13 09:32:31 +08:00
parent cd8ba83bcd
commit f246d6c4c5
2 changed files with 40 additions and 9 deletions

View File

@@ -318,13 +318,20 @@ public class SpringBootTestController {
accountBalanceByteArr = YKCUtils.getPriceByte(String.valueOf(map.get("accountBalance")), 2); accountBalanceByteArr = YKCUtils.getPriceByte(String.valueOf(map.get("accountBalance")), 2);
// 鉴权成功标识 0x00 失败 0x01 成功 // 鉴权成功标识 0x00 失败 0x01 成功
authenticationFlagByteArr = Constants.oneByteArray; authenticationFlagByteArr = Constants.oneByteArray;
}else {
throw new BusinessException("", "生成vin订单失败");
} }
} }
}catch (BusinessException e){ }catch (BusinessException e){
System.out.println(e); e.printStackTrace();
System.out.println("1");
// log.error("VIN码启动充电鉴权 error:{}, {}", e.getCode(), e.getMessage()); // log.error("VIN码启动充电鉴权 error:{}, {}", e.getCode(), e.getMessage());
}catch (Exception e) { }catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
System.out.println("2");
transactionCode = "00000000000000000000000000000000";
accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8);
authenticationFlagByteArr = Constants.zeroByteArray;
// log.error("VIN码启动充电鉴权 error", e); // log.error("VIN码启动充电鉴权 error", e);
} }
byte[] serialNumByteArr = BytesUtil.str2Bcd(transactionCode); byte[] serialNumByteArr = BytesUtil.str2Bcd(transactionCode);
@@ -332,14 +339,17 @@ public class SpringBootTestController {
byte[] defeatReasonByteArr = Constants.zeroByteArray; byte[] defeatReasonByteArr = Constants.zeroByteArray;
// 不足位数的值补零 // 不足位数的值补零
cardNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(cardNumByteArr, 16); // cardNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(cardNumByteArr, 16);
serialNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(serialNumByteArr, 32); // serialNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(serialNumByteArr, 32);
pileSnByteArr = BytesUtil.checkLengthAndBehindAppendZero(pileSnByteArr, 14); // pileSnByteArr = BytesUtil.checkLengthAndBehindAppendZero(pileSnByteArr, 14);
accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); // accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8);
// 拼装消息体 // 拼装消息体
byte[] msgBodyByteArr = Bytes.concat(serialNumByteArr, pileSnByteArr, connectorNumByteArr, cardNumByteArr, accountBalanceByteArr, byte[] msgBodyByteArr = Bytes.concat(serialNumByteArr, pileSnByteArr, connectorNumByteArr, cardNumByteArr, accountBalanceByteArr,
authenticationFlagByteArr, defeatReasonByteArr); authenticationFlagByteArr, defeatReasonByteArr);
String s = BytesUtil.bin2HexStr(msgBodyByteArr);
System.out.println(s);
} }
@Test @Test

View File

@@ -147,12 +147,23 @@ public class ConfirmStartChargingRequestHandler extends AbstractHandler{
accountBalanceByteArr = YKCUtils.getPriceByte(String.valueOf(map.get("accountBalance")), 2); accountBalanceByteArr = YKCUtils.getPriceByte(String.valueOf(map.get("accountBalance")), 2);
// 鉴权成功标识 0x00 失败 0x01 成功 // 鉴权成功标识 0x00 失败 0x01 成功
authenticationFlagByteArr = Constants.oneByteArray; authenticationFlagByteArr = Constants.oneByteArray;
}else {
throw new BusinessException("", "生成刷卡订单失败");
} }
} }
} catch (BusinessException e){ } catch (BusinessException e){
transactionCode = "00000000000000000000000000000000";
accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8);
authenticationFlagByteArr = Constants.zeroByteArray;
log.error("刷卡启动充电鉴权 error:{}, {}", e.getCode(), e.getMessage()); log.error("刷卡启动充电鉴权 error:{}, {}", e.getCode(), e.getMessage());
}catch (Exception e){ }catch (Exception e){
transactionCode = "00000000000000000000000000000000";
accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8);
authenticationFlagByteArr = Constants.zeroByteArray;
log.error("刷卡启动充电鉴权 error", e); log.error("刷卡启动充电鉴权 error", e);
} }
try { try {
@@ -181,11 +192,21 @@ public class ConfirmStartChargingRequestHandler extends AbstractHandler{
accountBalanceByteArr = YKCUtils.getPriceByte(String.valueOf(map.get("accountBalance")), 2); accountBalanceByteArr = YKCUtils.getPriceByte(String.valueOf(map.get("accountBalance")), 2);
// 鉴权成功标识 0x00 失败 0x01 成功 // 鉴权成功标识 0x00 失败 0x01 成功
authenticationFlagByteArr = Constants.oneByteArray; authenticationFlagByteArr = Constants.oneByteArray;
}else {
throw new BusinessException("", "生成vin订单失败");
} }
} }
}catch (BusinessException e){ }catch (BusinessException e){
transactionCode = "00000000000000000000000000000000";
accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8);
authenticationFlagByteArr = Constants.zeroByteArray;
log.error("VIN码启动充电鉴权 error:{}, {}", e.getCode(), e.getMessage()); log.error("VIN码启动充电鉴权 error:{}, {}", e.getCode(), e.getMessage());
}catch (Exception e) { }catch (Exception e) {
transactionCode = "00000000000000000000000000000000";
accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8);
authenticationFlagByteArr = Constants.zeroByteArray;
log.error("VIN码启动充电鉴权 error", e); log.error("VIN码启动充电鉴权 error", e);
} }
@@ -223,10 +244,10 @@ public class ConfirmStartChargingRequestHandler extends AbstractHandler{
byte[] defeatReasonByteArr = Constants.zeroByteArray; byte[] defeatReasonByteArr = Constants.zeroByteArray;
// 不足位数的值补零 // 不足位数的值补零
cardNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(cardNumByteArr, 16); // cardNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(cardNumByteArr, 16);
serialNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(serialNumByteArr, 32); // serialNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(serialNumByteArr, 32);
pileSnByteArr = BytesUtil.checkLengthAndBehindAppendZero(pileSnByteArr, 14); // pileSnByteArr = BytesUtil.checkLengthAndBehindAppendZero(pileSnByteArr, 14);
accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); // accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8);
// 拼装消息体 // 拼装消息体
byte[] msgBodyByteArr = Bytes.concat(serialNumByteArr, pileSnByteArr, connectorNumByteArr, cardNumByteArr, accountBalanceByteArr, byte[] msgBodyByteArr = Bytes.concat(serialNumByteArr, pileSnByteArr, connectorNumByteArr, cardNumByteArr, accountBalanceByteArr,