diff --git a/jsowell-admin/src/test/java/SpringBootTestController.java b/jsowell-admin/src/test/java/SpringBootTestController.java index d3156cea0..96d26866e 100644 --- a/jsowell-admin/src/test/java/SpringBootTestController.java +++ b/jsowell-admin/src/test/java/SpringBootTestController.java @@ -318,13 +318,20 @@ public class SpringBootTestController { accountBalanceByteArr = YKCUtils.getPriceByte(String.valueOf(map.get("accountBalance")), 2); // 鉴权成功标识 0x00 失败 0x01 成功 authenticationFlagByteArr = Constants.oneByteArray; + }else { + throw new BusinessException("", "生成vin订单失败"); } } }catch (BusinessException e){ - System.out.println(e); + e.printStackTrace(); + System.out.println("1"); // log.error("VIN码启动充电鉴权 error:{}, {}", e.getCode(), e.getMessage()); }catch (Exception e) { e.printStackTrace(); + System.out.println("2"); + transactionCode = "00000000000000000000000000000000"; + accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); + authenticationFlagByteArr = Constants.zeroByteArray; // log.error("VIN码启动充电鉴权 error", e); } byte[] serialNumByteArr = BytesUtil.str2Bcd(transactionCode); @@ -332,14 +339,17 @@ public class SpringBootTestController { byte[] defeatReasonByteArr = Constants.zeroByteArray; // 不足位数的值补零 - cardNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(cardNumByteArr, 16); - serialNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(serialNumByteArr, 32); - pileSnByteArr = BytesUtil.checkLengthAndBehindAppendZero(pileSnByteArr, 14); - accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); + // cardNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(cardNumByteArr, 16); + // serialNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(serialNumByteArr, 32); + // pileSnByteArr = BytesUtil.checkLengthAndBehindAppendZero(pileSnByteArr, 14); + // accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); // 拼装消息体 byte[] msgBodyByteArr = Bytes.concat(serialNumByteArr, pileSnByteArr, connectorNumByteArr, cardNumByteArr, accountBalanceByteArr, authenticationFlagByteArr, defeatReasonByteArr); + + String s = BytesUtil.bin2HexStr(msgBodyByteArr); + System.out.println(s); } @Test diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/handler/ConfirmStartChargingRequestHandler.java b/jsowell-netty/src/main/java/com/jsowell/netty/handler/ConfirmStartChargingRequestHandler.java index c652f7c24..2da92bead 100644 --- a/jsowell-netty/src/main/java/com/jsowell/netty/handler/ConfirmStartChargingRequestHandler.java +++ b/jsowell-netty/src/main/java/com/jsowell/netty/handler/ConfirmStartChargingRequestHandler.java @@ -147,12 +147,23 @@ public class ConfirmStartChargingRequestHandler extends AbstractHandler{ accountBalanceByteArr = YKCUtils.getPriceByte(String.valueOf(map.get("accountBalance")), 2); // 鉴权成功标识 0x00 失败 0x01 成功 authenticationFlagByteArr = Constants.oneByteArray; + }else { + throw new BusinessException("", "生成刷卡订单失败"); } } } catch (BusinessException e){ + transactionCode = "00000000000000000000000000000000"; + accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); + authenticationFlagByteArr = Constants.zeroByteArray; + log.error("刷卡启动充电鉴权 error:{}, {}", e.getCode(), e.getMessage()); }catch (Exception e){ + transactionCode = "00000000000000000000000000000000"; + accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); + authenticationFlagByteArr = Constants.zeroByteArray; + log.error("刷卡启动充电鉴权 error", e); + } try { @@ -181,11 +192,21 @@ public class ConfirmStartChargingRequestHandler extends AbstractHandler{ accountBalanceByteArr = YKCUtils.getPriceByte(String.valueOf(map.get("accountBalance")), 2); // 鉴权成功标识 0x00 失败 0x01 成功 authenticationFlagByteArr = Constants.oneByteArray; + }else { + throw new BusinessException("", "生成vin订单失败"); } } }catch (BusinessException e){ + transactionCode = "00000000000000000000000000000000"; + accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); + authenticationFlagByteArr = Constants.zeroByteArray; + log.error("VIN码启动充电鉴权 error:{}, {}", e.getCode(), e.getMessage()); }catch (Exception e) { + transactionCode = "00000000000000000000000000000000"; + accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); + authenticationFlagByteArr = Constants.zeroByteArray; + log.error("VIN码启动充电鉴权 error", e); } @@ -223,10 +244,10 @@ public class ConfirmStartChargingRequestHandler extends AbstractHandler{ byte[] defeatReasonByteArr = Constants.zeroByteArray; // 不足位数的值补零 - cardNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(cardNumByteArr, 16); - serialNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(serialNumByteArr, 32); - pileSnByteArr = BytesUtil.checkLengthAndBehindAppendZero(pileSnByteArr, 14); - accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); + // cardNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(cardNumByteArr, 16); + // serialNumByteArr = BytesUtil.checkLengthAndBehindAppendZero(serialNumByteArr, 32); + // pileSnByteArr = BytesUtil.checkLengthAndBehindAppendZero(pileSnByteArr, 14); + // accountBalanceByteArr = BytesUtil.checkLengthAndBehindAppendZero(accountBalanceByteArr, 8); // 拼装消息体 byte[] msgBodyByteArr = Bytes.concat(serialNumByteArr, pileSnByteArr, connectorNumByteArr, cardNumByteArr, accountBalanceByteArr,