自动化立体仓库 - WMS系统
#
lsh
2025-04-15 f25bd904560faada2a00e93fbd8abab6be238f9c
src/main/java/com/zy/asrs/service/impl/BasCrnpServiceImpl.java
@@ -4,12 +4,13 @@
import com.core.common.Cools;
import com.core.exception.CoolException;
import com.zy.asrs.entity.BasCrnp;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.mapper.BasCrnpMapper;
import com.zy.asrs.service.BasCrnpService;
import com.zy.asrs.service.BasDevpService;
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
@@ -18,9 +19,8 @@
    @Autowired
    private WrkMastService wrkMastService;
    @Value("${store.bufferCount}")
    private int bufferCount;
    @Autowired
    private BasDevpService basDevpService;
    @Override
    public BasCrnp checkSiteStatus(Integer crnId) {
@@ -41,21 +41,29 @@
    public boolean checkSiteError(Integer crnNo, boolean pakin) {
        BasCrnp crnp = this.selectById(crnNo);
        if (Cools.isEmpty(crnp)) {
            log.error("{}号堆垛机不存在", crnNo);
//            log.error("{}号堆垛机不存在", crnNo);
            return false;
        }
        if (pakin) {
            //TODO控制入库暂存数,防止主干道堵塞,2022-5-24 ADD
            int storeCount = wrkMastService.getStoreCount(crnNo);
            int maxCount = bufferCount;
            if(crnNo==1){
                maxCount = 3;
            }
            if(storeCount >= maxCount){
                log.error("{}号堆垛机暂存数已满!", crnNo);
        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) {
            //控制入库暂存数,防止主干道堵塞,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);
@@ -67,18 +75,7 @@
                return false;
            }
        }
//        if (crnp.getCrnSts() != null) {
//            if (crnp.getCrnSts() == 10) {
//                log.error("{}号堆垛机状态为10.错误", crnNo);
//                return false;
//            }
//        }
        if (crnp.getCrnErr() != null) {
            if (crnp.getCrnErr() != 0) {
                log.error("{}号堆垛机异常,异常码{}", crnNo, crnp.getCrnErr());
                return false;
            }
        }
        return true;
    }
}