From 9dd98bc332941adf338b64ed6a2acbc1725ba780 Mon Sep 17 00:00:00 2001 From: ZZ Date: Mon, 28 Feb 2022 18:35:39 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=B7=E5=8D=A1=E5=90=AF=E5=8A=A8=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=8F=B7=E7=BC=93=E5=AD=98=E4=BF=A1=E6=81=AF;?= =?UTF-8?q?=E8=B4=B9=E7=8E=87=E6=A8=A1=E5=9E=8Bid=E8=A7=A3=E6=9E=90?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xhpc/common/core/constant/Constants.java | 2 +- .../com/xhpc/pp/logic/OrderDataLogic.java | 4 ++-- .../pp/logic/PileStartChargingDataLogic.java | 2 +- .../com/xhpc/pp/logic/RealtimeDataLogic.java | 21 +++++++++++++++++-- 4 files changed, 23 insertions(+), 6 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/xhpc/common/core/constant/Constants.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/xhpc/common/core/constant/Constants.java index c3db60c6..47eac5ac 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/com/xhpc/common/core/constant/Constants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/xhpc/common/core/constant/Constants.java @@ -169,7 +169,7 @@ public class Constants //你有申请退款订单在审核中,需要充电请取消申请退款 public static final String REFUND_ORDER = "14"; - //车辆正在充电,请查询车辆充电信息 + //账号正在充电,请查询车辆充电信息 public static final String CHARGE_ORDER = "15"; //未注册的终端,请选择其他终端充电 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 211316da..6a394017 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 @@ -22,7 +22,7 @@ import java.lang.reflect.InvocationTargetException; import java.util.Map; import static com.xhpc.common.data.redis.StaticBeanUtil.REDIS; -import static com.xhpc.pp.logic.RealtimeDataLogic.calcem; +import static com.xhpc.pp.logic.RealtimeDataLogic.calcem2; import static com.xhpc.pp.utils.security.CacheDataUtils.reflectTranslate; @Lazy @@ -63,7 +63,7 @@ public class OrderDataLogic implements ServiceLogic { final String hex = orderData.getHex(); String cdhex = hex.substring(0xA2 * 2 + 4, hex.length() - 4); if (cdhex.length() > 0) { - cacheOrder.put("em2", calcem(cdhex)); + cacheOrder.put("em2", calcem2(cdhex)); REDIS.setCacheMap(orderkey, cacheOrder); } } diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/PileStartChargingDataLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/PileStartChargingDataLogic.java index 849ccb6f..06a64110 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/PileStartChargingDataLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/PileStartChargingDataLogic.java @@ -72,7 +72,7 @@ public class PileStartChargingDataLogic implements ServiceLogic { } else { // 调用订单接口 cardNo = iccardInfo.getCardno(); - Integer rateModelId = HexUtils.reverseHexInt(pileStartChargingData.getRateModelId().toString()); + Integer rateModelId = pileStartChargingData.getRateModelId(); R r = cardService.cardStartup(cardNo, connectorId, rateModelId.toString()); if (r.getCode() == 200) { result = ServiceResult.HEX_01; diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RealtimeDataLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RealtimeDataLogic.java index 5bb47302..ad7a457b 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RealtimeDataLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RealtimeDataLogic.java @@ -137,7 +137,7 @@ public class RealtimeDataLogic implements ServiceLogic { final String hex = realtimeData.getHex(); String cdhex = hex.substring(0x40 * 2 + 4, hex.length() - 4); if (cdhex.length() > 0) { - cacheOrder.put("em1", calcem(cdhex)); + cacheOrder.put("em1", calcem1(cdhex)); } } cacheOrder.put("rbalance", balance); @@ -192,6 +192,9 @@ public class RealtimeDataLogic implements ServiceLogic { } } } else { + if (cacheGun.get("orderkey") == null) { + cacheGun.put("orderkey", orderkey); + } Integer errorfreecnt = (Integer) cacheOrder.get("errorfreecnt"); errorfreecnt = errorfreecnt == null ? 1 : ++errorfreecnt; if (errorfreecnt == 2) { @@ -262,7 +265,21 @@ public class RealtimeDataLogic implements ServiceLogic { return new ServiceResult(false); } - public static List calcem(String hex) { + public static List calcem2(String hex) { + + int sumPeriod = Integer.parseInt(hex.substring(0, 2), 16); + List cds = new ArrayList<>(); + for (int i = 2; i < 2 + sumPeriod * 16; i = i + 16) { // todo + ChargeDetails cd = new ChargeDetails(); + cd.setDetailPower(HexUtils.reverseHexInt(hex.substring(i, i + 8)) / 100000.0); + cd.setDetailElecMoney(HexUtils.reverseHexInt(hex.substring(i + 8, i + 16)) / 100000.0); +// cd.setDetailSeviceMoney(HexUtils.reverseHexInt(hex.substring(i + 60, i + 68)) / 10000.0); + cds.add(cd); + } + return cds; + } + + public static List calcem1(String hex) { int sumPeriod = Integer.parseInt(hex.substring(28, 30), 16); List cds = new ArrayList<>();