package com.aps.job.task;
|
|
import com.aps.common.core.constant.SecurityConstants;
|
import com.aps.common.core.utils.StringUtils;
|
import com.aps.job.param.ApsWorkOrderJobParam;
|
import com.aps.job.service.*;
|
import com.aps.system.api.RemoteCoreService;
|
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;
|
|
@Autowired
|
private IApsBomHeaderJobService iApsBomHeaderJobService;
|
|
@Autowired
|
private RemoteCoreService remoteCoreService;
|
|
@Autowired
|
private IApsMaterialStorageManagementJobService apsMaterialStorageManagementJobService;
|
|
@Autowired
|
private IApsStandardProcessRouteHeaderJobService apsStandardProcessRouteHeaderJobService;
|
|
@Autowired
|
private IApsMaterialManagementJobService apsMaterialManagementJobService;
|
|
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 syncGasPipingData ()
|
{
|
iApsWorkOrderJobService.syncGasPipingData();
|
}
|
/**
|
* 每日同步所有工单数据
|
* */
|
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(500);
|
while (continueFlag){
|
param.setPageIndex(currentPage);
|
continueFlag= iApsWorkOrderJobService.batchSaveByPager(param);
|
currentPage++;
|
}
|
}
|
/**
|
* 每日同步所有工单数据
|
* */
|
public void syncAllWorkOrder()
|
{
|
|
boolean continueFlag = true;
|
Integer currentPage = 1;
|
ApsWorkOrderJobParam param=new ApsWorkOrderJobParam();
|
param.setPageIndex(currentPage);
|
param.setDocState(Arrays.asList(0,1,2,4));
|
param.setPageSize(500);
|
while (continueFlag){
|
param.setPageIndex(currentPage);
|
continueFlag= iApsWorkOrderJobService.batchSaveByPager(param);
|
currentPage++;
|
}
|
}
|
/**
|
* 将工单工序数据同步到业务表中
|
*/
|
public void insertIntoApsProcessRoute()
|
{
|
iApsWorkOrderProcessService.syncProcessRouteData();
|
}
|
|
/**
|
* 同步零件、钣金、气柜管路的工单数据到业务表中、同步工序数据到工艺路线表中
|
*/
|
public void syncAllTypeOrder()
|
{
|
iApsWorkOrderJobService.syncPartOrderData();
|
iApsWorkOrderJobService.syncPlateOrderData();
|
iApsWorkOrderJobService.syncGasPipingData();
|
iApsWorkOrderProcessService.syncProcessRouteData();
|
}
|
|
/**
|
* 同步全量BOM数据定时任务
|
*/
|
public void syncBomDataJob(Integer pageIndex, Integer pageSize, String orgCode, String itemCodeList)
|
{
|
boolean res = iApsBomHeaderJobService.syncBomDataJob(pageIndex, pageSize, orgCode, itemCodeList);
|
if(res){
|
remoteCoreService.setBomDataToRedis(SecurityConstants.INNER);
|
}
|
}
|
|
/**
|
* 同步全量库存数据定时任务
|
*/
|
public void syncApsMaterialStorageDataJob(Integer pageIndex, Integer pageSize, String orgCode, String itemCodeList)
|
{
|
apsMaterialStorageManagementJobService.syncApsMaterialStorageDataJob(pageIndex, pageSize, orgCode, itemCodeList);
|
}
|
|
/**
|
* 同步全量工艺路线数据定时任务
|
*/
|
public void syncProcessRouteJob(Integer pageIndex, Integer pageSize, String orgCode, String itemCodeList)
|
{
|
boolean res = apsStandardProcessRouteHeaderJobService.syncProcessRouteDataJob(pageIndex, pageSize, orgCode, itemCodeList);
|
if(res){
|
remoteCoreService.setProcessRouteDataToRedis(SecurityConstants.INNER);
|
}
|
}
|
|
/**
|
* 同步全量物料数据定时任务
|
*/
|
public void syncApsMaterialDataJob(Integer pageIndex, Integer pageSize, String orgCode, String itemCodeList)
|
{
|
apsMaterialManagementJobService.syncApsMaterialDataJob(pageIndex, pageSize, orgCode, itemCodeList);
|
}
|
|
|
}
|