diff --git a/src/main/java/com/docus/demo/job/GzFirstHospBasicSyncJob.java b/src/main/java/com/docus/demo/job/GzFirstHospBasicSyncJob.java new file mode 100644 index 0000000..382bf35 --- /dev/null +++ b/src/main/java/com/docus/demo/job/GzFirstHospBasicSyncJob.java @@ -0,0 +1,41 @@ +package com.docus.demo.job; + +import com.docus.demo.dto.SyncBasicDataDto; +import com.docus.demo.facade.ISyncBasicDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import java.time.LocalDate; +import java.time.temporal.TemporalAdjusters; + +/** + * @author YongBin Wen + * @date 2025/4/23 0023 17:13 + */ +@Component +@Slf4j +public class GzFirstHospBasicSyncJob { + + @Autowired + private ISyncBasicDataService syncBasicDataService; + + @Scheduled(cron = "0 0 0/12 * * ?") + public void syncOneMonthData() { + LocalDate today = LocalDate.now(); + LocalDate firstDayOfLastMonth = today.minusMonths(1).with(TemporalAdjusters.firstDayOfMonth()); + SyncBasicDataDto dto = new SyncBasicDataDto(); + dto.setStartDate(firstDayOfLastMonth.toString()); + dto.setEndDate(today.toString()); + dto.setLimit(1000); + log.info("广州市第一人民医院,同步省厅基础数据,日期:{} —— {}", firstDayOfLastMonth, today); + try { + syncBasicDataService.syncBasicData(dto); + log.info("广州市第一人民医院,同步省厅基础数据,日期:" + firstDayOfLastMonth + "—— " + today + ",同步完成!"); + } catch (Exception ex) { + log.info("广州市第一人民医院,同步省厅基础数据,日期:" + firstDayOfLastMonth + "—— " + today + ",出现异常:" + ex.getMessage(), ex); + } + } + +}