自动化立体仓库 - WMS系统
#
yxFwq
5 天以前 d60e84cbedb554555578f071de95c4a8049183db
src/main/java/com/zy/asrs/task/WrkMastSplitTwinInItScheduler.java
@@ -5,6 +5,7 @@
import com.zy.asrs.entity.*;
import com.zy.asrs.service.*;
import com.zy.asrs.task.handler.WrkMastSplitTwinInItHandler;
import com.zy.asrs.utils.TimeCalculatorUtils;
import com.zy.common.model.enums.CrnStnType;
import com.zy.common.model.enums.WrkMastExecuteType;
import org.slf4j.Logger;
@@ -14,6 +15,7 @@
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
@@ -24,6 +26,7 @@
public class WrkMastSplitTwinInItScheduler {
    private static final Logger log = LoggerFactory.getLogger(WorkMastScheduler.class);
//    private static  Integer signBigTurn = 0;
    @Autowired
    private WrkMastSplitTwinInItHandler wrkMastSplitTwinInItHandler;
@@ -98,6 +101,7 @@
                            case 2:
                                List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", 12L).eq("crn_no", crnNo));
                                if (wrkMasts.size()==1){
                                    WrkMast wrkMast1 = wrkMasts.get(0);
                                    wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", 11L).eq("crn_no", crnNo));
                                    if (wrkMasts.isEmpty()){
                                        if (basCrnp.getCrnStatusOne() != 20) {//堆垛机工位1有物待作业
@@ -110,28 +114,66 @@
                                        break;
                                    }else {
                                        for (WrkMast wrkMast:wrkMasts){
                                            if (wrkMast.getStaNo()>309){
                                                int wrkCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 110).gt("sta_no", 309).lt("sta_no", 314).gt("wrk_sts",11L));
                                                if (wrkCount>=12){
                                                    continue;
                                                }
                                                RgvOneSign bigTurn = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","bigTurn"));
                                                if (Cools.isEmpty(bigTurn)){
                                                    continue;
                                                }
                                                if (bigTurn.getRgvOneSign()>13){
                                                    continue;
                                                }
                                                BasDevp basDevp = basDevpService.selectById(212);
                                                if (basDevp.getLoading().equals("Y")
                                                        || !basDevp.getAutoing().equals("Y")
                                                        || (!Cools.isEmpty(basDevp.getWrkNo()) && basDevp.getWrkNo()!=0) ){
                                                    continue;
                                                }
                                            }
//                                            if (wrkMast.getStaNoSign().equals(signBigTurn)){
//                                                continue;
//                                            }
//                                            if (wrkMast.booleanStaNoSign() && wrkMast.booleanStaNoSign()){
//                                                RgvOneSign rgvOneSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","LineUp"+wrkMast.getStaNo()));
//                                                if (Cools.isEmpty(rgvOneSign)){
//                                                    continue;
//                                                }
//                                                int wrkCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("sta_no", wrkMast.getStaNo()).eq("wrk_sts",12L));
//                                                if (wrkCount+rgvOneSign.getRgvOneSign()>2){
//                                                    continue;
//                                                }
//                                                int wrkCountGt = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("sta_no", wrkMast.getStaNo()).gt("wrk_sts",11L));
//                                                if (wrkCountGt > 2){
//                                                    continue;
//                                                }
////                                                int wrkCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 110).gt("sta_no", 309).lt("sta_no", 314).gt("wrk_sts",11L));
////                                                if (wrkCount>=12){
////                                                    continue;
////                                                }
////                                                RgvOneSign bigTurn = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","bigTurn"));
////                                                if (Cools.isEmpty(bigTurn)){
////                                                    continue;
////                                                }
////                                                if (bigTurn.getRgvOneSign()>13){
////                                                    continue;
////                                                }
////                                                BasDevp basDevp = basDevpService.selectById(wrkMast.getStaNoBying());
////                                                if (basDevp.getLoading().equals("Y")
////                                                        || !basDevp.getAutoing().equals("Y")
////                                                        || (!Cools.isEmpty(basDevp.getWrkNo()) && basDevp.getWrkNo()!=0) ){
////                                                    continue;
////                                                }
//                                            }
                                            wrkMastSplitTwinInItHandler.start(wrkMastSplitTwin,wrkMast,2);
//                                            signBigTurn++;
//                                            if (signBigTurn > 2){
//                                                signBigTurn = 0;
//                                            }
                                            break;
                                        }
                                        WrkMastSplitTwin wrkMastSplitTwin1 = wrkMastSplitTwinService.selectOne(new EntityWrapper<WrkMastSplitTwin>().eq("wrk_no", wrkMast1.getWrkNo()));
                                        if (!Cools.isEmpty(wrkMastSplitTwin1)){
                                            long differenceInSeconds = TimeCalculatorUtils.differenceInSeconds(wrkMastSplitTwin1.getUpdateTime(), new Date());
                                            if (differenceInSeconds>180 || (!Cools.isEmpty(wrkMast1.getStaNo()) && (wrkMast1.getStaNo().equals(312) || wrkMast1.getStaNo().equals(310)) )){
                                                if (basCrnp.getCrnStatusOne() != 20) {//堆垛机工位1有物待作业
                                                    break;
                                                }
                                                if (wrkMastSplitTwin.getWrkSts()!=2){
                                                    break;
                                                }
                                                wrkMastSplitTwinInItHandler.start(wrkMastSplitTwin);
                                                break;
                                            }
                                        }
//                                        signBigTurn++;
//                                        if (signBigTurn > 2){
//                                            signBigTurn = 0;
//                                        }
                                        break;
                                    }
                                }