diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/handler/GroundLockDataUploadHandler.java b/jsowell-netty/src/main/java/com/jsowell/netty/handler/GroundLockDataUploadHandler.java index d00f18459..eccc76a74 100644 --- a/jsowell-netty/src/main/java/com/jsowell/netty/handler/GroundLockDataUploadHandler.java +++ b/jsowell-netty/src/main/java/com/jsowell/netty/handler/GroundLockDataUploadHandler.java @@ -6,16 +6,21 @@ import com.jsowell.common.core.domain.ykc.GroundLockData; import com.jsowell.common.core.domain.ykc.YKCDataProtocol; import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode; import com.jsowell.common.core.redis.RedisCache; +import com.jsowell.common.enums.uniapp.OccupyOrderStatusEnum; import com.jsowell.common.util.BytesUtil; +import com.jsowell.common.util.DateUtils; import com.jsowell.common.util.StringUtils; import com.jsowell.common.util.YKCUtils; import com.jsowell.netty.factory.YKCOperateFactory; +import com.jsowell.pile.domain.OrderPileOccupy; +import com.jsowell.pile.service.OrderPileOccupyService; import io.netty.channel.Channel; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.Locale; +import java.util.Objects; /** * 地锁数据上送 @@ -31,6 +36,9 @@ public class GroundLockDataUploadHandler extends AbstractHandler{ @Autowired private RedisCache redisCache; + @Autowired + private OrderPileOccupyService orderPileOccupyService; + private final String type = YKCUtils.frameType2Str(YKCFrameTypeCode.GROUND_LOCK_DATA_UPLOAD_CODE.getBytes()); @Override @@ -103,6 +111,7 @@ public class GroundLockDataUploadHandler extends AbstractHandler{ log.info("0x61地锁数据,车位锁状态:升锁到位状态"); if (StringUtils.equals(parkingStatus, "00")) { log.info("0x61地锁数据,车位锁状态: 升锁到位状态, 车位状态: 无车辆"); + raiseTheGroundLock(pileSn, connectorCode); } else { log.info("0x61地锁数据,车位锁状态: 升锁到位状态, 车位状态: 停放车辆"); } @@ -112,8 +121,33 @@ public class GroundLockDataUploadHandler extends AbstractHandler{ log.info("0x61地锁数据,车位锁状态: 降锁到位状态, 车位状态: 无车辆"); } else { log.info("0x61地锁数据,车位锁状态: 降锁到位状态, 车位状态: 停放车辆"); + lowerTheGroundLock(pileSn, connectorCode); } } return null; } + + /** + * 降锁成功的时候调用 + */ + private void lowerTheGroundLock(String pileSn, String connectorCode) { + // 查出占桩订单 草稿单 ,将开始时间set进订单信息 + OrderPileOccupy orderInfo = orderPileOccupyService.getOrderInfoByPile(pileSn, connectorCode); + if (orderInfo == null) { + return; + } + if (Objects.isNull(orderInfo.getStartTime())) { + orderInfo.setStatus(OccupyOrderStatusEnum.OCCUPIED.getValue()); + orderInfo.setStartTime(DateUtils.getNowDate()); + // 修改数据库 + orderPileOccupyService.updateByPrimaryKey(orderInfo); + } + } + + /** + * 升锁成功时调用 + */ + private void raiseTheGroundLock(String pileSn, String connectorCode) { + orderPileOccupyService.stopOccupyPileOrder(pileSn, connectorCode); + } } diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/handler/RemoteControlGroundLockResponseHandler.java b/jsowell-netty/src/main/java/com/jsowell/netty/handler/RemoteControlGroundLockResponseHandler.java index 51259d7d2..bc3fb6ec2 100644 --- a/jsowell-netty/src/main/java/com/jsowell/netty/handler/RemoteControlGroundLockResponseHandler.java +++ b/jsowell-netty/src/main/java/com/jsowell/netty/handler/RemoteControlGroundLockResponseHandler.java @@ -3,13 +3,9 @@ package com.jsowell.netty.handler; import com.alibaba.fastjson2.JSONObject; import com.jsowell.common.core.domain.ykc.YKCDataProtocol; import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode; -import com.jsowell.common.enums.uniapp.OccupyOrderStatusEnum; import com.jsowell.common.util.BytesUtil; -import com.jsowell.common.util.DateUtils; -import com.jsowell.common.util.StringUtils; import com.jsowell.common.util.YKCUtils; import com.jsowell.netty.factory.YKCOperateFactory; -import com.jsowell.pile.domain.OrderPileOccupy; import com.jsowell.pile.service.OrderPileOccupyService; import io.netty.channel.Channel; import lombok.extern.slf4j.Slf4j; @@ -17,7 +13,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.Locale; -import java.util.Objects; /** * 充电桩返回遥控地锁升锁与降锁数据(上行) @@ -32,7 +27,6 @@ public class RemoteControlGroundLockResponseHandler extends AbstractHandler{ @Autowired private OrderPileOccupyService orderPileOccupyService; - private final String type = YKCUtils.frameType2Str(YKCFrameTypeCode.CHARGING_PILE_RESPOND_GROUND_LOCK_LIFTING_CODE.getBytes()); @Override @@ -76,40 +70,6 @@ public class RemoteControlGroundLockResponseHandler extends AbstractHandler{ log.info("===充电桩返回遥控地锁升锁与降锁数据(上行)=== result: 桩编号:{}, 枪号:{}, 升/降地锁标识:{}, 地锁控制返回标志:( 1, 鉴权成功; 0, 鉴权失败){}", pileSn, connectorCode,raiseLowMarking, controlResult); - // 鉴权成功 - if (StringUtils.equals(controlResult, "01")) { - if (StringUtils.equals(raiseLowMarking, "FF")) { - // 降锁 - lowerTheGroundLock(pileSn, connectorCode); - } else { - // 升锁 - raiseTheGroundLock(pileSn, connectorCode); - } - } return null; } - - /** - * 降锁成功的时候调用 - */ - private void lowerTheGroundLock(String pileSn, String connectorCode) { - // 查出占桩订单 草稿单 ,将开始时间set进订单信息 - OrderPileOccupy orderInfo = orderPileOccupyService.getOrderInfoByPile(pileSn, connectorCode); - if (orderInfo == null) { - return; - } - if (Objects.isNull(orderInfo.getStartTime())) { - orderInfo.setStatus(OccupyOrderStatusEnum.OCCUPIED.getValue()); - orderInfo.setStartTime(DateUtils.getNowDate()); - // 修改数据库 - orderPileOccupyService.updateByPrimaryKey(orderInfo); - } - } - - /** - * 升锁成功时调用 - */ - private void raiseTheGroundLock(String pileSn, String connectorCode) { - orderPileOccupyService.stopOccupyPileOrder(pileSn, connectorCode); - } }