*
L
2025-07-16 6f76d3044b4a65ce2c2669e9ef361103b6513fdb
src/main/java/com/zy/asrs/task/ReportToDismantleTheStackScheduler.java
@@ -1,11 +1,19 @@
package com.zy.asrs.task;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.service.BasDevpService;
import com.zy.asrs.service.WrkMastService;
import com.zy.asrs.task.core.ReturnT;
import com.zy.asrs.task.handler.ReportToDismantleTheStackHandler;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.*;
/**
 * Created by Monkey D. Luffy on 2023.07.25
@@ -18,12 +26,38 @@
    @Autowired
    private ReportToDismantleTheStackHandler reportToDismantleTheStackHandler;
    @Autowired
    private WrkMastService wrkMastService;
    @Autowired
    private BasDevpService basDevpService;
    @Scheduled(cron = "0/1 * * * * ? ")
    private void execute(){//拆垛信息上传
        int[] staNos =new int[]{118,120,121};
        for (int staNo : staNos){
        List<Integer> integersStaArr = new ArrayList<>();
        List<Long[]> stalistArr = new ArrayList<>();
        for(Integer staNo : staNos){
            BasDevp basDevp = basDevpService.selectById(staNo);
            if (Cools.isEmpty(basDevp) || basDevp.getWrkNo()==0){
                continue;
            }
            WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()));
            if (Cools.isEmpty(wrkMast) || Cools.isEmpty(wrkMast.getSheetNo()) || !wrkMast.getSheetNo().equals("0")){
                continue;
            }
            Date modiTime = wrkMast.getModiTime();
            stalistArr.add(new Long[]{staNo.longValue(), modiTime.getTime()});
        }
        if (!stalistArr.isEmpty() && stalistArr.size()>1){
//            Collections.sort(stalistArr, (a, b) -> a[1] - b[1]);  // 降序排列
            Collections.sort(stalistArr, Comparator.comparingLong(arr -> arr[1]));
            for (Long[] staNowArr : stalistArr){
                integersStaArr.add(staNowArr[0].intValue());
            }
        }
        for (int staNo : integersStaArr){
            try{
                ReturnT<String> result = reportToDismantleTheStackHandler.start(staNo);
                ReturnT<String> result = reportToDismantleTheStackHandler.start2(staNo);
                if (result.getCode()==200){
                    break;
                }