From b9afafac6a21dbf41397739eedf52727c6335c2b Mon Sep 17 00:00:00 2001 From: zz Date: Tue, 15 Mar 2022 20:21:27 +0800 Subject: [PATCH] top lose invalid order, not to stop it. --- .../com/xhpc/pp/controller/ChargingController.java | 2 +- .../java/com/xhpc/pp/logic/OrderDataLogic.java | 14 +++----------- .../xhpc/pp/server/ChargingPileEventHandler.java | 2 +- 3 files changed, 5 insertions(+), 13 deletions(-) diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/controller/ChargingController.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/controller/ChargingController.java index ae0e9d71..4cb54661 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/controller/ChargingController.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/controller/ChargingController.java @@ -345,7 +345,7 @@ public class ChargingController { // Integer sts = REDIS.getCacheMapValue(orderkey, "sts"); if (orderkey != null && orderNo.equals(orderkey.substring(6))) {// && (sts == null)) { handler.sendClientBinary(msg); - log.error("invalid orderNo [{}], stop msg sent to pile |{}|", pileNo, HexUtils.toHex(msg)); + log.error("invalid orderNo [{}], stop msg sent to pile |{}|", orderNo, HexUtils.toHex(msg)); // REDIS.setCacheMapValue(orderkey, "sts", 1); } } diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/OrderDataLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/OrderDataLogic.java index f4a1c172..b91a71ac 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/OrderDataLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/OrderDataLogic.java @@ -73,19 +73,11 @@ public class OrderDataLogic implements ServiceLogic { String resultStr = "6815".concat(req.get("seqhex").toString()).concat("0040").concat(orderNo).concat(ServiceResult.HEX_00); resultStr = resultStr.concat(CRCCalculator.calcCrc(resultStr)); - if (orderNo.equals("00000000000000000000000000000000")) { - return new ServiceResult(HexUtils.toBytes(resultStr), ServiceResult.OK); - } final R r = pileOrderService.pileEndOrder(orderNo); - if (r.getCode() == 200) - return new ServiceResult(HexUtils.toBytes(resultStr), ServiceResult.OK); - else { - String msg = r.getMsg(); - if (msg != null && msg.contains("无效订单")) { - chargingController.stopInvalidOrder(orderNo); - } - return new ServiceResult(ServiceResult.FAIL); + if (orderNo.equals("00000000000000000000000000000000") || (r.getMsg() != null && r.getMsg().contains("无效订单"))) { + log.error(">>INVALID order [{}] detected. MUST check the system.<<", orderNo); } + return new ServiceResult(HexUtils.toBytes(resultStr), ServiceResult.OK); } private CacheOrderData translate(OrderData orderData) throws InvocationTargetException, IllegalAccessException, InstantiationException { diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileEventHandler.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileEventHandler.java index ffd4465f..b6ff0cb7 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileEventHandler.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileEventHandler.java @@ -34,7 +34,7 @@ public class ChargingPileEventHandler implements ClientEventHandler { String pileNo = ChargingPileServer.getPileNo(handler); if (pileNo != null) { ChargingPileServer.disconnPileNGuns(pileNo); - log.debug("<- ({}) - [{}] - {} ->", pileNo, handler.getName(), + log.debug("<- ({}) -disconn- [{}] - {} ->", pileNo, handler.getName(), handler.getSocket().getRemoteSocketAddress().toString()); } }