From be652e7453938c7537dbb73f3caff336e8325b8d Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 06 五月 2025 15:49:47 +0800
Subject: [PATCH] 政务云数据上传
---
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageUtil.java | 1014 ++++++++++++++++++++++++++++++-----------------------------
1 files changed, 515 insertions(+), 499 deletions(-)
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageUtil.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageUtil.java
index 780b998..aaab896 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageUtil.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageUtil.java
@@ -1,506 +1,522 @@
-package com.ruoyi.integration.rocket.produce;
-
-import com.alibaba.fastjson.JSONObject;
-import com.ruoyi.chargingPile.api.feignClient.AccountingStrategyDetailClient;
-import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient;
-import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
-import com.ruoyi.chargingPile.api.model.TAccountingStrategyDetail;
-import com.ruoyi.chargingPile.api.vo.UpdateChargingPileStatusVo;
-import com.ruoyi.integration.api.model.*;
-import com.ruoyi.integration.drainage.TCECPushUtil;
-import com.ruoyi.integration.iotda.constant.SendTagConstant;
-import com.ruoyi.integration.mongodb.service.*;
-import com.ruoyi.integration.rocket.model.*;
-import com.ruoyi.integration.rocket.util.EnhanceMessageHandler;
-import com.ruoyi.order.api.feignClient.ChargingOrderClient;
-import com.ruoyi.order.api.model.TChargingOrder;
-import com.ruoyi.order.api.query.UploadRealTimeMonitoringDataQuery;
-import com.ruoyi.order.api.vo.PlatformStartChargingReplyMessageVO;
-import com.ruoyi.order.api.vo.PlatformStopChargingReplyVO;
-import com.ruoyi.order.api.vo.SecurityDetectionVO;
-import com.ruoyi.order.api.vo.TransactionRecordMessageVO;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.rocketmq.spring.annotation.MessageModel;
-import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
-import org.apache.rocketmq.spring.core.RocketMQListener;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cloud.stream.annotation.StreamListener;
-import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.stereotype.Component;
-import org.springframework.util.StringUtils;
-
-import javax.annotation.Resource;
-import java.math.RoundingMode;
-import java.util.Objects;
-import java.util.Set;
-import java.util.concurrent.LinkedBlockingQueue;
-import java.util.concurrent.ThreadPoolExecutor;
-import java.util.concurrent.TimeUnit;
-
-
-@Slf4j
-@Component
-public class ChargingMessageUtil {
-
- @Autowired
- private AcquisitionBillingModeService acquisitionBillingModeService;
- @Autowired
- private BillingModeVerifyService billingModeVerifyService;
- @Autowired
- private BmsAbortService bmsAbortService;
- @Resource
- private ChargingOrderClient chargingOrderClient;
- @Autowired
- private BmsDemandAndChargerExportationService bmsDemandAndChargerExportationService;
- @Autowired
- private OnlineService onlineService;
- @Autowired
- private PingService pingService;
- @Autowired
- private EndChargeService endChargeService;
- @Autowired
- private ErrorMessageMessageService errorMessageMessageService;
- @Autowired
- private UploadRealTimeMonitoringDataService uploadRealTimeMonitoringDataService;
- @Resource
- private AccountingStrategyDetailClient accountingStrategyDetailClient;
- @Autowired
- private ChargingHandshakeService chargingHandshakeService;
- @Autowired
- private ParameterSettingService parameterSettingService;
- @Autowired
- private MotorAbortService motorAbortService;
- @Autowired
- private BmsInformationService bmsInformationService;
- @Autowired
- private ChargingPileStartsChargingService chargingPileStartsChargingService;
- @Autowired
- private PlatformStartChargingReplyService platformStartChargingReplyService;
- @Autowired
- private PlatformStopChargingReplyService platformStopChargingReplyService;
- @Autowired
- private TransactionRecordService transactionRecordService;
- @Autowired
- private UpdateBalanceReplyService updateBalanceReplyService;
- @Autowired
- private SynchronizeOfflineCardReplyService synchronizeOfflineCardReplyService;
- @Autowired
- private ClearOfflineCardReplyService clearOfflineCardReplyService;
- @Autowired
- private WorkingParameterSettingReplyService workingParameterSettingReplyService;
- @Autowired
- private TimingSettingService timingSettingService;
- @Autowired
- private SetupBillingModelReplyService setupBillingModelReplyService;
- @Autowired
- private GroundLockRealTimeDataService groundLockRealTimeDataService;
- @Autowired
- private ChargingPileReturnsGroundLockDataService chargingPileReturnsGroundLockDataService;
- @Autowired
- private PlatformRestartReplyService platformRestartReplyService;
- @Autowired
- private PlatformRemoteUpdateReplyService platformRemoteUpdateReplyService;
- @Autowired
- private QrCodeDeliveryReplyService qrCodeDeliveryReplyService;
- @Autowired
- private SecurityDetectionService securityDetectionService;
+//package com.ruoyi.integration.rocket.produce;
+//
+//import com.alibaba.fastjson.JSONObject;
+//import com.ruoyi.chargingPile.api.feignClient.AccountingStrategyDetailClient;
+//import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient;
+//import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
+//import com.ruoyi.chargingPile.api.model.TAccountingStrategyDetail;
+//import com.ruoyi.chargingPile.api.model.TChargingGun;
+//import com.ruoyi.chargingPile.api.vo.UpdateChargingPileStatusVo;
+//import com.ruoyi.integration.api.model.*;
+//import com.ruoyi.integration.drainage.TCECPushUtil;
+//import com.ruoyi.integration.iotda.constant.SendTagConstant;
+//import com.ruoyi.integration.mongodb.service.*;
+//import com.ruoyi.integration.rocket.model.*;
+//import com.ruoyi.order.api.feignClient.ChargingOrderClient;
+//import com.ruoyi.order.api.model.TChargingOrder;
+//import com.ruoyi.order.api.query.UploadRealTimeMonitoringDataQuery;
+//import com.ruoyi.order.api.vo.PlatformStartChargingReplyMessageVO;
+//import com.ruoyi.order.api.vo.PlatformStopChargingReplyVO;
+//import com.ruoyi.order.api.vo.SecurityDetectionVO;
+//import com.ruoyi.order.api.vo.TransactionRecordMessageVO;
+//import lombok.extern.slf4j.Slf4j;
+//import org.apache.rocketmq.client.producer.SendResult;
+//import org.springframework.beans.BeanUtils;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.data.redis.core.RedisTemplate;
+//import org.springframework.stereotype.Component;
+//import org.springframework.util.StringUtils;
+//
+//import javax.annotation.Resource;
+//import java.math.RoundingMode;
+//import java.util.Objects;
+//import java.util.Set;
+//import java.util.concurrent.LinkedBlockingQueue;
+//import java.util.concurrent.ThreadPoolExecutor;
+//import java.util.concurrent.TimeUnit;
+//
+//
+//@Slf4j
+//@Component
+//public class ChargingMessageUtil {
+//
+// @Autowired
+// private AcquisitionBillingModeService acquisitionBillingModeService;
+// @Autowired
+// private BillingModeVerifyService billingModeVerifyService;
+// @Autowired
+// private BmsAbortService bmsAbortService;
+// @Resource
+// private ChargingOrderClient chargingOrderClient;
+// @Autowired
+// private BmsDemandAndChargerExportationService bmsDemandAndChargerExportationService;
+// @Autowired
+// private OnlineService onlineService;
+// @Autowired
+// private PingService pingService;
+// @Autowired
+// private EndChargeService endChargeService;
+// @Autowired
+// private ErrorMessageMessageService errorMessageMessageService;
+// @Autowired
+// private UploadRealTimeMonitoringDataService uploadRealTimeMonitoringDataService;
+// @Resource
+// private AccountingStrategyDetailClient accountingStrategyDetailClient;
+// @Autowired
+// private ChargingHandshakeService chargingHandshakeService;
+// @Autowired
+// private ParameterSettingService parameterSettingService;
+// @Autowired
+// private MotorAbortService motorAbortService;
+// @Autowired
+// private BmsInformationService bmsInformationService;
+// @Autowired
+// private ChargingPileStartsChargingService chargingPileStartsChargingService;
+// @Autowired
+// private PlatformStartChargingReplyService platformStartChargingReplyService;
+// @Autowired
+// private PlatformStopChargingReplyService platformStopChargingReplyService;
+// @Autowired
+// private TransactionRecordService transactionRecordService;
+// @Autowired
+// private UpdateBalanceReplyService updateBalanceReplyService;
+// @Autowired
+// private SynchronizeOfflineCardReplyService synchronizeOfflineCardReplyService;
+// @Autowired
+// private ClearOfflineCardReplyService clearOfflineCardReplyService;
+// @Autowired
+// private WorkingParameterSettingReplyService workingParameterSettingReplyService;
+// @Autowired
+// private TimingSettingService timingSettingService;
+// @Autowired
+// private SetupBillingModelReplyService setupBillingModelReplyService;
+// @Autowired
+// private GroundLockRealTimeDataService groundLockRealTimeDataService;
+// @Autowired
+// private ChargingPileReturnsGroundLockDataService chargingPileReturnsGroundLockDataService;
+// @Autowired
+// private PlatformRestartReplyService platformRestartReplyService;
+// @Autowired
+// private PlatformRemoteUpdateReplyService platformRemoteUpdateReplyService;
+// @Autowired
+// private QrCodeDeliveryReplyService qrCodeDeliveryReplyService;
+// @Autowired
+// private SecurityDetectionService securityDetectionService;
// @Autowired
// private TCECPushUtil tcecPushUtil;
-
- @Resource
- private ChargingPileClient chargingPileClient;
- @Resource
- private ChargingGunClient chargingGunClient;
-
- @Resource
- private RedisTemplate redisTemplate;
-
-
-
-
-
-
- public void handleMessage(com.ruoyi.integration.rocket.model.ChargingMessage message){
- log.info("rocket收到的消息内容:{}",message);
- String serviceId = message.getServiceId();
- if(!StringUtils.hasLength(serviceId)){
- return;
- }
- log.info("rocket收到的消息内容:{} {}", serviceId,message);
- switch (serviceId){
- case SendTagConstant.ONLINE:
- OnlineMessage onlineMessage = message.getOnlineMessage();
- log.info("充电桩登录认证业务消息处理:{}",onlineMessage);
- // 持久化消息
- Online online = new Online();
- BeanUtils.copyProperties(onlineMessage,online);
- onlineService.create(online);
- break;
- case SendTagConstant.PING:
- PingMessage pingMessage = message.getPingMessage();
- log.info("充电桩心跳包-业务消息处理:{}",pingMessage);
- // 持久化消息
- Ping ping = new Ping();
- BeanUtils.copyProperties(pingMessage,ping);
- pingService.save(ping);
- //存储缓存中,5分钟有效
- redisTemplate.opsForValue().set("ping:" + ping.getCharging_pile_code() + ping.getCharging_gun_code(), ping, 5, TimeUnit.MINUTES);
-
- UpdateChargingPileStatusVo vo1 = new UpdateChargingPileStatusVo();
- vo1.setGun_code(pingMessage.getCharging_gun_code());
- vo1.setPile_code(pingMessage.getCharging_pile_code());
- vo1.setStatus(pingMessage.getCharging_gun_status());
- chargingPileClient.updateChargingPileStatus(vo1);
-
-// ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>());
-// threadPoolExecutor.execute(new Runnable() {
+//
+// @Resource
+// private ChargingPileClient chargingPileClient;
+// @Resource
+// private ChargingGunClient chargingGunClient;
+//
+// @Resource
+// private RedisTemplate redisTemplate;
+// @Autowired
+// private EnhanceProduce enhanceProduce;
+//
+//
+//
+//
+//
+// public void handleMessage(com.ruoyi.integration.rocket.model.ChargingMessage message){
+// log.info("rocket收到的消息内容:{}",message);
+// String serviceId = message.getServiceId();
+// if(!StringUtils.hasLength(serviceId)){
+// return;
+// }
+// log.info("rocket收到的消息内容:{} {}", serviceId,message);
+// switch (serviceId){
+// case SendTagConstant.ONLINE:
+// OnlineMessage onlineMessage = message.getOnlineMessage();
+// log.info("充电桩登录认证业务消息处理:{}",onlineMessage);
+// // 持久化消息
+// Online online = new Online();
+// BeanUtils.copyProperties(onlineMessage,online);
+// onlineService.create(online);
+// break;
+// case SendTagConstant.PING:
+// PingMessage pingMessage = message.getPingMessage();
+// log.info("充电桩心跳包-业务消息处理:{}",pingMessage);
+// // 持久化消息
+// Ping ping = new Ping();
+// BeanUtils.copyProperties(pingMessage,ping);
+// pingService.save(ping);
+// //存储缓存中,5分钟有效
+// redisTemplate.opsForValue().set("ping:" + ping.getCharging_pile_code() + ping.getCharging_gun_code(), ping, 5, TimeUnit.MINUTES);
+//
+// UpdateChargingPileStatusVo vo1 = new UpdateChargingPileStatusVo();
+// vo1.setGun_code(pingMessage.getCharging_gun_code());
+// vo1.setPile_code(pingMessage.getCharging_pile_code());
+// vo1.setStatus(pingMessage.getCharging_gun_status());
+// chargingPileClient.updateChargingPileStatus(vo1);
+// // 监管平台推送充电设备状态
+// SendResult sendResult;
+// String gunCode = pingMessage.getCharging_pile_code() + pingMessage.getCharging_gun_code();
+// ChargingMessage chargingMessage = new ChargingMessage();
+// chargingMessage.setServiceId(SendTagConstant.GUN_STATUS);
+// GunStatusMessage gunStatusMessage = new GunStatusMessage();
+// gunStatusMessage.setFullNumber(gunCode);
+// chargingMessage.setGunStatusMessage(gunStatusMessage);
+// sendResult = enhanceProduce.gunStatusMessage(chargingMessage);
+//
+// break;
+// case SendTagConstant.END_CHARGE:
+// EndChargeMessage endChargeMessage = message.getEndChargeMessage();
+// log.info("充电结束-业务消息处理:{}",endChargeMessage);
+// // 持久化消息
+// EndCharge endCharge = new EndCharge();
+// BeanUtils.copyProperties(endChargeMessage,endCharge);
+// endChargeService.create(endCharge);
+// // 业务处理
+// chargingOrderClient.endCharge(endCharge.getTransaction_serial_number());
+// // 订单id
+// String transactionSerialNumber = endCharge.getTransaction_serial_number();
+// ChargingOrderMessage chargingOrderMessage = new ChargingOrderMessage();
+// chargingOrderMessage.setOrderNumber(transactionSerialNumber);
+// // 推送充电订单信息
+// ChargingMessage chargingMessage1 = new ChargingMessage();
+// chargingMessage1.setServiceId(SendTagConstant.ORDER_INFO);
+// chargingMessage1.setOrderMessage(chargingOrderMessage);
+// enhanceProduce.orderInfoMessage(chargingMessage1);
+// // 推送充电订单状态
+// ChargingMessage chargingMessage2 = new ChargingMessage();
+// chargingMessage2.setServiceId(SendTagConstant.ORDER_STATUS);
+// chargingMessage2.setOrderMessage(chargingOrderMessage);
+// enhanceProduce.orderStatusMessage(chargingMessage2);
+//// ThreadPoolExecutor threadPoolExecutor1 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>());
+//// threadPoolExecutor1.execute(new Runnable() {
+//// @Override
+//// public void run() {
+//// try {
+//// TChargingOrder chargingOrder = chargingOrderClient.getOrderByCode(endCharge.getTransaction_serial_number()).getData();
+//// tcecPushUtil.pushSuperviseNotificationChargeOrderInfo(chargingOrder);
+//// tcecPushUtil.pushSuperviseNotificationEquipChargeStatus(chargingOrder);
+//// }catch (Exception e){
+//// e.printStackTrace();
+//// System.out.println("充电结束推送监管平台失败:"+e.getMessage());
+//// }
+//// }
+//// });
+// break;
+// case SendTagConstant.ERROR_MESSAGE:
+// ErrorMessageMessage errorMessageMessage1 = message.getErrorMessageMessage();
+// log.info("错误报文-业务消息处理:{}",errorMessageMessage1);
+// // 持久化消息
+// ErrorMessageMessage errorMessageMessage = new ErrorMessageMessage();
+// BeanUtils.copyProperties(errorMessageMessage1,errorMessageMessage);
+// errorMessageMessageService.create(errorMessageMessage);
+// break;
+// case SendTagConstant.BILLING_MODE_VERIFY:
+// BillingModeVerifyMessage billingModeVerifyMessage = message.getBillingModeVerifyMessage();
+// log.info("计费模型验证请求-业务消息处理:{}",billingModeVerifyMessage);
+// // 持久化消息
+// BillingModeVerify billingModeVerify = new BillingModeVerify();
+// BeanUtils.copyProperties(billingModeVerifyMessage,billingModeVerify);
+// billingModeVerifyService.create(billingModeVerify);
+// break;
+// case SendTagConstant.ACQUISITION_BILLING_MODE:
+// AcquisitionBillingModeMessage acquisitionBillingModeMessage = message.getAcquisitionBillingModeMessage();
+// log.info("充电桩计费模型请求-业务消息处理:{}",acquisitionBillingModeMessage);
+// // 持久化消息
+// AcquisitionBillingMode acquisitionBillingMode = new AcquisitionBillingMode();
+// BeanUtils.copyProperties(acquisitionBillingModeMessage,acquisitionBillingMode);
+// acquisitionBillingModeService.create(acquisitionBillingMode);
+// break;
+// case SendTagConstant.UPLOAD_REAL_TIME_MONITORING_DATA:
+// try {
+// UploadRealTimeMonitoringDataMessage uploadRealTimeMonitoringDataMessage = message.getUploadRealTimeMonitoringDataMessage();
+// log.info("上传实时监测数据-业务消息处理:{}",uploadRealTimeMonitoringDataMessage);
+// // 持久化消息
+// UploadRealTimeMonitoringData uploadRealTimeMonitoringData = new UploadRealTimeMonitoringData();
+// BeanUtils.copyProperties(uploadRealTimeMonitoringDataMessage,uploadRealTimeMonitoringData);
+// // 查询mogondb上一条数据
+// UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataService.getLastDataById(uploadRealTimeMonitoringDataMessage.getTransaction_serial_number());
+// // 查询订单
+// TChargingOrder chargingOrder = chargingOrderClient.getOrderByCode(uploadRealTimeMonitoringDataMessage.getTransaction_serial_number()).getData();
+// // 查询当前时间段的计费策略
+// TAccountingStrategyDetail accountingStrategyDetail = accountingStrategyDetailClient.getDetailBySiteId(chargingOrder.getSiteId()).getData();
+// uploadRealTimeMonitoringData.setElectrovalence_all(accountingStrategyDetail.getElectrovalence());
+// uploadRealTimeMonitoringData.setService_charge(accountingStrategyDetail.getServiceCharge());
+// if (Objects.nonNull(data)) {
+// uploadRealTimeMonitoringDataService.updateById(data.getId());
+// uploadRealTimeMonitoringData.setPeriod_electric_price(uploadRealTimeMonitoringDataMessage.getPaid_amount().subtract(data.getPaid_amount()));
+// uploadRealTimeMonitoringData.setPeriod_charging_degree(uploadRealTimeMonitoringDataMessage.getCharging_degree().subtract(data.getCharging_degree()));
+// uploadRealTimeMonitoringData.setPeriod_service_price(uploadRealTimeMonitoringDataMessage.getCharging_degree().multiply(accountingStrategyDetail.getServiceCharge()).setScale(4, RoundingMode.HALF_UP));
+// }else {
+// log.info("首次上传实时监测数据");
+// uploadRealTimeMonitoringData.setPeriod_electric_price(uploadRealTimeMonitoringDataMessage.getPaid_amount());
+// uploadRealTimeMonitoringData.setPeriod_charging_degree(uploadRealTimeMonitoringDataMessage.getCharging_degree());
+// uploadRealTimeMonitoringData.setPeriod_service_price(uploadRealTimeMonitoringDataMessage.getCharging_degree().multiply(accountingStrategyDetail.getServiceCharge()).setScale(4, RoundingMode.HALF_UP));
+// }
+// uploadRealTimeMonitoringData.setOrderType(chargingOrder.getOrderType());
+// uploadRealTimeMonitoringData.setSiteId(chargingOrder.getSiteId());
+// uploadRealTimeMonitoringData.setStatus(chargingOrder.getStatus());
+//// uploadRealTimeMonitoringData.setStartTime(chargingOrder.getStartTime());
+//// uploadRealTimeMonitoringData.setEndTime(chargingOrder.getEndTime());
+// int i = uploadRealTimeMonitoringDataService.create(uploadRealTimeMonitoringData);
+// if(i == 0){
+// log.error("数据存储mongo失败");
+// }
+//
+// // 业务处理
+// UploadRealTimeMonitoringDataQuery query = new UploadRealTimeMonitoringDataQuery();
+// BeanUtils.copyProperties(uploadRealTimeMonitoringData, query);
+// chargingOrderClient.chargeMonitoring(query);
+// // 订单id
+// ChargingOrderMessage chargingOrderMessage3 = new ChargingOrderMessage();
+// chargingOrderMessage3.setOrderNumber(chargingOrder.getCode());
+// // 推送充电订单信息
+// ChargingMessage chargingMessage4 = new ChargingMessage();
+// chargingMessage4.setServiceId(SendTagConstant.ORDER_STATUS);
+// chargingMessage4.setOrderMessage(chargingOrderMessage3);
+// enhanceProduce.orderInfoMessage(chargingMessage4);
+//// ThreadPoolExecutor threadPoolExecutor2 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>());
+//// threadPoolExecutor2.execute(new Runnable() {
+//// @Override
+//// public void run() {
+//// chargingOrder.setEndSoc(uploadRealTimeMonitoringDataMessage.getSoc()+"");
+////
+//// tcecPushUtil.pushSuperviseNotificationEquipChargeStatus(chargingOrder);
+//// }
+//// });
+// } catch (Exception e) {
+// e.printStackTrace();
+// }
+// break;
+// case SendTagConstant.CHARGING_HANDSHAKE:
+// ChargingHandshakeMessage chargingHandshakeMessage = message.getChargingHandshakeMessage();
+// log.info("充电握手-业务消息处理:{}",chargingHandshakeMessage);
+// // 持久化消息
+// ChargingHandshake chargingHandshake = new ChargingHandshake();
+// BeanUtils.copyProperties(chargingHandshakeMessage,chargingHandshake);
+// chargingHandshakeService.create(chargingHandshake);
+// break;
+// case SendTagConstant.PARAMETER_SETTING:
+// ParameterSettingMessage parameterSettingMessage = message.getParameterSettingMessage();
+// log.info("业务消息处理:{}",parameterSettingMessage);
+// // 持久化消息
+// ParameterSetting parameterSetting = new ParameterSetting();
+// BeanUtils.copyProperties(parameterSettingMessage,parameterSetting);
+// parameterSettingService.create(parameterSetting);
+// break;
+// case SendTagConstant.BMS_ABORT:
+// BmsAbortMessage bmsAbortMessage = message.getBmsAbortMessage();
+// log.info("充电阶段BMS中止-业务消息处理:{}",bmsAbortMessage);
+// // 持久化消息
+// BmsAbort bmsAbort = new BmsAbort();
+// BeanUtils.copyProperties(bmsAbortMessage,bmsAbort);
+// bmsAbortService.create(bmsAbort);
+//
+// ThreadPoolExecutor threadPoolExecutor3 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>());
+// threadPoolExecutor3.execute(new Runnable() {
// @Override
// public void run() {
-//
-// try {
-//// tcecPushUtil.pushSuperviseNotificationStationStatus(chargingGunClient.getChargingGunByFullNumber(pingMessage.getCharging_pile_code()+pingMessage.getCharging_gun_code()).getData());
-// }catch (Exception e){
-// e.printStackTrace();
-// System.out.println("设备状态推送监管平台失败:"+e.getMessage());
-// }
+// // 业务处理
+// chargingOrderClient.excelEndCharge(bmsAbort.getTransaction_serial_number());
// }
// });
- break;
- case SendTagConstant.END_CHARGE:
- EndChargeMessage endChargeMessage = message.getEndChargeMessage();
- log.info("充电结束-业务消息处理:{}",endChargeMessage);
- // 持久化消息
- EndCharge endCharge = new EndCharge();
- BeanUtils.copyProperties(endChargeMessage,endCharge);
- endChargeService.create(endCharge);
- // 业务处理
- chargingOrderClient.endCharge(endCharge.getTransaction_serial_number());
-// ThreadPoolExecutor threadPoolExecutor1 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>());
-// threadPoolExecutor1.execute(new Runnable() {
-// @Override
-// public void run() {
-// try {
-// TChargingOrder chargingOrder = chargingOrderClient.getOrderByCode(endCharge.getTransaction_serial_number()).getData();
-// tcecPushUtil.pushSuperviseNotificationChargeOrderInfo(chargingOrder);
-// tcecPushUtil.pushSuperviseNotificationEquipChargeStatus(chargingOrder);
-// }catch (Exception e){
-// e.printStackTrace();
-// System.out.println("充电结束推送监管平台失败:"+e.getMessage());
-// }
-// }
-// });
- break;
- case SendTagConstant.ERROR_MESSAGE:
- ErrorMessageMessage errorMessageMessage1 = message.getErrorMessageMessage();
- log.info("错误报文-业务消息处理:{}",errorMessageMessage1);
- // 持久化消息
- ErrorMessageMessage errorMessageMessage = new ErrorMessageMessage();
- BeanUtils.copyProperties(errorMessageMessage1,errorMessageMessage);
- errorMessageMessageService.create(errorMessageMessage);
- break;
- case SendTagConstant.BILLING_MODE_VERIFY:
- BillingModeVerifyMessage billingModeVerifyMessage = message.getBillingModeVerifyMessage();
- log.info("计费模型验证请求-业务消息处理:{}",billingModeVerifyMessage);
- // 持久化消息
- BillingModeVerify billingModeVerify = new BillingModeVerify();
- BeanUtils.copyProperties(billingModeVerifyMessage,billingModeVerify);
- billingModeVerifyService.create(billingModeVerify);
- break;
- case SendTagConstant.ACQUISITION_BILLING_MODE:
- AcquisitionBillingModeMessage acquisitionBillingModeMessage = message.getAcquisitionBillingModeMessage();
- log.info("充电桩计费模型请求-业务消息处理:{}",acquisitionBillingModeMessage);
- // 持久化消息
- AcquisitionBillingMode acquisitionBillingMode = new AcquisitionBillingMode();
- BeanUtils.copyProperties(acquisitionBillingModeMessage,acquisitionBillingMode);
- acquisitionBillingModeService.create(acquisitionBillingMode);
- break;
- case SendTagConstant.UPLOAD_REAL_TIME_MONITORING_DATA:
- try {
- UploadRealTimeMonitoringDataMessage uploadRealTimeMonitoringDataMessage = message.getUploadRealTimeMonitoringDataMessage();
- log.info("上传实时监测数据-业务消息处理:{}",uploadRealTimeMonitoringDataMessage);
- // 持久化消息
- UploadRealTimeMonitoringData uploadRealTimeMonitoringData = new UploadRealTimeMonitoringData();
- BeanUtils.copyProperties(uploadRealTimeMonitoringDataMessage,uploadRealTimeMonitoringData);
- // 查询mogondb上一条数据
- UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataService.getLastDataById(uploadRealTimeMonitoringDataMessage.getTransaction_serial_number());
- // 查询订单
- TChargingOrder chargingOrder = chargingOrderClient.getOrderByCode(uploadRealTimeMonitoringDataMessage.getTransaction_serial_number()).getData();
- // 查询当前时间段的计费策略
- TAccountingStrategyDetail accountingStrategyDetail = accountingStrategyDetailClient.getDetailBySiteId(chargingOrder.getSiteId()).getData();
- uploadRealTimeMonitoringData.setElectrovalence_all(accountingStrategyDetail.getElectrovalence());
- uploadRealTimeMonitoringData.setService_charge(accountingStrategyDetail.getServiceCharge());
- if (Objects.nonNull(data)) {
- uploadRealTimeMonitoringDataService.updateById(data.getId());
- uploadRealTimeMonitoringData.setPeriod_electric_price(uploadRealTimeMonitoringDataMessage.getPaid_amount().subtract(data.getPaid_amount()));
- uploadRealTimeMonitoringData.setPeriod_charging_degree(uploadRealTimeMonitoringDataMessage.getCharging_degree().subtract(data.getCharging_degree()));
- uploadRealTimeMonitoringData.setPeriod_service_price(uploadRealTimeMonitoringDataMessage.getCharging_degree().multiply(accountingStrategyDetail.getServiceCharge()).setScale(4, RoundingMode.HALF_UP));
- }else {
- log.info("首次上传实时监测数据");
- uploadRealTimeMonitoringData.setPeriod_electric_price(uploadRealTimeMonitoringDataMessage.getPaid_amount());
- uploadRealTimeMonitoringData.setPeriod_charging_degree(uploadRealTimeMonitoringDataMessage.getCharging_degree());
- uploadRealTimeMonitoringData.setPeriod_service_price(uploadRealTimeMonitoringDataMessage.getCharging_degree().multiply(accountingStrategyDetail.getServiceCharge()).setScale(4, RoundingMode.HALF_UP));
- }
- uploadRealTimeMonitoringData.setOrderType(chargingOrder.getOrderType());
- uploadRealTimeMonitoringData.setSiteId(chargingOrder.getSiteId());
- uploadRealTimeMonitoringData.setStatus(chargingOrder.getStatus());
-// uploadRealTimeMonitoringData.setStartTime(chargingOrder.getStartTime());
-// uploadRealTimeMonitoringData.setEndTime(chargingOrder.getEndTime());
- int i = uploadRealTimeMonitoringDataService.create(uploadRealTimeMonitoringData);
- if(i == 0){
- log.error("数据存储mongo失败");
- }
-
- // 业务处理
- UploadRealTimeMonitoringDataQuery query = new UploadRealTimeMonitoringDataQuery();
- BeanUtils.copyProperties(uploadRealTimeMonitoringData, query);
- chargingOrderClient.chargeMonitoring(query);
-// ThreadPoolExecutor threadPoolExecutor2 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>());
-// threadPoolExecutor2.execute(new Runnable() {
-// @Override
-// public void run() {
-// chargingOrder.setEndSoc(uploadRealTimeMonitoringDataMessage.getSoc()+"");
+// break;
+// case SendTagConstant.MOTOR_ABORT:
+// MotorAbortMessage motorAbortMessage = message.getMotorAbortMessage();
+// log.info("充电阶段充电机中止-业务消息处理:{}",motorAbortMessage);
+// // 持久化消息
+// MotorAbort motorAbort = new MotorAbort();
+// BeanUtils.copyProperties(motorAbortMessage,motorAbort);
+// motorAbortService.create(motorAbort);
+// // 业务处理
+// chargingOrderClient.excelEndCharge(motorAbort.getTransaction_serial_number());
+// break;
+// case SendTagConstant.BMS_DEMAND_AND_CHARGER_EXPORTATION:
+// BmsDemandAndChargerExportationMessage bmsDemandAndChargerExportationMessage = message.getBmsDemandAndChargerExportationMessage();
+// log.info("充电过程BMS需求、充电机输出-业务消息处理:{}",bmsDemandAndChargerExportationMessage);
+// // 持久化消息
+// BmsDemandAndChargerExportation bmsDemandAndChargerExportation = new BmsDemandAndChargerExportation();
+// BeanUtils.copyProperties(bmsDemandAndChargerExportationMessage,bmsDemandAndChargerExportation);
+// bmsDemandAndChargerExportationService.create(bmsDemandAndChargerExportation);
//
-// tcecPushUtil.pushSuperviseNotificationEquipChargeStatus(chargingOrder);
-// }
-// });
- } catch (Exception e) {
- e.printStackTrace();
- }
- break;
- case SendTagConstant.CHARGING_HANDSHAKE:
- ChargingHandshakeMessage chargingHandshakeMessage = message.getChargingHandshakeMessage();
- log.info("充电握手-业务消息处理:{}",chargingHandshakeMessage);
- // 持久化消息
- ChargingHandshake chargingHandshake = new ChargingHandshake();
- BeanUtils.copyProperties(chargingHandshakeMessage,chargingHandshake);
- chargingHandshakeService.create(chargingHandshake);
- break;
- case SendTagConstant.PARAMETER_SETTING:
- ParameterSettingMessage parameterSettingMessage = message.getParameterSettingMessage();
- log.info("业务消息处理:{}",parameterSettingMessage);
- // 持久化消息
- ParameterSetting parameterSetting = new ParameterSetting();
- BeanUtils.copyProperties(parameterSettingMessage,parameterSetting);
- parameterSettingService.create(parameterSetting);
- break;
- case SendTagConstant.BMS_ABORT:
- BmsAbortMessage bmsAbortMessage = message.getBmsAbortMessage();
- log.info("充电阶段BMS中止-业务消息处理:{}",bmsAbortMessage);
- // 持久化消息
- BmsAbort bmsAbort = new BmsAbort();
- BeanUtils.copyProperties(bmsAbortMessage,bmsAbort);
- bmsAbortService.create(bmsAbort);
-
- ThreadPoolExecutor threadPoolExecutor3 = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>());
- threadPoolExecutor3.execute(new Runnable() {
- @Override
- public void run() {
- // 业务处理
- chargingOrderClient.excelEndCharge(bmsAbort.getTransaction_serial_number());
- }
- });
- break;
- case SendTagConstant.MOTOR_ABORT:
- MotorAbortMessage motorAbortMessage = message.getMotorAbortMessage();
- log.info("充电阶段充电机中止-业务消息处理:{}",motorAbortMessage);
- // 持久化消息
- MotorAbort motorAbort = new MotorAbort();
- BeanUtils.copyProperties(motorAbortMessage,motorAbort);
- motorAbortService.create(motorAbort);
- // 业务处理
- chargingOrderClient.excelEndCharge(motorAbort.getTransaction_serial_number());
- break;
- case SendTagConstant.BMS_DEMAND_AND_CHARGER_EXPORTATION:
- BmsDemandAndChargerExportationMessage bmsDemandAndChargerExportationMessage = message.getBmsDemandAndChargerExportationMessage();
- log.info("充电过程BMS需求、充电机输出-业务消息处理:{}",bmsDemandAndChargerExportationMessage);
- // 持久化消息
- BmsDemandAndChargerExportation bmsDemandAndChargerExportation = new BmsDemandAndChargerExportation();
- BeanUtils.copyProperties(bmsDemandAndChargerExportationMessage,bmsDemandAndChargerExportation);
- bmsDemandAndChargerExportationService.create(bmsDemandAndChargerExportation);
-
- // 业务处理
- TChargingOrder chargingOrderBms = chargingOrderClient.getOrderByCode(bmsDemandAndChargerExportationMessage.getTransaction_serial_number()).getData();
- if(Objects.nonNull(chargingOrderBms)){
- chargingOrderBms.setNeedElec(bmsDemandAndChargerExportationMessage.getBms_current_requirements());
- chargingOrderClient.updateChargingOrder(chargingOrderBms);
- }
- break;
- case SendTagConstant.BMS_INFORMATION:
- BmsInformationMessage bmsInformationMessage = message.getBmsInformationMessage();
- log.info("充电过程BMS信息-业务消息处理:{}",bmsInformationMessage);
- // 持久化消息
- BmsInformation bmsInformation = new BmsInformation();
- BeanUtils.copyProperties(bmsInformationMessage,bmsInformation);
- bmsInformationService.create(bmsInformation);
- break;
- case SendTagConstant.CHARGING_PILE_STARTS_CHARGING:
- ChargingPileStartsChargingMessage chargingPileStartsChargingMessage = message.getChargingPileStartsChargingMessage();
- log.info("充电桩主动申请启动充电-业务消息处理:{}",chargingPileStartsChargingMessage);
- // 持久化消息
- ChargingPileStartsCharging chargingPileStartsCharging = new ChargingPileStartsCharging();
- BeanUtils.copyProperties(chargingPileStartsChargingMessage,chargingPileStartsCharging);
- chargingPileStartsChargingService.create(chargingPileStartsCharging);
- break;
- case SendTagConstant.PLATFORM_START_CHARGING_REPLY:
- PlatformStartChargingReplyMessage platformStartChargingReplyMessage = message.getPlatformStartChargingReplyMessage();
- log.info("远程启机命令回复-业务消息处理:{}",platformStartChargingReplyMessage);
- // 持久化消息
- PlatformStartChargingReply platformStartChargingReply = new PlatformStartChargingReply();
- BeanUtils.copyProperties(platformStartChargingReplyMessage,platformStartChargingReply);
- platformStartChargingReplyService.create(platformStartChargingReply);
-
- // 业务处理
- PlatformStartChargingReplyMessageVO message1 = new PlatformStartChargingReplyMessageVO();
- BeanUtils.copyProperties(platformStartChargingReplyMessage, message1);
- chargingOrderClient.startChargeSuccessfully(message1);
- break;
- case SendTagConstant.PLATFORM_STOP_CHARGING_REPLY:
- PlatformStopChargingReplyMessage platformStopChargingReplyMessage = message.getPlatformStopChargingReplyMessage();
- log.info("远程停机命令回复-业务消息处理:{}",platformStopChargingReplyMessage);
- // 持久化消息
- PlatformStopChargingReply platformStopChargingReply = new PlatformStopChargingReply();
- BeanUtils.copyProperties(platformStopChargingReplyMessage,platformStopChargingReply);
- platformStopChargingReplyService.create(platformStopChargingReply);
-
- PlatformStopChargingReplyVO platformStopChargingReply1 = new PlatformStopChargingReplyVO();
- BeanUtils.copyProperties(platformStopChargingReply, platformStopChargingReply1);
- chargingOrderClient.terminateSuccessfulResponse(platformStopChargingReply1);
- break;
- case SendTagConstant.TRANSACTION_RECORD:
- TransactionRecordMessage transactionRecordMessage = message.getTransactionRecordMessage();
- log.info("交易记录-业务消息处理:{}",transactionRecordMessage);
- transactionRecordMessage.setResult(JSONObject.toJSONString(message));
- // 持久化消息
- TransactionRecord transactionRecord = new TransactionRecord();
- BeanUtils.copyProperties(transactionRecordMessage,transactionRecord);
- transactionRecordService.create(transactionRecord);
-
- // 业务处理
- TChargingOrder chargingOrderRecord = chargingOrderClient.getOrderByCode(transactionRecordMessage.getTransaction_serial_number()).getData();
- if(Objects.nonNull(chargingOrderRecord)){
- chargingOrderRecord.setTotalElectricity(transactionRecordMessage.getTotal_electricity());
- chargingOrderClient.updateChargingOrder(chargingOrderRecord);
- }
- //计算费用
- TransactionRecordMessageVO vo = new TransactionRecordMessageVO();
- BeanUtils.copyProperties(transactionRecordMessage,vo);
- int code = chargingOrderClient.endChargeBillingCharge(vo).getCode();
- if(200 != code){
- //失败后添加到队列中继续处理数据
- redisTemplate.opsForSet().add(SendTagConstant.TRANSACTION_RECORD, transactionRecordMessage.getTransaction_serial_number());
- }
-
-
- // 添加实时上传记录结束记录
- // 查询mogondb上一条数据
- UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataService.getLastDataById(transactionRecordMessage.getTransaction_serial_number());
- if(Objects.nonNull(data) && data.getStatus() != 5){
- UploadRealTimeMonitoringData uploadRealTimeMonitoringData = new UploadRealTimeMonitoringData();
- BeanUtils.copyProperties(data,uploadRealTimeMonitoringData);
- uploadRealTimeMonitoringData.setStatus(5);
- uploadRealTimeMonitoringDataService.create(uploadRealTimeMonitoringData);
- }
- break;
- case SendTagConstant.UPDATE_BALANCE_REPLY:
- UpdateBalanceReplyMessage updateBalanceReplyMessage = message.getUpdateBalanceReplyMessage();
- log.info("余额更新应答-业务消息处理:{}",updateBalanceReplyMessage);
- // 持久化消息
- UpdateBalanceReply updateBalanceReply = new UpdateBalanceReply();
- BeanUtils.copyProperties(updateBalanceReplyMessage,updateBalanceReply);
- updateBalanceReplyService.create(updateBalanceReply);
- break;
- case SendTagConstant.SYNCHRONIZE_OFFLINE_CARD_REPLY:
- SynchronizeOfflineCardReplyMessage synchronizeOfflineCardReplyMessage = message.getSynchronizeOfflineCardReplyMessage();
- log.info("卡数据同步应答-业务消息处理:{}",synchronizeOfflineCardReplyMessage);
- // 持久化消息
- SynchronizeOfflineCardReply synchronizeOfflineCardReply = new SynchronizeOfflineCardReply();
- BeanUtils.copyProperties(synchronizeOfflineCardReplyMessage,synchronizeOfflineCardReply);
- synchronizeOfflineCardReplyService.create(synchronizeOfflineCardReply);
- break;
- case SendTagConstant.CLEAR_OFFLINE_CARD_REPLY:
- ClearOfflineCardReplyMessage clearOfflineCardReplyMessage = message.getClearOfflineCardReplyMessage();
- log.info("离线卡数据清除应答-业务消息处理:{}",clearOfflineCardReplyMessage);
- // 持久化消息
- ClearOfflineCardReply clearOfflineCardReply = new ClearOfflineCardReply();
- BeanUtils.copyProperties(clearOfflineCardReplyMessage,clearOfflineCardReply);
- clearOfflineCardReplyService.create(clearOfflineCardReply);
- break;
- case SendTagConstant.WORKING_PARAMETER_SETTING_REPLY:
- WorkingParameterSettingReplyMessage workingParameterSettingReplyMessage = message.getWorkingParameterSettingReplyMessage();
- log.info("充电桩工作参数设置应答-业务消息处理:{}",workingParameterSettingReplyMessage);
- // 持久化消息
- WorkingParameterSettingReply workingParameterSettingReply = new WorkingParameterSettingReply();
- BeanUtils.copyProperties(workingParameterSettingReplyMessage,workingParameterSettingReply);
- workingParameterSettingReplyService.create(workingParameterSettingReply);
- break;
- case SendTagConstant.TIMING_SETTING:
- TimingSettingMessage timingSettingMessage = message.getTimingSettingMessage();
- log.info("对时设置-业务消息处理:{}",timingSettingMessage);
- // 持久化消息
- TimingSetting timingSetting = new TimingSetting();
- BeanUtils.copyProperties(timingSettingMessage,timingSetting);
- timingSettingService.create(timingSetting);
- break;
- case SendTagConstant.SETUP_BILLING_MODEL_REPLY:
- SetupBillingModelReplyMessage setupBillingModelReplyMessage = message.getSetupBillingModelReplyMessage();
- log.info("计费模型应答-业务消息处理:{}",setupBillingModelReplyMessage);
- // 持久化消息
- SetupBillingModelReply setupBillingModelReply = new SetupBillingModelReply();
- BeanUtils.copyProperties(setupBillingModelReplyMessage,setupBillingModelReply);
- setupBillingModelReplyService.create(setupBillingModelReply);
- break;
- case SendTagConstant.GROUND_LOCK_REAL_TIME_DATA:
- GroundLockRealTimeDataMessage groundLockRealTimeDataMessage = message.getGroundLockRealTimeDataMessage();
- log.info("地锁数据上送(充电桩上送)-业务消息处理:{}",groundLockRealTimeDataMessage);
- // 持久化消息
- GroundLockRealTimeData groundLockRealTimeData = new GroundLockRealTimeData();
- BeanUtils.copyProperties(groundLockRealTimeDataMessage,groundLockRealTimeData);
- groundLockRealTimeDataService.create(groundLockRealTimeData);
- break;
- case SendTagConstant.CHARGING_PILE_RETURNS_GROUND_LOCK_DATA:
- ChargingPileReturnsGroundLockDataMessage chargingPileReturnsGroundLockDataMessage = message.getChargingPileReturnsGroundLockDataMessage();
- log.info("充电桩返回数据(上行)-业务消息处理:{}",chargingPileReturnsGroundLockDataMessage);
- // 持久化消息
- ChargingPileReturnsGroundLockData chargingPileReturnsGroundLockData = new ChargingPileReturnsGroundLockData();
- BeanUtils.copyProperties(chargingPileReturnsGroundLockDataMessage,chargingPileReturnsGroundLockData);
- chargingPileReturnsGroundLockDataService.create(chargingPileReturnsGroundLockData);
- break;
- case SendTagConstant.PLATFORM_RESTART_REPLY:
- PlatformRestartReplyMessage platformRestartReplyMessage = message.getPlatformRestartReplyMessage();
- log.info("远程重启应答-业务消息处理:{}",platformRestartReplyMessage);
- // 持久化消息
- PlatformRestartReply platformRestartReply = new PlatformRestartReply();
- BeanUtils.copyProperties(platformRestartReplyMessage,platformRestartReply);
- platformRestartReplyService.create(platformRestartReply);
- break;
- case SendTagConstant.QR_CODE_DELIVERY_REPLY:
- QrCodeDeliveryReplyMessage qrCodeDeliveryReplyMessage = message.getQrCodeDeliveryReplyMessage();
- log.info("二维码下发应答-业务消息处理:{}",qrCodeDeliveryReplyMessage);
- QrCodeDeliveryReply qrCodeDeliveryReply = new QrCodeDeliveryReply();
- BeanUtils.copyProperties(qrCodeDeliveryReplyMessage,qrCodeDeliveryReply);
- qrCodeDeliveryReplyService.create(qrCodeDeliveryReply);
- break;
- case SendTagConstant.SECURITY_DETECTION:
- SecurityDetectionMessage securityDetectionMessage = message.getSecurityDetectionMessage();
- log.info("安全监测-业务消息处理:{}",securityDetectionMessage);
- SecurityDetection securityDetection = new SecurityDetection();
- BeanUtils.copyProperties(securityDetectionMessage,securityDetection);
- securityDetectionService.create(securityDetection);
-
- SecurityDetectionVO securityDetection1 = new SecurityDetectionVO();
- BeanUtils.copyProperties(securityDetection, securityDetection1);
- chargingOrderClient.securityDetection(securityDetection1);
- break;
- default:
- PlatformRemoteUpdateReplyMessage platformRemoteUpdateReplyMessage = message.getPlatformRemoteUpdateReplyMessage();
- log.info("远程更新应答-业务消息处理:{}",platformRemoteUpdateReplyMessage);
- PlatformRemoteUpdateReply platformRemoteUpdateReply = new PlatformRemoteUpdateReply();
- BeanUtils.copyProperties(platformRemoteUpdateReplyMessage,platformRemoteUpdateReply);
- platformRemoteUpdateReplyService.create(platformRemoteUpdateReply);
- break;
- }
- }
-
-
-}
\ No newline at end of file
+// // 业务处理
+// TChargingOrder chargingOrderBms = chargingOrderClient.getOrderByCode(bmsDemandAndChargerExportationMessage.getTransaction_serial_number()).getData();
+// if(Objects.nonNull(chargingOrderBms)){
+// chargingOrderBms.setNeedElec(bmsDemandAndChargerExportationMessage.getBms_current_requirements());
+// chargingOrderClient.updateChargingOrder(chargingOrderBms);
+// }
+// break;
+// case SendTagConstant.BMS_INFORMATION:
+// BmsInformationMessage bmsInformationMessage = message.getBmsInformationMessage();
+// log.info("充电过程BMS信息-业务消息处理:{}",bmsInformationMessage);
+// // 持久化消息
+// BmsInformation bmsInformation = new BmsInformation();
+// BeanUtils.copyProperties(bmsInformationMessage,bmsInformation);
+// bmsInformationService.create(bmsInformation);
+// break;
+// case SendTagConstant.CHARGING_PILE_STARTS_CHARGING:
+// ChargingPileStartsChargingMessage chargingPileStartsChargingMessage = message.getChargingPileStartsChargingMessage();
+// log.info("充电桩主动申请启动充电-业务消息处理:{}",chargingPileStartsChargingMessage);
+// // 持久化消息
+// ChargingPileStartsCharging chargingPileStartsCharging = new ChargingPileStartsCharging();
+// BeanUtils.copyProperties(chargingPileStartsChargingMessage,chargingPileStartsCharging);
+// chargingPileStartsChargingService.create(chargingPileStartsCharging);
+// break;
+// case SendTagConstant.PLATFORM_START_CHARGING_REPLY:
+// PlatformStartChargingReplyMessage platformStartChargingReplyMessage = message.getPlatformStartChargingReplyMessage();
+// log.info("远程启机命令回复-业务消息处理:{}",platformStartChargingReplyMessage);
+// // 持久化消息
+// PlatformStartChargingReply platformStartChargingReply = new PlatformStartChargingReply();
+// BeanUtils.copyProperties(platformStartChargingReplyMessage,platformStartChargingReply);
+// platformStartChargingReplyService.create(platformStartChargingReply);
+//
+// // 业务处理
+// PlatformStartChargingReplyMessageVO message1 = new PlatformStartChargingReplyMessageVO();
+// BeanUtils.copyProperties(platformStartChargingReplyMessage, message1);
+// chargingOrderClient.startChargeSuccessfully(message1);
+// break;
+// case SendTagConstant.PLATFORM_STOP_CHARGING_REPLY:
+// PlatformStopChargingReplyMessage platformStopChargingReplyMessage = message.getPlatformStopChargingReplyMessage();
+// log.info("远程停机命令回复-业务消息处理:{}",platformStopChargingReplyMessage);
+// // 持久化消息
+// PlatformStopChargingReply platformStopChargingReply = new PlatformStopChargingReply();
+// BeanUtils.copyProperties(platformStopChargingReplyMessage,platformStopChargingReply);
+// platformStopChargingReplyService.create(platformStopChargingReply);
+//
+// PlatformStopChargingReplyVO platformStopChargingReply1 = new PlatformStopChargingReplyVO();
+// BeanUtils.copyProperties(platformStopChargingReply, platformStopChargingReply1);
+// chargingOrderClient.terminateSuccessfulResponse(platformStopChargingReply1);
+// break;
+// case SendTagConstant.TRANSACTION_RECORD:
+// TransactionRecordMessage transactionRecordMessage = message.getTransactionRecordMessage();
+// log.info("交易记录-业务消息处理:{}",transactionRecordMessage);
+// transactionRecordMessage.setResult(JSONObject.toJSONString(message));
+// // 持久化消息
+// TransactionRecord transactionRecord = new TransactionRecord();
+// BeanUtils.copyProperties(transactionRecordMessage,transactionRecord);
+// transactionRecordService.create(transactionRecord);
+//
+// // 业务处理
+// TChargingOrder chargingOrderRecord = chargingOrderClient.getOrderByCode(transactionRecordMessage.getTransaction_serial_number()).getData();
+// if(Objects.nonNull(chargingOrderRecord)){
+// chargingOrderRecord.setTotalElectricity(transactionRecordMessage.getTotal_electricity());
+// chargingOrderClient.updateChargingOrder(chargingOrderRecord);
+// }
+// //计算费用
+// TransactionRecordMessageVO vo = new TransactionRecordMessageVO();
+// BeanUtils.copyProperties(transactionRecordMessage,vo);
+// int code = chargingOrderClient.endChargeBillingCharge(vo).getCode();
+// if(200 != code){
+// //失败后添加到队列中继续处理数据
+// redisTemplate.opsForSet().add(SendTagConstant.TRANSACTION_RECORD, transactionRecordMessage.getTransaction_serial_number());
+// }
+//
+//
+// // 添加实时上传记录结束记录
+// // 查询mogondb上一条数据
+// UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataService.getLastDataById(transactionRecordMessage.getTransaction_serial_number());
+// if(Objects.nonNull(data) && data.getStatus() != 5){
+// UploadRealTimeMonitoringData uploadRealTimeMonitoringData = new UploadRealTimeMonitoringData();
+// BeanUtils.copyProperties(data,uploadRealTimeMonitoringData);
+// uploadRealTimeMonitoringData.setStatus(5);
+// uploadRealTimeMonitoringDataService.create(uploadRealTimeMonitoringData);
+// }
+// break;
+// case SendTagConstant.UPDATE_BALANCE_REPLY:
+// UpdateBalanceReplyMessage updateBalanceReplyMessage = message.getUpdateBalanceReplyMessage();
+// log.info("余额更新应答-业务消息处理:{}",updateBalanceReplyMessage);
+// // 持久化消息
+// UpdateBalanceReply updateBalanceReply = new UpdateBalanceReply();
+// BeanUtils.copyProperties(updateBalanceReplyMessage,updateBalanceReply);
+// updateBalanceReplyService.create(updateBalanceReply);
+// break;
+// case SendTagConstant.SYNCHRONIZE_OFFLINE_CARD_REPLY:
+// SynchronizeOfflineCardReplyMessage synchronizeOfflineCardReplyMessage = message.getSynchronizeOfflineCardReplyMessage();
+// log.info("卡数据同步应答-业务消息处理:{}",synchronizeOfflineCardReplyMessage);
+// // 持久化消息
+// SynchronizeOfflineCardReply synchronizeOfflineCardReply = new SynchronizeOfflineCardReply();
+// BeanUtils.copyProperties(synchronizeOfflineCardReplyMessage,synchronizeOfflineCardReply);
+// synchronizeOfflineCardReplyService.create(synchronizeOfflineCardReply);
+// break;
+// case SendTagConstant.CLEAR_OFFLINE_CARD_REPLY:
+// ClearOfflineCardReplyMessage clearOfflineCardReplyMessage = message.getClearOfflineCardReplyMessage();
+// log.info("离线卡数据清除应答-业务消息处理:{}",clearOfflineCardReplyMessage);
+// // 持久化消息
+// ClearOfflineCardReply clearOfflineCardReply = new ClearOfflineCardReply();
+// BeanUtils.copyProperties(clearOfflineCardReplyMessage,clearOfflineCardReply);
+// clearOfflineCardReplyService.create(clearOfflineCardReply);
+// break;
+// case SendTagConstant.WORKING_PARAMETER_SETTING_REPLY:
+// WorkingParameterSettingReplyMessage workingParameterSettingReplyMessage = message.getWorkingParameterSettingReplyMessage();
+// log.info("充电桩工作参数设置应答-业务消息处理:{}",workingParameterSettingReplyMessage);
+// // 持久化消息
+// WorkingParameterSettingReply workingParameterSettingReply = new WorkingParameterSettingReply();
+// BeanUtils.copyProperties(workingParameterSettingReplyMessage,workingParameterSettingReply);
+// workingParameterSettingReplyService.create(workingParameterSettingReply);
+// break;
+// case SendTagConstant.TIMING_SETTING:
+// TimingSettingMessage timingSettingMessage = message.getTimingSettingMessage();
+// log.info("对时设置-业务消息处理:{}",timingSettingMessage);
+// // 持久化消息
+// TimingSetting timingSetting = new TimingSetting();
+// BeanUtils.copyProperties(timingSettingMessage,timingSetting);
+// timingSettingService.create(timingSetting);
+// break;
+// case SendTagConstant.SETUP_BILLING_MODEL_REPLY:
+// SetupBillingModelReplyMessage setupBillingModelReplyMessage = message.getSetupBillingModelReplyMessage();
+// log.info("计费模型应答-业务消息处理:{}",setupBillingModelReplyMessage);
+// // 持久化消息
+// SetupBillingModelReply setupBillingModelReply = new SetupBillingModelReply();
+// BeanUtils.copyProperties(setupBillingModelReplyMessage,setupBillingModelReply);
+// setupBillingModelReplyService.create(setupBillingModelReply);
+// break;
+// case SendTagConstant.GROUND_LOCK_REAL_TIME_DATA:
+// GroundLockRealTimeDataMessage groundLockRealTimeDataMessage = message.getGroundLockRealTimeDataMessage();
+// log.info("地锁数据上送(充电桩上送)-业务消息处理:{}",groundLockRealTimeDataMessage);
+// // 持久化消息
+// GroundLockRealTimeData groundLockRealTimeData = new GroundLockRealTimeData();
+// BeanUtils.copyProperties(groundLockRealTimeDataMessage,groundLockRealTimeData);
+// groundLockRealTimeDataService.create(groundLockRealTimeData);
+// break;
+// case SendTagConstant.CHARGING_PILE_RETURNS_GROUND_LOCK_DATA:
+// ChargingPileReturnsGroundLockDataMessage chargingPileReturnsGroundLockDataMessage = message.getChargingPileReturnsGroundLockDataMessage();
+// log.info("充电桩返回数据(上行)-业务消息处理:{}",chargingPileReturnsGroundLockDataMessage);
+// // 持久化消息
+// ChargingPileReturnsGroundLockData chargingPileReturnsGroundLockData = new ChargingPileReturnsGroundLockData();
+// BeanUtils.copyProperties(chargingPileReturnsGroundLockDataMessage,chargingPileReturnsGroundLockData);
+// chargingPileReturnsGroundLockDataService.create(chargingPileReturnsGroundLockData);
+// break;
+// case SendTagConstant.PLATFORM_RESTART_REPLY:
+// PlatformRestartReplyMessage platformRestartReplyMessage = message.getPlatformRestartReplyMessage();
+// log.info("远程重启应答-业务消息处理:{}",platformRestartReplyMessage);
+// // 持久化消息
+// PlatformRestartReply platformRestartReply = new PlatformRestartReply();
+// BeanUtils.copyProperties(platformRestartReplyMessage,platformRestartReply);
+// platformRestartReplyService.create(platformRestartReply);
+// break;
+// case SendTagConstant.QR_CODE_DELIVERY_REPLY:
+// QrCodeDeliveryReplyMessage qrCodeDeliveryReplyMessage = message.getQrCodeDeliveryReplyMessage();
+// log.info("二维码下发应答-业务消息处理:{}",qrCodeDeliveryReplyMessage);
+// QrCodeDeliveryReply qrCodeDeliveryReply = new QrCodeDeliveryReply();
+// BeanUtils.copyProperties(qrCodeDeliveryReplyMessage,qrCodeDeliveryReply);
+// qrCodeDeliveryReplyService.create(qrCodeDeliveryReply);
+// break;
+// case SendTagConstant.SECURITY_DETECTION:
+// SecurityDetectionMessage securityDetectionMessage = message.getSecurityDetectionMessage();
+// log.info("安全监测-业务消息处理:{}",securityDetectionMessage);
+// SecurityDetection securityDetection = new SecurityDetection();
+// BeanUtils.copyProperties(securityDetectionMessage,securityDetection);
+// securityDetectionService.create(securityDetection);
+//
+// SecurityDetectionVO securityDetection1 = new SecurityDetectionVO();
+// BeanUtils.copyProperties(securityDetection, securityDetection1);
+// chargingOrderClient.securityDetection(securityDetection1);
+// break;
+// default:
+// PlatformRemoteUpdateReplyMessage platformRemoteUpdateReplyMessage = message.getPlatformRemoteUpdateReplyMessage();
+// log.info("远程更新应答-业务消息处理:{}",platformRemoteUpdateReplyMessage);
+// PlatformRemoteUpdateReply platformRemoteUpdateReply = new PlatformRemoteUpdateReply();
+// BeanUtils.copyProperties(platformRemoteUpdateReplyMessage,platformRemoteUpdateReply);
+// platformRemoteUpdateReplyService.create(platformRemoteUpdateReply);
+// break;
+// }
+// }
+//
+//
+//}
\ No newline at end of file
--
Gitblit v1.7.1