| | |
| | | package com.sandu.ximon.admin.manager.iot.amqp.processor; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.sandu.common.util.SpringContextHolder; |
| | | import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5C3CommonReportInnerFrame; |
| | |
| | | import com.sandu.ximon.admin.service.PoleService; |
| | | import com.sandu.ximon.admin.utils.LogUtils; |
| | | import com.sandu.ximon.admin.utils.RedisUtils; |
| | | import com.sandu.ximon.admin.vo.C3mOrderVO; |
| | | import com.sandu.ximon.dao.domain.C3mCharging; |
| | | import com.sandu.ximon.dao.domain.C3mOrder; |
| | | import com.sandu.ximon.dao.domain.Pole; |
| | | import com.sandu.ximon.dao.domain.PoleBinding; |
| | | import com.sandu.ximon.dao.enums.OrderStatus; |
| | | import com.sandu.ximon.dao.enums.OrderType; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @author ZZQ |
| | |
| | | LogUtils.error("{ 充电桩(" + completeRequestFrame.getDestinationAddress() + ")充电结束上报读取心跳包失败,请检查充电桩是否出现故障! }"); |
| | | return; |
| | | } |
| | | orderProcess(aPackage.getC3Mac()); |
| | | orderProcess(aPackage); |
| | | |
| | | } else if (C3ChargingEnum.CHARGE_STOP.getCode().equals(functionCode)) { |
| | | log.info("心跳响应——充电中断"); |
| | |
| | | /** |
| | | * 订单处理 |
| | | * |
| | | * @param c3Mac |
| | | * @param aPackage |
| | | */ |
| | | private void orderProcess(String c3Mac) { |
| | | private void orderProcess(A5C3HeartbeatReportInnerFrame.HeartBeatDataPackage aPackage) { |
| | | |
| | | String c3Mac = aPackage.getC3Mac(); |
| | | //结束充电 更改订单状态 |
| | | C3mOrder lastOrderByC3Mac = SpringContextHolder.getBean(C3mOrderService.class).getLastOrderByC3Mac(c3Mac); |
| | | if (lastOrderByC3Mac != null) { |
| | |
| | | lastOrderByC3Mac.setActualChargingCapacity(0.00); |
| | | //设置订单状态为充电结束 |
| | | lastOrderByC3Mac.setChargingStates(1); |
| | | //设置剩余金额 |
| | | lastOrderByC3Mac.setSurplusAmount(Double.parseDouble(aPackage.getRemainingAmount())); |
| | | SpringContextHolder.getBean(C3mOrderService.class).updateById(lastOrderByC3Mac); |
| | | } |
| | | } |