package com.ruoyi.http.task; import com.ruoyi.http.config.TqdianbiaoConfig; import com.ruoyi.http.service.TqdianbiaoCollectorSyncService; import com.ruoyi.http.service.TqdianbiaoEleSyncService; import com.ruoyi.http.service.TqdianbiaoMeterSyncService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; /** * 天启电表定时同步:仅同步采集器、电表、小时电量(统计由小时累积计算) */ @Slf4j @Component @RequiredArgsConstructor public class TqdianbiaoSyncTask { private final TqdianbiaoConfig config; private final TqdianbiaoCollectorSyncService collectorSyncService; private final TqdianbiaoMeterSyncService meterSyncService; private final TqdianbiaoEleSyncService eleSyncService; //@Scheduled(cron = "30 5 * * * ?") public void syncCollectors() { if (!isEnabled()) return; try { collectorSyncService.syncCollectors(); } catch (Exception e) { log.error("采集器定时同步异常", e); } } @Scheduled(cron = "30 7 * * * ?") public void syncMeters() { if (!isEnabled()) return; try { meterSyncService.syncMeters(); } catch (Exception e) { log.error("电表定时同步异常", e); } } @Scheduled(cron = "30 10 * * * ?") public void syncHourEle() { if (!isEnabled()) return; try { eleSyncService.syncHourData(); } catch (Exception e) { log.error("小时电量定时同步异常", e); } } private boolean isEnabled() { return config.getSync() != null && Boolean.TRUE.equals(config.getSync().getEnabled()); } }