From 3742c93ff6a61e9dc0b43ccd1a5d6cfcbff14a5f Mon Sep 17 00:00:00 2001 From: ZZ Date: Wed, 18 Aug 2021 19:06:45 +0800 Subject: [PATCH] bin handler not a spring bean --- .../src/main/java/com/xhpc/pp/logic/OrderDataLogic.java | 7 ++++++- .../com/xhpc/pp/server/ChargingPileBinaryHandler.java | 9 +-------- 2 files changed, 7 insertions(+), 9 deletions(-) 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 713bb75c..adf9f87b 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 @@ -1,6 +1,7 @@ package com.xhpc.pp.logic; import com.fasterxml.jackson.databind.ObjectMapper; +import com.xhpc.common.api.PileOrderService; import com.xhpc.common.data.redis.CacheOrderData; import com.xhpc.common.data.up.OrderData; import com.xhpc.pp.tx.ServiceParameter; @@ -10,6 +11,7 @@ import com.xhpc.pp.utils.security.CRCCalculator; import com.xhpc.pp.utils.security.HexUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Component; @@ -26,6 +28,8 @@ import static com.xhpc.pp.utils.security.CacheDataUtils.reflectTranslate; public class OrderDataLogic implements ServiceLogic { private static Logger log = LoggerFactory.getLogger(OrderDataLogic.class); + @Autowired + private PileOrderService pileOrderService; @Override public ServiceResult service(ServiceParameter sp) throws Exception { @@ -51,8 +55,9 @@ public class OrderDataLogic implements ServiceLogic { String skey = gunkey.concat(".seqhex"); 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, orderNo); + return new ServiceResult(HexUtils.toBytes(resultStr), ServiceResult.OK); } private CacheOrderData translate(OrderData orderData) throws NoSuchMethodException, InvocationTargetException, IllegalAccessException, InstantiationException { diff --git a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileBinaryHandler.java b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileBinaryHandler.java index 5a89ed11..a482bbc6 100644 --- a/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileBinaryHandler.java +++ b/xhpc-modules/xhpc-power-pile/src/main/java/com/xhpc/pp/server/ChargingPileBinaryHandler.java @@ -2,9 +2,7 @@ package com.xhpc.pp.server; import cn.hutool.core.date.DateUtil; import com.alibaba.nacos.api.exception.NacosException; -import com.xhpc.common.api.PileOrderService; import com.xhpc.common.api.dto.ChargingStationDto; -import com.xhpc.common.core.domain.R; import com.xhpc.pp.domain.ServiceField; import com.xhpc.pp.logic.FieldLogic; import com.xhpc.pp.logic.ServiceMainLogic; @@ -19,7 +17,6 @@ import org.quickserver.net.server.ClientBinaryHandler; import org.quickserver.net.server.ClientHandler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; import java.io.IOException; import java.util.*; @@ -48,8 +45,7 @@ public class ChargingPileBinaryHandler implements ClientBinaryHandler { // private static final String DATA_TYPE_HEX = "hex"; private final ServiceMainLogic servicemainLogic; - @Autowired - private PileOrderService pileOrderService; + public ChargingPileBinaryHandler() { @@ -105,9 +101,6 @@ public class ChargingPileBinaryHandler implements ClientBinaryHandler { regHandler(handler, pileNo, req); } else if (SERVICE_RMCR.equals(serviceName) && OK.equals(resultCode)) { setCachePileRM(pilekey); - } else if (SERVICE_OD.equals(serviceName) && OK.equals(resultCode)) { - R r = pileOrderService.pileEndOrder(result.getMsg()); - if (r.getCode() != 200) return; } if (result.getBinary() != null) { log.info("server send msg >>>> ({}) |{}|", pileNo, toHex(result.getBinary()));