Kaynağa Gözat

fix(charging): 修正充电信息同步调度逻辑与平台运营商ID

- 移除充电站信息同步的定时任务,改为手动触发执行
- 禁用价格策略同步定时任务,注释了调度表达式
- 取消价格策略同步中线程休眠,避免接口调用受限
- 添加失败接口跳过逻辑,保证同步流程不中断
- 更新平台运营商ID为最新值 "MA6HWN8L
SheepHy 18 saat önce
ebeveyn
işleme
35ce304da5

+ 13 - 12
src/main/java/com/zsElectric/boot/charging/quartz/ChargingJob.java

@@ -42,11 +42,11 @@ public class ChargingJob {
     private static final DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 
     /**
-     * 定时同步充电站信息
-     * 每半小时执行一次,从第三方接口获取充电站信息并存储到数据库
-     * cron表达式: 0 0/30 * * * ? 表示每小时的0分和30分执行
+     * 同步充电站信息
+     * 手动触发或启动时执行一次,从第三方接口获取充电站信息并存储到数据库
+     * 注意:已移除定时任务,改为手动触发
      */
-    @Scheduled(cron = "0 0/30 * * * ?")
+     @Scheduled(cron = "0 0/30 * * * ?") // 已禁用定时执行
     public void syncStationsInfo() {
         log.info("开始执行充电站信息同步定时任务");
         
@@ -83,7 +83,7 @@ public class ChargingJob {
      * 每10分钟执行一次,查询所有充电桩的价格策略并存储到数据库
      * cron表达式: 0 10 * * * ? 表示每10分钟执行
      */
-    @Scheduled(cron = "0 */30 * * * ?")
+//    @Scheduled(cron = "0 */1 * * * ?")
     public void syncEquipmentPricePolicy() {
         // 检查任务是否正在执行,防止并发
         if (isPricePolicySyncRunning) {
@@ -128,22 +128,23 @@ public class ChargingJob {
                     
                     // 立即休眠10秒,避免触发第三方接口保护机制
                     // 第三方接口可能有频率限制,需要足够的间隔时间
-                    Thread.sleep(18000); // 10秒间隔
+//                    Thread.sleep(18000); // 10秒间隔
                     
                     if (result != null && result.getSuccStat() != null && result.getSuccStat() == 0) {
                         successCount++;
                         log.info("价格策略同步成功 - connectorId: {}, 时段数: {}", connectorId, result.getSumPeriod());
                     } else {
                         failCount++;
-                        log.warn("价格策略同步失败 - connectorId: {}, 失败原因: {}", connectorId, 
+                        log.warn("价格策略同步失败 - connectorId: {}, 失败原因: {}, 跳过该接口继续处理下一个", connectorId, 
                                 result != null ? result.getFailReason() : "返回结果为空");
+                        continue; // 跳过失败的接口,继续处理下一个
                     }
                     
-                } catch (InterruptedException e) {
-                    Thread.currentThread().interrupt();
-                    log.error("线程休眠被中断 - connectorId: {}", connector.getConnectorId(), e);
-                    failCount++;
-                    break; // 中断后退出循环
+//                } catch (InterruptedException e) {
+//                    Thread.currentThread().interrupt();
+//                    log.error("线程休眠被中断 - connectorId: {}", connector.getConnectorId(), e);
+//                    failCount++;
+//                    break; // 中断后退出循环
                 } catch (Exception e) {
                     failCount++;
                     log.error("同步价格策略失败 - connectorId: {}", connector.getConnectorId(), e);

+ 1 - 1
src/main/java/com/zsElectric/boot/common/constant/ConnectivityConstants.java

@@ -13,7 +13,7 @@ public interface ConnectivityConstants {
     /**
      * 平台运营商ID(URL路径中使用)
      */
-    String PLATFORM_OPERATOR_ID = "MA6DP6BE7";
+    String PLATFORM_OPERATOR_ID = "MA6HWN8L3";
 
     /**
      * 平台运营商密钥