|  |  | 
 |  |  | package com.zy.acs.manager.core.scheduler; | 
 |  |  |  | 
 |  |  | import com.zy.acs.manager.system.service.ConfigService; | 
 |  |  | import lombok.extern.slf4j.Slf4j; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.jdbc.core.JdbcTemplate; | 
 |  |  | import org.springframework.scheduling.annotation.Scheduled; | 
 |  |  | import org.springframework.stereotype.Component; | 
 |  |  | import org.springframework.transaction.annotation.Transactional; | 
 |  |  |  | 
 |  |  | import java.util.Optional; | 
 |  |  |  | 
 |  |  | /** | 
 |  |  |  * Created by vincent on 5/8/2024 | 
 |  |  |  */ | 
 |  |  | @Slf4j | 
 |  |  | @Component | 
 |  |  | //@Component | 
 |  |  | @SuppressWarnings("all") | 
 |  |  | public class LogDataScheduler { | 
 |  |  |  | 
 |  |  |     public static final Integer EXPIRED_DAYS = 7; | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private JdbcTemplate jdbcTemplate; | 
 |  |  |     @Autowired | 
 |  |  |     private ConfigService configService; | 
 |  |  |  | 
 |  |  |     @Scheduled(cron = "0 0 1 * * ?") | 
 |  |  |     @Transactional | 
 |  |  |     public void syncLog() { | 
 |  |  |         this.syncTaskLog(); | 
 |  |  |         this.syncActionLog(); | 
 |  |  |         this.syncSegmentLog(); | 
 |  |  |         this.syncJamLog(); | 
 |  |  |         this.syncTravelLog(); | 
 |  |  |         Integer dataExpiredDays = Optional.ofNullable(configService.getVal("dataExpiredDays", Integer.class)).orElse(7); | 
 |  |  |         this.syncTaskLog(dataExpiredDays); | 
 |  |  |         this.syncActionLog(dataExpiredDays); | 
 |  |  |         this.syncSegmentLog(dataExpiredDays); | 
 |  |  |         this.syncJamLog(dataExpiredDays); | 
 |  |  |         this.syncTravelLog(dataExpiredDays); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public void syncTaskLog(){ | 
 |  |  |     public void syncTaskLog(Integer dataExpiredDays){ | 
 |  |  |         try { | 
 |  |  |             String insertSql = "INSERT INTO man_task_log " + | 
 |  |  |                     "SELECT * FROM man_task " + | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ EXPIRED_DAYS +" DAY"; | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ dataExpiredDays +" DAY"; | 
 |  |  |             int rowsInserted = jdbcTemplate.update(insertSql); | 
 |  |  |             log.info("Inserted {} rows into man_task_log", rowsInserted); | 
 |  |  |  | 
 |  |  |             String deleteSql = "DELETE FROM man_task " + | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ EXPIRED_DAYS +" DAY"; | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ dataExpiredDays +" DAY"; | 
 |  |  |             int rowsDeleted = jdbcTemplate.update(deleteSql); | 
 |  |  |             log.info("Deleted {} rows from man_task", rowsDeleted); | 
 |  |  |  | 
 |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public void syncActionLog(){ | 
 |  |  |     public void syncActionLog(Integer dataExpiredDays){ | 
 |  |  |         try { | 
 |  |  |             String insertSql = "INSERT INTO man_action_log " + | 
 |  |  |                     "SELECT * FROM man_action " + | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ EXPIRED_DAYS +" DAY"; | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ dataExpiredDays +" DAY"; | 
 |  |  |             int rowsInserted = jdbcTemplate.update(insertSql); | 
 |  |  |             log.info("Inserted {} rows into man_action_log", rowsInserted); | 
 |  |  |  | 
 |  |  |             String deleteSql = "DELETE FROM man_action " + | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ EXPIRED_DAYS +" DAY"; | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ dataExpiredDays +" DAY"; | 
 |  |  |             int rowsDeleted = jdbcTemplate.update(deleteSql); | 
 |  |  |             log.info("Deleted {} rows from man_action", rowsDeleted); | 
 |  |  |  | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public void syncSegmentLog(){ | 
 |  |  |     public void syncSegmentLog(Integer dataExpiredDays){ | 
 |  |  |         try { | 
 |  |  |             String insertSql = "INSERT INTO man_segment_log " + | 
 |  |  |                     "SELECT * FROM man_segment " + | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ EXPIRED_DAYS +" DAY"; | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ dataExpiredDays +" DAY"; | 
 |  |  |             int rowsInserted = jdbcTemplate.update(insertSql); | 
 |  |  |             log.info("Inserted {} rows into man_segment_log", rowsInserted); | 
 |  |  |  | 
 |  |  |             String deleteSql = "DELETE FROM man_segment " + | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ EXPIRED_DAYS +" DAY"; | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ dataExpiredDays +" DAY"; | 
 |  |  |             int rowsDeleted = jdbcTemplate.update(deleteSql); | 
 |  |  |             log.info("Deleted {} rows from man_segment", rowsDeleted); | 
 |  |  |  | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public void syncJamLog(){ | 
 |  |  |     public void syncJamLog(Integer dataExpiredDays){ | 
 |  |  |         try { | 
 |  |  |             String insertSql = "INSERT INTO man_jam_log " + | 
 |  |  |                     "SELECT * FROM man_jam " + | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ EXPIRED_DAYS +" DAY"; | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ dataExpiredDays +" DAY"; | 
 |  |  |             int rowsInserted = jdbcTemplate.update(insertSql); | 
 |  |  |             log.info("Inserted {} rows into man_jam_log", rowsInserted); | 
 |  |  |  | 
 |  |  |             String deleteSql = "DELETE FROM man_jam " + | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ EXPIRED_DAYS +" DAY"; | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ dataExpiredDays +" DAY"; | 
 |  |  |             int rowsDeleted = jdbcTemplate.update(deleteSql); | 
 |  |  |             log.info("Deleted {} rows from man_jam", rowsDeleted); | 
 |  |  |  | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public void syncTravelLog(){ | 
 |  |  |     public void syncTravelLog(Integer dataExpiredDays){ | 
 |  |  |         try { | 
 |  |  |             String insertSql = "INSERT INTO man_travel_log " + | 
 |  |  |                     "SELECT * FROM man_travel " + | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ EXPIRED_DAYS +" DAY"; | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ dataExpiredDays +" DAY"; | 
 |  |  |             int rowsInserted = jdbcTemplate.update(insertSql); | 
 |  |  |             log.info("Inserted {} rows into man_travel_log", rowsInserted); | 
 |  |  |  | 
 |  |  |             String deleteSql = "DELETE FROM man_travel " + | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ EXPIRED_DAYS +" DAY"; | 
 |  |  |                     "WHERE create_time < NOW() - INTERVAL "+ dataExpiredDays +" DAY"; | 
 |  |  |             int rowsDeleted = jdbcTemplate.update(deleteSql); | 
 |  |  |             log.info("Deleted {} rows from man_travel", rowsDeleted); | 
 |  |  |  |