diff --git a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsChargerInterruptData.java b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsChargerInterruptData.java index c5d86fb8..e780db3f 100644 --- a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsChargerInterruptData.java +++ b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsChargerInterruptData.java @@ -1,5 +1,6 @@ package com.xhpc.common.data.up; +//充电桩与 BMS 充电阶段充电机中止报文 public class BmsChargerInterruptData extends BaseData { private String orderNo; //交易流水号 diff --git a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsChargingData.java b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsChargingData.java index fa95d88f..60998e96 100644 --- a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsChargingData.java +++ b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsChargingData.java @@ -1,5 +1,6 @@ package com.xhpc.common.data.up; +//充电桩与 BMS 充电过程 BMS 信息 public class BmsChargingData extends BaseData { private String orderNo; //交易流水号 diff --git a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsErrorData.java b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsErrorData.java index 65cb5e19..0bba80ff 100644 --- a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsErrorData.java +++ b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsErrorData.java @@ -1,5 +1,6 @@ package com.xhpc.common.data.up; +//充电桩与 BMS 充电错误报文 public class BmsErrorData extends BaseData { private String orderNo; //交易流水号 diff --git a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsInterruptData.java b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsInterruptData.java index 0d8f3fa9..4807b64d 100644 --- a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsInterruptData.java +++ b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsInterruptData.java @@ -1,5 +1,6 @@ package com.xhpc.common.data.up; +//充电桩与 BMS 充电阶段 BMS 中止报文 public class BmsInterruptData extends BaseData { private String orderNo; //交易流水号 diff --git a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsReqChargerOutputData.java b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsReqChargerOutputData.java index 9ce2d99a..8ecedc94 100644 --- a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsReqChargerOutputData.java +++ b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/BmsReqChargerOutputData.java @@ -1,5 +1,6 @@ package com.xhpc.common.data.up; +//充电桩与 BMS 充电过程 BMS 需求、充电机输出 public class BmsReqChargerOutputData extends BaseData { private String orderNo; //交易流水号 diff --git a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingCompletedData.java b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingCompletedData.java index 4dbd226c..bb9ea489 100644 --- a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingCompletedData.java +++ b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingCompletedData.java @@ -1,5 +1,6 @@ package com.xhpc.common.data.up; +//充电桩与 BMS 充电结束阶段报文 public class ChargingCompletedData extends BaseData { private String orderNo; //交易流水号 diff --git a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingConfigData.java b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingConfigData.java index be84143c..3ff6de3d 100644 --- a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingConfigData.java +++ b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingConfigData.java @@ -1,5 +1,6 @@ package com.xhpc.common.data.up; +//充电桩与 BMS 参数配置阶段报文 public class ChargingConfigData extends BaseData { private String orderNo; //交易流水号 diff --git a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingHandshakeData.java b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingHandshakeData.java index 60ea88cd..34e6bf3a 100644 --- a/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingHandshakeData.java +++ b/xhpc-modules/xhpc-common/src/main/java/com/xhpc/common/data/up/ChargingHandshakeData.java @@ -1,5 +1,6 @@ package com.xhpc.common.data.up; +//充电桩与 BMS 充电握手阶段报文 public class ChargingHandshakeData extends BaseData { private String orderNo; //交易流水号 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 5c75aaa7..aac1e2c8 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 @@ -1,6 +1,5 @@ package com.xhpc.pp.controller; -import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.xhpc.common.api.PowerPileService; @@ -23,11 +22,9 @@ import org.springframework.web.bind.annotation.*; import java.io.IOException; import java.util.Arrays; -import java.util.Calendar; import java.util.List; import java.util.Map; -import static cn.hutool.core.date.DatePattern.NORM_DATETIME_FORMAT; import static com.xhpc.common.data.redis.StaticBeanUtil.REDIS; import static com.xhpc.common.data.redis.StaticBeanUtil.seqHex; import static com.xhpc.pp.logic.RegisterLogic.REGISTERED; @@ -220,7 +217,7 @@ public class ChargingController { if (!"空闲".equals(gunstatus)) { return R.fail("端口不在空闲或正常状态,稍后再试"); } - if (CacheDataUtils.hori(gunkey)) return R.fail("请检查终端号是否正确,稍后再试"); + if (CacheDataUtils.hori(gunkey)) return R.fail("请检查枪号是否正确,稍后再试"); String skey = gunkey.concat(".seqhex"); String seq = seqHex(skey); byte[] msg = translateStart(startChargingData, seq); @@ -238,15 +235,11 @@ public class ChargingController { cacheOrder.put("physicCardNo", startChargingData.getPhysicCardNo()); cacheOrder.put("gunId", startChargingData.getGunId()); cacheOrder.put("tel", startChargingData.getTel()); + cacheOrder.put("startSoc", startChargingData.getSoc()); cacheOrder.put("stopSoc", startChargingData.getSoc()); - cacheOrder.put("startSoc", 0); - cacheOrder.put("endSoc", 0); + cacheOrder.put("endSoc", startChargingData.getSoc()); REDIS.setCacheMap(orderkey, cacheOrder); - cacheGun.put("orderstarttime", DateUtil.format(Calendar.getInstance().getTime(), NORM_DATETIME_FORMAT)); - cacheGun.put("orderstoptime", null); - cacheGun.put("orderkey", orderkey); - REDIS.setCacheMap(gunkey, cacheGun); - return R.ok("指令已下发至充电桩"); + return R.ok("充电指令已下发"); } catch (IOException e) { log.error("send message failed. " + e.getMessage(), e); return R.fail(e.getMessage()); @@ -263,7 +256,7 @@ public class ChargingController { } try { String gunkey = "gun:".concat(pileNo).concat(gunId); - if (CacheDataUtils.hori(gunkey)) return R.fail("正在停止充电,如果失败请稍后再试一次"); + if (CacheDataUtils.hori(gunkey)) return R.fail("充电桩正在忙碌,请稍后再试"); String skey = gunkey.concat(".seqhex"); String seq = seqHex(skey); byte[] msg = translateStop(pileNo, gunId, version, seq); diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingCompletedDataLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingCompletedDataLogic.java index e013c035..9ec6dfb3 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingCompletedDataLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingCompletedDataLogic.java @@ -15,7 +15,7 @@ import java.util.Map; import static com.xhpc.common.data.redis.StaticBeanUtil.REDIS; @Lazy -@Component("ChargingCompletedDataLogic") +@Component("BmsChargingCompletedDataLogic") public class ChargingCompletedDataLogic implements ServiceLogic { private static Logger log = LoggerFactory.getLogger(ChargingCompletedDataLogic.class); diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingConfigDataLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingConfigDataLogic.java index dd400f5a..3ee01dd4 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingConfigDataLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingConfigDataLogic.java @@ -15,7 +15,7 @@ import java.util.Map; import static com.xhpc.common.data.redis.StaticBeanUtil.REDIS; @Lazy -@Component("ChargingConfigDataLogic") +@Component("BmsChargingConfigDataLogic") public class ChargingConfigDataLogic implements ServiceLogic { private static Logger log = LoggerFactory.getLogger(ChargingConfigDataLogic.class); diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingHandshakeDataLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingHandshakeDataLogic.java index b68363d6..97e4d6c1 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingHandshakeDataLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/ChargingHandshakeDataLogic.java @@ -15,7 +15,7 @@ import java.util.Map; import static com.xhpc.common.data.redis.StaticBeanUtil.REDIS; @Lazy -@Component("ChargingHandshakeDataLogic") +@Component("BmsChargingHandshakeDataLogic") public class ChargingHandshakeDataLogic implements ServiceLogic { private static Logger log = LoggerFactory.getLogger(ChargingHandshakeDataLogic.class); 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 ebbde6b1..9c1d986f 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 @@ -8,7 +8,6 @@ import com.xhpc.common.data.up.OrderData; import com.xhpc.pp.tx.ServiceParameter; import com.xhpc.pp.tx.ServiceResult; import com.xhpc.pp.tx.logic.ServiceLogic; -import com.xhpc.pp.utils.security.CRCCalculator; import com.xhpc.pp.utils.security.HexUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -51,7 +50,6 @@ public class OrderDataLogic implements ServiceLogic { REDIS.setCacheMap(orderkey, cacheOrder); String gunkey = "gun:".concat(orderData.getPileNo()).concat(orderData.getGunId()); Map cacheGun = REDIS.getCacheMap(gunkey); - cacheGun.put("orderstarttime", null); cacheGun.put("orderstoptime", cacheOrderData.getEndTime()); cacheGun.put("orderkey", null); REDIS.setCacheMap(gunkey, cacheGun); @@ -59,7 +57,6 @@ public class OrderDataLogic implements ServiceLogic { String seq = seqHex(skey); String resultStr = "6815".concat(seq).concat("0040").concat(orderNo).concat(ServiceResult.HEX_00); pileOrderService.pileEndOrder(orderNo); - resultStr = resultStr.concat(CRCCalculator.calcCrc(resultStr)); return new ServiceResult(HexUtils.toBytes(resultStr), ServiceResult.OK); } diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RemoteStartReplyDataLogic.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RemoteStartReplyDataLogic.java index 43e97d1d..1a4f3241 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RemoteStartReplyDataLogic.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/logic/RemoteStartReplyDataLogic.java @@ -1,5 +1,6 @@ package com.xhpc.pp.logic; +import cn.hutool.core.date.DateUtil; import com.fasterxml.jackson.databind.ObjectMapper; import com.xhpc.common.api.PileOrderService; import com.xhpc.common.data.up.RemoteStartReplyData; @@ -12,8 +13,10 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Component; +import java.util.Calendar; import java.util.Map; +import static cn.hutool.core.date.DatePattern.NORM_DATETIME_FORMAT; import static com.xhpc.common.data.redis.StaticBeanUtil.REDIS; import static com.xhpc.pp.tx.ServiceResult.HEX_01; @@ -43,10 +46,12 @@ public class RemoteStartReplyDataLogic implements ServiceLogic { REDIS.setCacheMap(gunkey, cacheGun); REDIS.setCacheMap(orderkey, cacheOrder); if (HEX_01.equals(remoteStartReplyData.getStartResult())) { + cacheGun.put("orderstarttime", DateUtil.format(Calendar.getInstance().getTime(), NORM_DATETIME_FORMAT)); + cacheGun.put("orderstoptime", null); + cacheGun.put("orderkey", orderkey); + REDIS.setCacheMap(gunkey, cacheGun); pileOrderService.pileStartup(orderNo, 1, "启动充电成功"); } else { - cacheGun.put("orderkey", null); - REDIS.setCacheMap(gunkey, cacheGun); pileOrderService.pileStartup(orderNo, 2, frs[Integer.parseInt(remoteStartReplyData.getFailReason())]); } return new ServiceResult(false); diff --git a/xhpc-modules/xhpc-power-pile/src/main/resources/svcmainlogic.xml b/xhpc-modules/xhpc-power-pile/src/main/resources/svcmainlogic.xml index a2b33348..796d939e 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/resources/svcmainlogic.xml +++ b/xhpc-modules/xhpc-power-pile/src/main/resources/svcmainlogic.xml @@ -13,9 +13,9 @@ - - - + + +