自动化立体仓库 - WMS系统
*
L
4 天以前 6a6ceb0e57285d49c3f9c884e244710c9edf2b7a
src/main/java/com/zy/asrs/task/WrkMastStaInIt3Scheduler.java
@@ -46,26 +46,30 @@
    }};
    public static final List<Integer> STA_WORK_CU_CAR = new ArrayList<Integer>() {{
        add(118);
        add(118);add(1901);
    }};
    public static final List<Integer> STA_WORK_CU_CAR_TWO = new ArrayList<Integer>() {{
        add(1901);
    }};
    public static final List<Integer> STA_WORK_CU_CAR_THREE  = new ArrayList<Integer>() {{
        add(118);
        add(118);add(1901);
    }};
    public static final List<Integer> STA_WORK_CU_CAR_FOUR  = new ArrayList<Integer>() {{
        add(118);
        add(118);add(1901);
    }};
    public static final List<Integer> STA_WORK_RU = new ArrayList<Integer>() {{
        add(118);add(122);
        add(118);add(122);add(1907);
    }};
    @Scheduled(cron = "0/1 * * * * ? ")
    private void execute(){
        RgvOneSign rgvTwoSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","rgvTwo"));
        if (Cools.isEmpty(rgvTwoSign) || rgvTwoSign.getRgvOneSign()!=0){
            return;
        }
        List<Integer> integersStaArr = new ArrayList<>();
        List<int[]> stalistArr = new ArrayList<>();
        for(Integer staNo : STA_WORK_CU){
@@ -74,10 +78,7 @@
                    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]);  // 降序排列
// 如果您需要转为数组(可选)
        Collections.sort(stalistArr, (a, b) -> b[1] - a[1]);
        for (int[] staNowArr : stalistArr){
            integersStaArr.add(staNowArr[0]);
        }
