自动化立体仓库 - WCS系统
#
lsh
2024-01-16 d9131e43a1fa8fe4d5e086d02d4037997cb13bde
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -196,6 +196,9 @@
                        if (jsonObject.getInteger("code").equals(200)) {
                            StartupDto dto = jsonObject.getObject("data", StartupDto.class);
                            LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, inSta.getLed());
                            barcodeThread.setBarcode("");
                            staProtocol.setWorkNo(dto.getWorkNo());
@@ -3125,9 +3128,16 @@
                // 只有当RGV空闲、自动,工位二有物//rgv可用
                if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                        && rgvProtocol.getModeType() == RgvModeType.AUTO
                        && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
                        && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
                        && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0
                        &&  (rgvProtocol.getLoaded2()==2  || rgvProtocol.getLoaded2()==3 ) ////0 无物;1 一层无物二层有物  ;2一层有物二层无物 (只能满放);3  1、2层都有物
                ) {
                    try {
                        WrkMast wrkMast1 = wrkMastMapper.selectPakOutStep3(122);
                        if (!Cools.isEmpty(wrkMast1)){
                            continue;
                        }
                        // 获取空板入库站信息
                        SearchLocParam param = new SearchLocParam();
@@ -3148,7 +3158,7 @@
                            if (!Cools.isEmpty(wrkMast) && wrkMast.getIoType()==10 && wrkMast.getWrkSts()==2){
                                WrkMastSta wrkMastSta = wrkMastStaMapper.selectByWrkNo(wrkMast.getWrkNo().longValue());
                                if (Cools.isEmpty(wrkMastSta)){
                                    WrkMastSta wrkMastSta1 = new WrkMastSta(new Date(),0);
                                    WrkMastSta wrkMastSta1 = new WrkMastSta(new Date(),wrkMast.getStaNo());
                                    wrkMastSta1.setWrkNo(wrkMast.getWrkNo().longValue());
                                    wrkMastSta1.setType(2);
                                    wrkMastSta1.setWrkType(6);//工作类型  1:取(叠盘)  2:拆盘  3:取放 5:满取  6:满放
@@ -3235,7 +3245,7 @@
//                ledCommand.setSourceStaNo(wrkMast.getSourceStaNo());
                if (wrkMast.getIoType() != 110 && wrkMast.getIoType() != 10) {
                    List<WrkDetl> wrkDetls = wrkDetlService.findByWorkNo(wrkMast.getWrkNo());
                    wrkDetls.forEach(wrkDetl -> ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getAnfme())));
                    wrkDetls.forEach(wrkDetl -> ledCommand.getMatDtos().add(new MatDto(wrkDetl)));
                }
                commands.add(ledCommand);
            }
@@ -4430,7 +4440,7 @@
                            continue;
                        }
                        boolean sign = false;
                        if (wrkMastSta.getStaStart()==0 && wrkMastSta.getStaEnd()!=0){//满放
                        if ( wrkMastSta.getStaEnd()!=0){//满放
                            sign = rgvPutEmptyFull(rgvProtocol.getRgvNo(),wrkMastSta);
                        }else {
                            continue;