hongjli
2025-05-21 0f994c67ff258fb93aa85ae90200e3db2b5f97f4
aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java
@@ -1,11 +1,13 @@
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;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDate;
import java.time.LocalDateTime;
@@ -27,6 +29,24 @@
    @Autowired
    private IApsWorkOrderJobService iApsWorkOrderJobService;
    @Autowired
    private IApsBomHeaderJobService iApsBomHeaderJobService;
    @Autowired
    private RemoteCoreService remoteCoreService;
    @Autowired
    private IApsMaterialStorageManagementJobService apsMaterialStorageManagementJobService;
    @Autowired
    private IApsStandardProcessRouteHeaderJobService apsStandardProcessRouteHeaderJobService;
    @Autowired
    private IApsMaterialManagementJobService apsMaterialManagementJobService;
    @Autowired
    private IApsWeldSeamStandardJobService apsWeldSeamStandardJobService;
    public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i)
    {
        System.out.println(StringUtils.format("执行多参方法: 字符串类型{},布尔类型{},长整型{},浮点型{},整形{}", s, b, l, d, i));
@@ -45,9 +65,12 @@
    /**
     * 同步工单工序数据
     */
    @Transactional(rollbackFor = Exception.class)
    public void syncWorkOrderProcessData(String status, Integer pageSize)
    {
        iApsWorkOrderProcessService.deleteApsWorkOrderProcess();
        iApsWorkOrderProcessService.syncWorkOrderProcessData(status, pageSize);
        iApsWorkOrderProcessService.syncProcessRouteData();
    }
    /**
@@ -59,6 +82,21 @@
        iApsWorkOrderJobService.syncPartOrderData();
    }
    /**
     * 每日同步钣金工单数据
     * */
    public void  syncPlateOrderData ()
    {
        iApsWorkOrderJobService.syncPlateOrderData();
    }
    /**
     * 每日同步气柜管路数据
     * */
    public void  syncGasPipingData ()
    {
        iApsWorkOrderJobService.syncGasPipingData();
    }
    /**
     * 每日同步所有工单数据
     * */
@@ -75,20 +113,104 @@
        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()
    {
        iApsWorkOrderJobService.deleteAllWorkOrderJob();
        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);
    }
    /**
     * 刷新钣金子单数据到Redis
     */
    public void setPlateSubPlansToRedis(){
        remoteCoreService.setPlateSubPlansToRedis(SecurityConstants.INNER);
    }
    /**
     * 同步物料标准焊缝数据
     */
    public void syncWeldSeamStandardData() {
        apsWeldSeamStandardJobService.syncWeldSeamStandardData();
    }
}