From 26526de10d49c3422a6d6c2d55fe5a2997786ad9 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期一, 21 七月 2025 13:58:37 +0800
Subject: [PATCH] Merge branch 'dev' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile into dev
---
ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java | 278 ++++++++-----------------------------------------------
1 files changed, 40 insertions(+), 238 deletions(-)
diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java
index 9e9b384..f21d309 100644
--- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java
+++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/governmentCloud/UploadDataTaskUtil.java
@@ -2,22 +2,25 @@
import com.alibaba.fastjson.JSONObject;
-import com.ruoyi.common.core.utils.DateUtils;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.redis.service.RedisService;
import com.ruoyi.integration.api.model.*;
import com.ruoyi.jianguan.mongodb.service.*;
import com.ruoyi.jianguan.mqtt.config.TopicConstants;
import com.ruoyi.jianguan.mqtt.util.MqttPushUtil;
-import com.ruoyi.jianguan.rocket.model.ErrorMessageMessage;
import io.netty.util.concurrent.DefaultThreadFactory;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
+import org.springframework.util.StringUtils;
+import java.text.SimpleDateFormat;
import java.time.LocalDate;
-import java.time.LocalDateTime;
+import java.util.Date;
import java.util.List;
+import java.util.Objects;
import java.util.concurrent.*;
/**
@@ -28,71 +31,28 @@
public class UploadDataTaskUtil {
@Autowired
- private AcquisitionBillingModeService acquisitionBillingModeService;
- @Autowired
- private BillingModeVerifyService billingModeVerifyService;
- @Autowired
- private BmsAbortService bmsAbortService;
- @Autowired
- private BmsDemandAndChargerExportationService bmsDemandAndChargerExportationService;
- @Autowired
- private OnlineService onlineService;
- @Autowired
- private EndChargeService endChargeService;
- @Autowired
- private ErrorMessageMessageService errorMessageMessageService;
- @Autowired
private UploadRealTimeMonitoringDataService uploadRealTimeMonitoringDataService;
@Autowired
- private ChargingHandshakeService chargingHandshakeService;
+ private MqttPushUtil mqttPushUtil;
@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;
+ private RedisService redisService;
/**
* 每天的9点执行的任务
*/
- @Scheduled(cron = "0 0 9 * * *")
-// @Scheduled(fixedRate = 60000)
+ @Scheduled(fixedRate = 86400000)
public void taskDay(){
try {
- // 传输mongodb的硬件数据
- createCustomThreadPool();
+ // 判断是否存在标识
+ Thread.sleep(1000);
+ String flag = redisService.getCacheObject("cloud_integration");
+ System.out.println("市政云硬件数据传输标识:" + flag);
+ if (Objects.isNull(flag)) {
+ log.info("市政云硬件数据传输无标识,开始传输硬件数据");
+ redisService.setCacheObject("cloud_integration", "1",24L,TimeUnit.HOURS);
+ // 传输mongodb的硬件数据
+ createCustomThreadPool();
+ }
}catch (Exception e){
e.printStackTrace();
}
@@ -130,191 +90,29 @@
try {
LocalDate localDate = LocalDate.now().minusDays(1);
- String startTime = localDate + " 00:00:00";
- String endTime = localDate + " 23:59:59";
- long l = System.currentTimeMillis();
- System.err.println("开始时间:"+l);
+ String start = localDate + " 00:00:00";
+ String end = localDate + " 23:59:59";
+ Date startTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(start);
+ Date endTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(end);
// 查询所有的mango数据
- List<AcquisitionBillingMode> acquisitionBillingModeList = acquisitionBillingModeService.getRangeTimeData(startTime, endTime);
- List<BillingModeVerify> billingModeVerifyList = billingModeVerifyService.getRangeTimeData(startTime, endTime);
- List<BmsAbort> bmsAbortList = bmsAbortService.getRangeTimeData(startTime, endTime);
- List<BmsDemandAndChargerExportation> bmsDemandAndChargerExportationList = bmsDemandAndChargerExportationService.getRangeTimeData(startTime, endTime);
- List<Online> onlineList = onlineService.getRangeTimeData(startTime, endTime);
- List<EndCharge> endChargeList = endChargeService.getRangeTimeData(startTime, endTime);
- List<ErrorMessageMessage> errorMessageMessageList = errorMessageMessageService.getRangeTimeData(startTime, endTime);
List<UploadRealTimeMonitoringData> uploadRealTimeMonitoringDataList = uploadRealTimeMonitoringDataService.getRangeTimeData(startTime, endTime);
- List<ChargingHandshake> chargingHandshakeList = chargingHandshakeService.getRangeTimeData(startTime, endTime);
- List<ParameterSetting> parameterSettingList = parameterSettingService.getRangeTimeData(startTime, endTime);
- List<MotorAbort> motorAbortList = motorAbortService.getRangeTimeData(startTime, endTime);
- List<BmsInformation> bmsInformationList = bmsInformationService.getRangeTimeData(startTime, endTime);
- List<ChargingPileStartsCharging> chargingPileStartsChargingList = chargingPileStartsChargingService.getRangeTimeData(startTime, endTime);
- List<PlatformStartChargingReply> platformStartChargingReplyList = platformStartChargingReplyService.getRangeTimeData(startTime, endTime);
- List<PlatformStopChargingReply> platformStopChargingReplyList = platformStopChargingReplyService.getRangeTimeData(startTime, endTime);
- List<TransactionRecord> transactionRecordList = transactionRecordService.getRangeTimeData(startTime, endTime);
- List<UpdateBalanceReply> updateBalanceReplyList = updateBalanceReplyService.getRangeTimeData(startTime, endTime);
- List<SynchronizeOfflineCardReply> synchronizeOfflineCardReplyList = synchronizeOfflineCardReplyService.getRangeTimeData(startTime, endTime);
- List<ClearOfflineCardReply> clearOfflineCardReplyList = clearOfflineCardReplyService.getRangeTimeData(startTime, endTime);
- List<WorkingParameterSettingReply> workingParameterSettingReplyList = workingParameterSettingReplyService.getRangeTimeData(startTime, endTime);
- List<TimingSetting> timingSettingList = timingSettingService.getRangeTimeData(startTime, endTime);
- List<SetupBillingModelReply> setupBillingModelReplyList = setupBillingModelReplyService.getRangeTimeData(startTime, endTime);
- List<GroundLockRealTimeData> groundLockRealTimeDataList = groundLockRealTimeDataService.getRangeTimeData(startTime, endTime);
- List<ChargingPileReturnsGroundLockData> chargingPileReturnsGroundLockDataList = chargingPileReturnsGroundLockDataService.getRangeTimeData(startTime, endTime);
- List<PlatformRestartReply> platformRestartReplyList = platformRestartReplyService.getRangeTimeData(startTime, endTime);
- List<PlatformRemoteUpdateReply> platformRemoteUpdateReplyList = platformRemoteUpdateReplyService.getRangeTimeData(startTime, endTime);
- List<QrCodeDeliveryReply> qrCodeDeliveryReplyList = qrCodeDeliveryReplyService.getRangeTimeData(startTime, endTime);
- List<SecurityDetection> securityDetectionList = securityDetectionService.getRangeTimeData(startTime, endTime);
- System.err.println("结束时间:"+(System.currentTimeMillis()-l));
+ System.err.println("查询所有的mango数据:"+uploadRealTimeMonitoringDataList.size());
customthreadPoolExecutor.execute(() -> {
-// if (acquisitionBillingModeList != null && acquisitionBillingModeList.size() > 0) {
-// for (AcquisitionBillingMode acquisitionBillingMode : acquisitionBillingModeList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", acquisitionBillingMode.getCharging_pile_code()), JSONObject.toJSONString(acquisitionBillingMode));
-// }
-// }
-// if (billingModeVerifyList != null && billingModeVerifyList.size() > 0) {
-// for (BillingModeVerify billingModeVerify : billingModeVerifyList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", billingModeVerify.getCharging_pile_code()), JSONObject.toJSONString(billingModeVerify));
-// }
-// }
-// if (bmsAbortList != null && bmsAbortList.size() > 0) {
-// for (BmsAbort bmsAbort : bmsAbortList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", bmsAbort.getCharging_pile_code()), JSONObject.toJSONString(bmsAbort));
-// }
-// }
-// if (bmsDemandAndChargerExportationList != null && bmsDemandAndChargerExportationList.size() > 0) {
-// for (BmsDemandAndChargerExportation bmsDemandAndChargerExportation : bmsDemandAndChargerExportationList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", bmsDemandAndChargerExportation.getCharging_pile_code()), JSONObject.toJSONString(bmsDemandAndChargerExportation));
-// }
-// }
-// if (onlineList != null && onlineList.size() > 0) {
-// for (Online online : onlineList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", online.getCharging_pile_code()), JSONObject.toJSONString(online));
-// }
-// }
-// if (endChargeList != null && endChargeList.size() > 0) {
-// for (EndCharge endCharge : endChargeList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", endCharge.getCharging_pile_code()), JSONObject.toJSONString(endCharge));
-// }
-// }
-// if (errorMessageMessageList != null && errorMessageMessageList.size() > 0) {
-// for (ErrorMessageMessage errorMessageMessage : errorMessageMessageList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", errorMessageMessage.getCharging_pile_code()), JSONObject.toJSONString(errorMessageMessage));
-// }
-// }
-// if (uploadRealTimeMonitoringDataList != null && uploadRealTimeMonitoringDataList.size() > 0) {
-// for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : uploadRealTimeMonitoringDataList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", uploadRealTimeMonitoringData.getCharging_pile_code()), JSONObject.toJSONString(uploadRealTimeMonitoringData));
-// }
-// }
-// if (chargingHandshakeList != null && chargingHandshakeList.size() > 0) {
-// for (ChargingHandshake chargingHandshake : chargingHandshakeList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", chargingHandshake.getCharging_pile_code()), JSONObject.toJSONString(chargingHandshake));
-// }
-// }
-// if (parameterSettingList != null && parameterSettingList.size() > 0) {
-// for (ParameterSetting parameterSetting : parameterSettingList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", parameterSetting.getCharging_pile_code()), JSONObject.toJSONString(parameterSetting));
-// }
-// }
-// if (motorAbortList != null && motorAbortList.size() > 0) {
-// for (MotorAbort motorAbort : motorAbortList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", motorAbort.getCharging_pile_code()), JSONObject.toJSONString(motorAbort));
-// }
-// }
-// if (bmsInformationList != null && bmsInformationList.size() > 0) {
-// for (BmsInformation bmsInformation : bmsInformationList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", bmsInformation.getCharging_pile_code()), JSONObject.toJSONString(bmsInformation));
-// }
-// }
-// if (chargingPileStartsChargingList != null && chargingPileStartsChargingList.size() > 0) {
-// for (ChargingPileStartsCharging chargingPileStartsCharging : chargingPileStartsChargingList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", chargingPileStartsCharging.getCharging_pile_code()),JSONObject.toJSONString(chargingPileStartsCharging));
-// }
-// }
-// if (platformStartChargingReplyList != null && platformStartChargingReplyList.size() > 0) {
-// for (PlatformStartChargingReply platformStartChargingReply : platformStartChargingReplyList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", platformStartChargingReply.getCharging_pile_code()), JSONObject.toJSONString(platformStartChargingReply));
-// }
-// }
-// if (platformStopChargingReplyList != null && platformStopChargingReplyList.size() > 0) {
-// for (PlatformStopChargingReply platformStopChargingReply : platformStopChargingReplyList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", platformStopChargingReply.getCharging_pile_code()), JSONObject.toJSONString(platformStopChargingReply));
-// }
-// }
-// if (transactionRecordList != null && transactionRecordList.size() > 0) {
-// for (TransactionRecord transactionRecord : transactionRecordList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", transactionRecord.getCharging_pile_code()), JSONObject.toJSONString(transactionRecord));
-// }
-// }
-//// if (updateBalanceReplyList != null && updateBalanceReplyList.size() > 0) {
-//// for (UpdateBalanceReply updateBalanceReply : updateBalanceReplyList) {
-//// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", updateBalanceReply.getCharging_pile_code()), JSONObject.toJSONString(updateBalanceReply));
-//// }
-//// }
-//// if (synchronizeOfflineCardReplyList != null && synchronizeOfflineCardReplyList.size() > 0) {
-//// for (SynchronizeOfflineCardReply synchronizeOfflineCardReply : synchronizeOfflineCardReplyList) {
-//// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", synchronizeOfflineCardReply.getCharging_pile_code()), JSONObject.toJSONString(synchronizeOfflineCardReply));
-//// }
-//// }
-//// if (clearOfflineCardReplyList != null && clearOfflineCardReplyList.size() > 0) {
-//// for (ClearOfflineCardReply clearOfflineCardReply : clearOfflineCardReplyList) {
-//// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", clearOfflineCardReply.getCharging_pile_code()), JSONObject.toJSONString(clearOfflineCardReply));
-//// }
-//// }
-// if (workingParameterSettingReplyList != null && workingParameterSettingReplyList.size() > 0) {
-// for (WorkingParameterSettingReply workingParameterSettingReply : workingParameterSettingReplyList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", workingParameterSettingReply.getCharging_pile_code()), JSONObject.toJSONString(workingParameterSettingReply));
-// }
-// }
-// if (timingSettingList != null && timingSettingList.size() > 0) {
-// for (TimingSetting timingSetting : timingSettingList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", timingSetting.getCharging_pile_code()), JSONObject.toJSONString(timingSetting));
-// }
-// }
-//// if (setupBillingModelReplyList != null && setupBillingModelReplyList.size() > 0) {
-//// for (SetupBillingModelReply setupBillingModelReply : setupBillingModelReplyList) {
-//// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", setupBillingModelReply.getCharging_pile_code()), JSONObject.toJSONString(setupBillingModelReply));
-//// }
-//// }
-// if (groundLockRealTimeDataList != null && groundLockRealTimeDataList.size() > 0) {
-// for (GroundLockRealTimeData groundLockRealTimeData : groundLockRealTimeDataList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", groundLockRealTimeData.getCharging_pile_code()), JSONObject.toJSONString(groundLockRealTimeData));
-// }
-// }
-// if (chargingPileReturnsGroundLockDataList != null && chargingPileReturnsGroundLockDataList.size() > 0) {
-// for (ChargingPileReturnsGroundLockData chargingPileReturnsGroundLockData : chargingPileReturnsGroundLockDataList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", chargingPileReturnsGroundLockData.getCharging_pile_code()), JSONObject.toJSONString(chargingPileReturnsGroundLockData));
-// }
-// }
-// if (platformRestartReplyList != null && platformRestartReplyList.size() > 0) {
-// for (PlatformRestartReply platformRestartReply : platformRestartReplyList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", platformRestartReply.getCharging_pile_code()), JSONObject.toJSONString(platformRestartReply));
-// }
-// }
-// if (platformRemoteUpdateReplyList != null && platformRemoteUpdateReplyList.size() > 0) {
-// for (PlatformRemoteUpdateReply platformRemoteUpdateReply : platformRemoteUpdateReplyList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", platformRemoteUpdateReply.getCharging_pile_code()), JSONObject.toJSONString(platformRemoteUpdateReply));
-// }
-// }
-// if (qrCodeDeliveryReplyList != null && qrCodeDeliveryReplyList.size() > 0) {
-// for (QrCodeDeliveryReply qrCodeDeliveryReply : qrCodeDeliveryReplyList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", qrCodeDeliveryReply.getCharging_pile_code()), JSONObject.toJSONString(qrCodeDeliveryReply));
-// }
-// }
-// if (securityDetectionList != null && securityDetectionList.size() > 0) {
-// for (SecurityDetection securityDetection : securityDetectionList) {
-// MqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", securityDetection.getCharging_pile_code()), JSONObject.toJSONString(securityDetection));
-// }
-// }
-
+ if (uploadRealTimeMonitoringDataList != null && uploadRealTimeMonitoringDataList.size() > 0) {
+ for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : uploadRealTimeMonitoringDataList) {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("device_code", uploadRealTimeMonitoringData.getCharging_pile_code());
+ jsonObject.put("report_time", System.currentTimeMillis());
+ jsonObject.put("properties", uploadRealTimeMonitoringData);
+ R<String> chargePileCode = mqttPushUtil.pushChargePileData(TopicConstants.CHARGE_PILE_CODE.replace("CHARGE_PILE_CODE", uploadRealTimeMonitoringData.getCharging_pile_code()), jsonObject.toJSONString());
+ log.info("返回结果:{}", chargePileCode.getData());
+ log.info("数据:{}", uploadRealTimeMonitoringData.getCharging_pile_code());
+ log.info("数据:{}", jsonObject.toJSONString());
+ }
+ }
});
TimeUnit.MILLISECONDS.sleep(1);
-
-// Future<String> future = customthreadPoolExecutor.submit(() -> {
-// log.info("线程:{},办理业务", Thread.currentThread().getName());
-// return "业务办理完成";
-// });
-// log.info(future.get());
} finally {
gracefulShutdown(customthreadPoolExecutor);
}
@@ -346,4 +144,8 @@
}
}
+ public static void main(String[] args) {
+ System.err.println(System.currentTimeMillis());
+ }
+
}
--
Gitblit v1.7.1