From 338ebbaebb6aed585e38d3d0209bd701572e7ac8 Mon Sep 17 00:00:00 2001 From: ZZ Date: Wed, 8 Dec 2021 14:55:01 +0800 Subject: [PATCH] =?UTF-8?q?=E9=81=BF=E5=85=8D=E7=AC=AC=E4=B8=89=E6=96=B9?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=9C=AA=E5=90=AF=E5=8A=A8=E7=9A=84=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/QueryEquipChargeStatusController.java | 155 +++++++++--------- 1 file changed, 80 insertions(+), 75 deletions(-) diff --git a/evcs-modules/evcs-core/src/main/java/com/xhpc/evcs/api/QueryEquipChargeStatusController.java b/evcs-modules/evcs-core/src/main/java/com/xhpc/evcs/api/QueryEquipChargeStatusController.java index bfeac2ce..f54ad153 100644 --- a/evcs-modules/evcs-core/src/main/java/com/xhpc/evcs/api/QueryEquipChargeStatusController.java +++ b/evcs-modules/evcs-core/src/main/java/com/xhpc/evcs/api/QueryEquipChargeStatusController.java @@ -53,83 +53,88 @@ public class QueryEquipChargeStatusController { } String internalOrderNum = etOrderMapping.getXhOrderNo(); Map cacheOrder = REDIS.getCacheMap("order:" + internalOrderNum); - String orderStatus = (String) cacheOrder.get("status"); - int startChargeSeqStat = 0; - if (orderStatus == null) { - startChargeSeqStat = 5; - } else switch (orderStatus) { - case "启动中": - startChargeSeqStat = 1; - break; - case "充电中": - startChargeSeqStat = 2; - break; - case "停止中": - startChargeSeqStat = 3; - break; - case "已结束": - startChargeSeqStat = 4; - break; - default: - startChargeSeqStat = 5; - break; - } - equipChargeStatus.setStartChargeSeqStat(startChargeSeqStat); - //充电设备接口编码 - String connectorId = internalOrderNum.substring(0, 16); - equipChargeStatus.setConnectorID(connectorId); - //充电设备接口状态 - Map cacheGunData = REDIS.getCacheMap("gun:" + connectorId); - String gunStatus = (String) cacheGunData.get("status"); - int connectorStatus = 0; - switch (gunStatus) { - case "空闲": - connectorStatus = 1; - break; - case "离线": - connectorStatus = 2; - break; - case "故障": - connectorStatus = 255; - break; - default: - connectorStatus = 3; - break; - } - equipChargeStatus.setConnectorStatus(connectorStatus); - //A相电流 - Double current = (Double) cacheGunData.get("current"); - equipChargeStatus.setCurrentA(current); - //A相电压 - Double voltage = (Double) cacheGunData.get("voltage"); - equipChargeStatus.setVoltageA(voltage); - //电池剩余电量 - Integer endSoc = (Integer) cacheOrder.get("endSoc"); - Double soc = Double.valueOf(endSoc == null ? 0 : endSoc); - equipChargeStatus.setSoc(soc); - //开始充电时间 - String startTime = (String) cacheOrder.get("startTime"); - if (startTime == null) startTime = orderNo2DateStr(internalOrderNum); - equipChargeStatus.setStartTime(startTime); - //本次采样时间 直接new一个当前时间的Date就可以了 - CacheRealtimeData lord = REDIS.getCacheObject("order:" + internalOrderNum + ".lord"); - if (lord != null) { - equipChargeStatus.setEndTime(lord.getCreateTime()); - equipChargeStatus.setTotalMoney(lord.getAmountCharged() / 10000.0); - equipChargeStatus.setTotalPower(lord.getChargingDegree() / 10000.0); + if (cacheOrder == null) { + response.setRet(EvcsConst.RET_FAIL); + response.setMsg("Order cache data not found"); } else { - equipChargeStatus.setEndTime(equipChargeStatus.getStartTime()); - equipChargeStatus.setTotalMoney(0.0); - equipChargeStatus.setTotalPower(0.0); + String orderStatus = (String) cacheOrder.get("status"); + int startChargeSeqStat; + if (orderStatus == null) { + startChargeSeqStat = 5; + } else switch (orderStatus) { + case "启动中": + startChargeSeqStat = 1; + break; + case "充电中": + startChargeSeqStat = 2; + break; + case "停止中": + startChargeSeqStat = 3; + break; + case "已结束": + startChargeSeqStat = 4; + break; + default: + startChargeSeqStat = 5; + break; + } + equipChargeStatus.setStartChargeSeqStat(startChargeSeqStat); + //充电设备接口编码 + String connectorId = internalOrderNum.substring(0, 16); + equipChargeStatus.setConnectorID(connectorId); + //充电设备接口状态 + Map cacheGunData = REDIS.getCacheMap("gun:" + connectorId); + String gunStatus = (String) cacheGunData.get("status"); + int connectorStatus = 0; + switch (gunStatus) { + case "空闲": + connectorStatus = 1; + break; + case "离线": + connectorStatus = 2; + break; + case "故障": + connectorStatus = 255; + break; + default: + connectorStatus = 3; + break; + } + equipChargeStatus.setConnectorStatus(connectorStatus); + //A相电流 + Double current = (Double) cacheGunData.get("current"); + equipChargeStatus.setCurrentA(current); + //A相电压 + Double voltage = (Double) cacheGunData.get("voltage"); + equipChargeStatus.setVoltageA(voltage); + //电池剩余电量 + Integer endSoc = (Integer) cacheOrder.get("endSoc"); + Double soc = Double.valueOf(endSoc == null ? 0 : endSoc); + equipChargeStatus.setSoc(soc); + //开始充电时间 + String startTime = (String) cacheOrder.get("startTime"); + if (startTime == null) startTime = orderNo2DateStr(internalOrderNum); + equipChargeStatus.setStartTime(startTime); + //本次采样时间 直接new一个当前时间的Date就可以了 + CacheRealtimeData lord = REDIS.getCacheObject("order:" + internalOrderNum + ".lord"); + if (lord != null) { + equipChargeStatus.setEndTime(lord.getCreateTime()); + equipChargeStatus.setTotalMoney(lord.getAmountCharged() / 10000.0); + equipChargeStatus.setTotalPower(lord.getChargingDegree() / 10000.0); + } else { + equipChargeStatus.setEndTime(equipChargeStatus.getStartTime()); + equipChargeStatus.setTotalMoney(0.0); + equipChargeStatus.setTotalPower(0.0); + } + Integer chargeModel = (Integer) cacheOrder.get("chargeModel"); + equipChargeStatus.setChargeModel(chargeModel == null ? 0 : chargeModel); + final Long rateModelId = REDIS.getCacheMapValue("pile:".concat(connectorId.substring(0, 14)), "rateModelId"); + final CacheRateModel cacheRateModel = REDIS.getCacheObject("rateModel:" + rateModelId); + calculateEm(equipChargeStatus, cacheRateModel); + response.setRet(EvcsConst.RET_SUCC); + response.setData(JSONUtil.toJSONString(equipChargeStatus)); + response.setMsg("success"); } - Integer chargeModel = (Integer) cacheOrder.get("chargeModel"); - equipChargeStatus.setChargeModel(chargeModel == null ? 0 : chargeModel); - final Long rateModelId = REDIS.getCacheMapValue("pile:".concat(connectorId.substring(0, 14)), "rateModelId"); - final CacheRateModel cacheRateModel = REDIS.getCacheObject("rateModel:" + rateModelId); - calculateEm(equipChargeStatus, cacheRateModel); - response.setRet(EvcsConst.RET_SUCC); - response.setData(JSONUtil.toJSONString(equipChargeStatus)); - response.setMsg("success"); return response; } }