package com.ruoyi.quartz.task; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.system.service.IVehicleSyncDataService; import com.ruoyi.system.service.IVehicleSyncService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * 旧系统车辆同步定时任务 * * 从SQL Server的CarData表同步车辆数据到MySQL的tb_vehicle_info表 * * @author ruoyi * @date 2025-10-20 */ @Component("legacyVehicleSyncTask") public class LegacyVehicleSyncTask { private static final Logger log = LoggerFactory.getLogger(LegacyVehicleSyncTask.class); @Autowired private IVehicleSyncService vehicleSyncService; @Autowired private IVehicleSyncDataService vehicleSyncDataService; /** * 同步旧系统车辆数据 * * 任务配置示例: * - 任务名称:旧系统车辆同步 * - 调用目标字符串:legacyVehicleSyncTask.syncVehicles() * - cron表达式:0 0 2 * * ? (每天凌晨2点执行) */ public void syncVehicles() { log.info("========== 开始执行旧系统车辆同步任务 =========="); try { AjaxResult result = vehicleSyncService.syncVehicles(vehicleSyncDataService.getVehiclesFromSqlServer()); if (result.isSuccess() || result.isWarn()) { // log.info("旧系统车辆同步任务执行成功: {}", result.get("msg")); } else if (result.isError()) { log.error("旧系统车辆同步任务执行失败: {}", result.get("msg")); } } catch (Exception e) { log.error("旧系统车辆同步任务执行异常", e); } log.info("========== 旧系统车辆同步任务执行完成 =========="); } }