@@ -90,17 +91,18 @@
                        continue;
                    }
                    if (wrkMast.getIoType()<100 || wrkMast.getIoType()==110){
                        if (!wrkMast.getStaNo().equals(122)){
                        if (!wrkMast.getStaNoCar$().equals(122) && !wrkMast.getStaNoCar$().equals(1901)){
                            continue;
                        }
                    }
                    if (wrkMast.getWrkSts()!=14 && wrkMast.getWrkSts()!=15){
                        continue;
                    }
                    if (wrkMast.getStaNo()==118 || wrkMast.getStaNo()==119 || wrkMast.getStaNo()==120 || wrkMast.getStaNo()==121){
                    if (wrkMast.getStaNoCar$()==118 || wrkMast.getStaNoCar$()==119 || wrkMast.getStaNoCar$()==120 || wrkMast.getStaNoCar$()==121){
                        continue;
                    }
                    boolean wrkTypeSign = fullKM(wrkMast);
//                    boolean wrkTypeSign = fullKM(wrkMast);
                    boolean wrkTypeSign = true;
                    if (!Cools.isEmpty(wrkMast)){
                        if (wrkTypeSign) {
                            ReturnT<String> result = wrkMastStaInItHandler.start(wrkMast,basDevp,13);//3:取放
@@ -133,8 +135,14 @@
                        continue;
                    }
                    if (wrkMast.getWrkSts()!=2 || wrkMast.getIoType()==10){
                        continue;
                    if (staNo==1907){
                        if (wrkMast.getWrkSts()!=2){
                            continue;
                        }
                    } else {
                        if (wrkMast.getWrkSts()!=2 || wrkMast.getIoType()==10){
                            continue;
                        }
                    }
//                boolean wrkTypeSign = fullKM(wrkMast);
@@ -149,13 +157,17 @@
                    }
                }
            }catch (Exception e){
                log.error("自动补空板STA_WORK_RU处理失败,当前站点号:"+staNo+"异常信息"+e);
                log.error("STA_WORK_RU处理失败,当前站点号:"+staNo+"异常信息"+e);
            }
        }
    }
    @Scheduled(cron = "0/1 * * * * ? ")
    @Scheduled(cron = "0/2 * * * * ? ")
    private void execute2(){
        RgvOneSign rgvTwoSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","rgvTwo"));
        if (Cools.isEmpty(rgvTwoSign) || rgvTwoSign.getRgvOneSign()!=0){
            return;
        }
        try{
            List<Integer> integersStaArr = new ArrayList<>();
            List<int[]> stalistArr = new ArrayList<>();
@@ -186,19 +198,25 @@
                        if (wrkMast.getWrkSts()!=14 && wrkMast.getWrkSts()!=15){
                            continue;
                        }
                        if (wrkMast.getStaNo()<118 || wrkMast.getStaNo()>121){
                        if (wrkMast.getStaNoCar$()<118 || wrkMast.getStaNoCar$()>121){
                            continue;
                        }
                        int count = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", wrkMast.getStaNo()).or().eq("sta_end", wrkMast.getStaNo()));
                        if (count!=0){
                        int count1 = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", wrkMast.getStaNoCar$()));
                        int count2 = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_end", wrkMast.getStaNoCar$()));
                        if (count1+count2!=0){
                            continue;
                        }
                        int countStart = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", staNo).or().eq("sta_end", staNo).or().eq("wrk_no", wrkMast.getWrkNo()));
                        if (countStart!=0){
                        int countStart1 = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", staNo));
                        int countStart2 = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_end", staNo));
                        int countStart3 = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("wrk_no", wrkMast.getWrkNo()));
                        if (countStart1+countStart2+countStart3!=0){
                            continue;
                        }
                        BasDevp basDevpEnd = basDevpService.selectById(wrkMast.getStaNo());
                        BasDevp basDevpEnd = basDevpService.selectById(wrkMast.getStaNoCar$());
                        if (!basDevpEnd.getAutoing().equals("Y")){
                            continue;
                        }
                        if (!basDevpEnd.getAutoing().equals("Y") || basDevpEnd.getWrkNo()!=0 || basDevpEnd.getLoading().equals("Y") || basDevpEnd.getReportSign()!=0){
                            continue;
                        }
                        if (basDevpEnd.getWrkNo()!=0 || basDevpEnd.getLoading().equals("Y") || basDevpEnd.getReportSign()!=0){
@@ -211,7 +229,7 @@
                                continue;
                            }
                        }
                        if (wrkMast.getStaNo()==118 || wrkMast.getStaNo()==119){
                        if (wrkMast.getStaNoCar$()==118 || wrkMast.getStaNoCar$()==119){
                            RgvOneSign rgvOneSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","oneSign"));
                            if (rgvOneSign.getRgvOneSign()==1){
                                continue;
@@ -222,11 +240,11 @@
                            if (wrkDetls.size()!=0){
                                String origin = wrkDetls.get(0).getOrigin();
                                if (origin.equals("1")){
                                    if (!STA_WORK_CU_CAR_FOUR.contains(wrkMast.getStaNo())){
                                    if (!STA_WORK_CU_CAR_FOUR.contains(wrkMast.getStaNoCar$())){
                                        continue;
                                    }
                                }else {
                                    if (!STA_WORK_CU_CAR_THREE.contains(wrkMast.getStaNo())){
                                    if (!STA_WORK_CU_CAR_THREE.contains(wrkMast.getStaNoCar$())){
                                        continue;
                                    }
                                }
@@ -262,13 +280,32 @@
                        if(Cools.isEmpty(wrkMast)){
                            continue;
                        }
//                        if (wrkMast.getStaNo()==1901){
//                            boolean sign1901 = false;
//                            List<WrkDetl> wrkDetlList1901 = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
//                            for (WrkDetl wrkDetl : wrkDetlList1901){
//                                if (wrkDetl.getBrandArmType$()==999){
//                                    sign1901 = true;
//                                    break;
//                                }
//                            }
//                            if (sign1901){
//                                continue;
//                            }
//                        }
                        if (wrkMast.getIoType()!=101 && wrkMast.getIoType()!=103){
                            continue;
                        }
                        if (wrkMast.getWrkSts()!=14 && wrkMast.getWrkSts()!=15){
                            continue;
                        }
                        Integer wrkMastStaNo = wrkMast.getStaNo();
                        Integer wrkMastStaNo = wrkMast.getStaNoCar$();
//                        if (wrkMastStaNo==1901){
//                            wrkMastStaNo = 122;
//                        }
//                        if ((wrkMastStaNo<118 || wrkMastStaNo>121) && wrkMastStaNo!=122){
//                            continue;
//                        }
                        if (wrkMastStaNo<118 || wrkMastStaNo>121){
                            continue;
                        }
@@ -292,12 +329,24 @@
                                continue;
                            }
                        }
                        int count = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", wrkMastStaNo).or().eq("sta_end", wrkMastStaNo));
                        if (count!=0){
                        int count1 = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", wrkMast.getStaNoCar$()));
                        if (count1!=0){
                            continue;
                        }
                        int countStart = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", staNo).or().eq("sta_end", staNo).or().eq("wrk_no", wrkMast.getWrkNo()));
                        if (countStart!=0){
                        int count2 = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_end", wrkMast.getStaNoCar$()));
                        if (count2!=0){
                            continue;
                        }
                        int countStart1 = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", staNo));
                        if (countStart1!=0){
                            continue;
                        }
                        int countStart2 = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_end", staNo));
                        if (countStart2!=0){
                            continue;
                        }
                        int countStart3 = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("wrk_no", wrkMast.getWrkNo()));
                        if (countStart3!=0){
                            continue;
                        }
                        RgvOneSign rgvOneSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","oneSign"));
@@ -321,6 +370,21 @@
                                        }
                                    }
                                }
                                if (staNoOther==1901){
                                    boolean sign1901 = false;
                                    for (Integer staNo1901 : STA_WORK_CU){
                                        BasDevp basDevp1901 = basDevpService.selectById(staNo1901);
                                        WrkMast wrkMast1901 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp1901.getWrkNo()));
                                        if (wrkMast1901.getStaNo()==1901){
                                            sign1901 = true;
                                            break;
                                        }
                                    }
                                    if (sign1901){
                                        continue;
                                    }
                                    staNoOther = 122;
                                }
                                int countOther = wrkMastStaService.selectCount(new EntityWrapper<WrkMastSta>().eq("sta_start", staNoOther).or().eq("sta_end", staNoOther));
                                if (countOther!=0){
@@ -330,6 +394,10 @@
                                if (!basDevpOther.getAutoing().equals("Y") || basDevpOther.getWrkNo()!=0 || basDevpOther.getLoading().equals("Y") || basDevpOther.getReportSign()!=0) {
                                    continue;
                                }
                                if (staNoOther==122){
                                    wrkMast.setSheetNo("3");
                                    staNoOther = 1901;
                                }
                                wrkMast.setStaNo(staNoOther);
                                wrkMastService.updateById(wrkMast);
                                log.info("工作号"+wrkMast.getWrkNo()+"修改目标站为:"+staNoOther+";原目标站为:"+wrkMastStaNo);