package com.aps.job.task; import com.aps.common.core.utils.StringUtils; import com.aps.job.param.ApsWorkOrderJobParam; import com.aps.job.service.IApsWorkOrderJobService; import com.aps.job.service.IApsWorkOrderProcessService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.Arrays; /** * 定时任务调度测试 * * @author ruoyi */ @Component("ryTask") public class RyTask { @Autowired private IApsWorkOrderProcessService iApsWorkOrderProcessService; @Autowired private IApsWorkOrderJobService iApsWorkOrderJobService; public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i) { System.out.println(StringUtils.format("执行多参方法: 字符串类型{},布尔类型{},长整型{},浮点型{},整形{}", s, b, l, d, i)); } public void ryParams(String params) { System.out.println("执行有参方法:" + params); } public void ryNoParams() { System.out.println("执行无参方法"); } /** * 同步工单工序数据 */ public void syncWorkOrderProcessData(String status, Integer pageSize) { iApsWorkOrderProcessService.syncWorkOrderProcessData(status, pageSize); } /** * 每日同步零件工单数据 * */ public void syncPartOrderData () { iApsWorkOrderJobService.syncPartOrderData(); } /** * 每日同步零件工单数据 * */ public void syncPlateOrderData () { iApsWorkOrderJobService.syncPlateOrderData(); } /** * 每日同步所有工单数据 * */ public void syncWorkOrderData() { DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); LocalDateTime today = LocalDateTime.now(); LocalDate yesterday = LocalDate.now().minusDays(1); LocalDateTime yesterdayMidnight = yesterday.atStartOfDay(); boolean continueFlag = true; Integer currentPage = 1; ApsWorkOrderJobParam param=new ApsWorkOrderJobParam(); param.setPageIndex(currentPage); param.setDocState(Arrays.asList(0,1,2,4)); param.setBeginDate(yesterdayMidnight.format(formatter)); param.setEndDate(today.format(formatter)); param.setPageSize(1000); while (continueFlag){ param.setPageIndex(currentPage); continueFlag= iApsWorkOrderJobService.batchSaveByPager(param); currentPage++; } } /** * 将工单工序数据同步到业务表中 */ public void insertIntoApsProcessRoute() { iApsWorkOrderProcessService.deleteApsProcessRoute(); iApsWorkOrderProcessService.insertIntoApsProcessRoute(); } }