自动化立体仓库 - WMS系统
*
L
5 天以前 9f535f9c6ff8640d0cbbc915235a59d2ee39c702
src/main/java/com/zy/asrs/task/WrkMastStaInIt2Scheduler.java
@@ -13,6 +13,7 @@
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
@@ -64,9 +65,28 @@
    }};
    @Scheduled(cron = "0/3 * * * * ? ")
    @Scheduled(cron = "0/1 * * * * ? ")
    private void execute(){
        RgvOneSign rgvTwoSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","rgvTwo"));
        if (rgvTwoSign.getRgvOneSign()!=0){
            return;
        }
        List<Integer> integersStaArr = new ArrayList<>();
        List<int[]> stalistArr = new ArrayList<>();
        for(Integer staNo : STA_WORK_CU){
            Integer crnNo = getCrnNo(staNo);
            int selectCount = wrkMastService.selectCount(
                    new EntityWrapper<WrkMast>().eq("crn_no", crnNo).eq("wrk_sts", 11L));
            stalistArr.add(new int[]{staNo, selectCount});
        }
// 按selectCount降序排序(最大的排第一位)
        Collections.sort(stalistArr, (a, b) -> b[1] - a[1]);  // 降序排列
// 如果您需要转为数组(可选)
        for (int[] staNowArr : stalistArr){
            integersStaArr.add(staNowArr[0]);
        }
        for(Integer staNo : integersStaArr){
            try{
                BasDevp basDevp = basDevpService.selectById(staNo);
                if (basDevp.getWrkNo()!=0 && basDevp.getLoading().equals("Y") && basDevp.getAutoing().equals("Y")){
@@ -139,10 +159,26 @@
        }
    }
    @Scheduled(cron = "0/3 * * * * ? ")
    @Scheduled(cron = "0/1 * * * * ? ")
    private void execute2(){
        RgvOneSign rgvTwoSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","rgvTwo"));
        if (rgvTwoSign.getRgvOneSign()!=0){
            return;
        }
        try{
            List<Integer> integersStaArr = new ArrayList<>();
            List<int[]> stalistArr = new ArrayList<>();
            for(Integer staNo : STA_WORK_CU){
                Integer crnNo = getCrnNo(staNo);
                int selectCount = wrkMastService.selectCount(
                        new EntityWrapper<WrkMast>().eq("crn_no", crnNo).eq("wrk_sts", 11L));
                stalistArr.add(new int[]{staNo, selectCount});
            }
            Collections.sort(stalistArr, (a, b) -> b[1] - a[1]);
            for (int[] staNowArr : stalistArr){
                integersStaArr.add(staNowArr[0]);
            }
            for(Integer staNo : integersStaArr){
                try{
                    BasDevp basDevp = basDevpService.selectById(staNo);
                    if (basDevp.getWrkNo()!=0 && basDevp.getLoading().equals("Y") && basDevp.getAutoing().equals("Y")){
@@ -197,7 +233,7 @@
                                                        List<WrkDetl> wrkDetlsQQ = wrkDetlService.selectByWrkNo(wrkMastEndQQ.getWrkNo());
                                                        for (WrkDetl wrkDetlQQ: wrkDetlsQQ){
                                                            String originQQ = wrkDetlQQ.getOrigin();
                                                            if (originQQ.equals("1")){
                                                            if (originQQ.equals("2")){
                                                                signQQ = true;
                                                                break;
                                                            }
@@ -235,7 +271,7 @@
                                                        List<WrkDetl> wrkDetlsQQ = wrkDetlService.selectByWrkNo(wrkMastEndQQ.getWrkNo());
                                                        for (WrkDetl wrkDetlQQ: wrkDetlsQQ){
                                                            String originQQ = wrkDetlQQ.getOrigin();
                                                            if (originQQ.equals("2")){
                                                            if (originQQ.equals("1")){
                                                                signQQ = true;
                                                                break;
                                                            }
@@ -298,7 +334,7 @@
                }
            }
            for(Integer staNo : STA_WORK_CU){
            for(Integer staNo : integersStaArr){
                try{
                    BasDevp basDevp = basDevpService.selectById(staNo);
                    if (basDevp.getWrkNo()!=0 && basDevp.getLoading().equals("Y") && basDevp.getAutoing().equals("Y")){
@@ -398,4 +434,35 @@
        return false;
    }
    public Integer getCrnNo(Integer staNo){
        switch (staNo){
            case 100:
            case 101:
            case 102:
                return 1;
            case 103:
            case 104:
            case 105:
                return 2;
            case 106:
            case 107:
            case 108:
                return 3;
            case 109:
            case 110:
            case 111:
                return 4;
            case 112:
            case 113:
            case 114:
                return 5;
            case 115:
            case 116:
            case 117:
                return 6;
            default:
                return 0;
        }
    }
}