huangjiayang
2025-05-13 ce34bb17c5e41f13b170ad9fa7e580030f0ec63c
aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java
@@ -1,9 +1,10 @@
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.IApsWorkOrderJobService;
import com.aps.job.service.IApsWorkOrderProcessService;
import com.aps.job.service.*;
import com.aps.system.api.RemoteCoreService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -27,6 +28,21 @@
    @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));
@@ -45,24 +61,39 @@
    /**
     * 同步工单工序数据
     */
    public void syncWorkOrderProcessData()
    public void syncWorkOrderProcessData(String status, Integer pageSize)
    {
        iApsWorkOrderProcessService.syncWorkOrderProcessData();
        iApsWorkOrderProcessService.syncWorkOrderProcessData(status, pageSize);
    }
    /**
     * 每日同步零件工单数据
     * */
    public void  syncPartOrderData ()
    {
        iApsWorkOrderJobService.syncPartOrderData();
    }
    /**
     * 每日同步钣金工单数据
     * */
    public void  syncPlateOrderData ()
    {
        iApsWorkOrderJobService.syncPlateOrderData();
    }
    /**
     * 每日同步气柜管路数据
     * */
    public void  syncGasPipingData ()
    {
        iApsWorkOrderJobService.syncGasPipingData();
    }
    /**
     * 每日同步所有工单数据
     * */
    public void syncWorkOrderData()
    {
        iApsWorkOrderJobService.SyncWorkOrderByTime();
    }
    /**
     * 每日同步零件工单数据
     * */
    public void syncPartOrderData()
    {
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        LocalDateTime today = LocalDateTime.now();
@@ -75,20 +106,90 @@
        param.setDocState(Arrays.asList(0,1,2,4));
        param.setBeginDate(yesterdayMidnight.format(formatter));
        param.setEndDate(today.format(formatter));
        param.setPageSize(1000);
        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.deleteApsProcessRoute();
        iApsWorkOrderProcessService.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)
    {
        boolean res = apsMaterialStorageManagementJobService.syncApsMaterialStorageDataJob(pageIndex, pageSize, orgCode, itemCodeList);
        if(res){
            remoteCoreService.setStorageDataToRedis(SecurityConstants.INNER);
        }
    }
    /**
     * 同步全量工艺路线数据定时任务
     */
    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);
    }
}