|  |  |  | 
|---|
|  |  |  | import com.zy.asrs.service.WrkMastService; | 
|---|
|  |  |  | import lombok.extern.slf4j.Slf4j; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Value; | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Slf4j | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public boolean checkSiteError(Integer crnNo, boolean pakin) { | 
|---|
|  |  |  | BasCrnp crnp = this.selectById(crnNo); | 
|---|
|  |  |  | if (Cools.isEmpty(crnp)) { | 
|---|
|  |  |  | log.error("{}号堆垛机不存在", crnNo); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (crnp.getCrnErr() != null && crnp.getCrnSts() != 3){ | 
|---|
|  |  |  | log.error("{}号堆垛机非自动连线状态,无法作业!", crnNo); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (crnp.getCrnErr() != null) { | 
|---|
|  |  |  | if (crnp.getCrnErr() != 0) { | 
|---|
|  |  |  | log.error("{}号堆垛机异常,异常码{}", crnNo, crnp.getCrnErr()); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (pakin) { | 
|---|
|  |  |  | //TODO控制入库暂存数,防止主干道堵塞,2022-5-24 ADD | 
|---|
|  |  |  | int staNo = 0; | 
|---|
|  |  |  | switch (crnNo){ | 
|---|
|  |  |  | case 1: | 
|---|
|  |  |  | staNo = 123; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 2: | 
|---|
|  |  |  | staNo = 121; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 3: | 
|---|
|  |  |  | staNo = 119; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 4: | 
|---|
|  |  |  | staNo = 117; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 5: | 
|---|
|  |  |  | staNo = 115; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 6: | 
|---|
|  |  |  | staNo = 113; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 7: | 
|---|
|  |  |  | staNo = 111; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 8: | 
|---|
|  |  |  | staNo = 109; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 9: | 
|---|
|  |  |  | staNo = 107; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 10: | 
|---|
|  |  |  | staNo = 105; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 11: | 
|---|
|  |  |  | staNo = 103; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 12: | 
|---|
|  |  |  | staNo = 101; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | int maxCount = 2; | 
|---|
|  |  |  | BasDevp devp = basDevpService.selectById(staNo); | 
|---|
|  |  |  | if(!Cools.isEmpty(devp)){ | 
|---|
|  |  |  | maxCount = devp.getInQty(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | int storeCount = wrkMastService.getStoreCount(crnNo); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if(storeCount >= maxCount){ | 
|---|
|  |  |  | log.error("{}号堆垛机暂存数已满!", crnNo); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if ("N".equals(crnp.getInEnable())) { | 
|---|
|  |  |  | log.error("{}号堆垛机不可入", crnNo); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | if ("N".equals(crnp.getOutEnable())) { | 
|---|
|  |  |  | log.error("{}号堆垛机不可出", crnNo); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //        BasCrnp crnp = this.selectById(crnNo); | 
|---|
|  |  |  | //        if (Cools.isEmpty(crnp)) { | 
|---|
|  |  |  | ////            log.error("{}号堆垛机不存在", crnNo); | 
|---|
|  |  |  | //            return false; | 
|---|
|  |  |  | //        } | 
|---|
|  |  |  | //        if (crnp.getCrnErr() != null && crnp.getCrnSts() != 3){ | 
|---|
|  |  |  | //            log.error("{}号堆垛机非自动连线状态,无法作业!", crnNo); | 
|---|
|  |  |  | //            return false; | 
|---|
|  |  |  | //        } | 
|---|
|  |  |  | //        if (crnp.getCrnErr() != null) { | 
|---|
|  |  |  | //            if (crnp.getCrnErr() != 0 && crnp.getCrnErr() != 10 && crnp.getCrnErr() != 6) { | 
|---|
|  |  |  | //                log.error("{}号堆垛机异常,异常码{}", crnNo, crnp.getCrnErr()); | 
|---|
|  |  |  | //                return false; | 
|---|
|  |  |  | //            } | 
|---|
|  |  |  | //        } | 
|---|
|  |  |  | // | 
|---|
|  |  |  | //        if (pakin) { | 
|---|
|  |  |  | //            //控制入库暂存数,防止主干道堵塞,2022-10-23 ADD  未实装 | 
|---|
|  |  |  | ////            int maxCount = 2; | 
|---|
|  |  |  | ////            int storeCount = wrkMastService.getStoreCount(crnNo); | 
|---|
|  |  |  | //// | 
|---|
|  |  |  | ////            if(storeCount >= maxCount){ | 
|---|
|  |  |  | ////                log.error("{}号堆垛机暂存数已满!", crnNo); | 
|---|
|  |  |  | ////                return false; | 
|---|
|  |  |  | ////            } | 
|---|
|  |  |  | // | 
|---|
|  |  |  | //            if ("N".equals(crnp.getInEnable())) { | 
|---|
|  |  |  | //                log.error("{}号堆垛机不可入", crnNo); | 
|---|
|  |  |  | //                return false; | 
|---|
|  |  |  | //            } | 
|---|
|  |  |  | //        } else { | 
|---|
|  |  |  | //            if ("N".equals(crnp.getOutEnable())) { | 
|---|
|  |  |  | //                log.error("{}号堆垛机不可出", crnNo); | 
|---|
|  |  |  | //                return false; | 
|---|
|  |  |  | //            } | 
|---|
|  |  |  | //        } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return true; | 
|---|
|  |  |  | } | 
|---|