自动化立体仓库 - WMS系统
cl
3 天以前 c664c49f8e211b7b791a5ff1e63cda53c1b1264e
src/main/java/com/zy/asrs/task/handler/AutoReplenishmentHandler.java
@@ -12,6 +12,7 @@
import com.zy.asrs.utils.Utils;
import com.zy.common.model.enums.WorkNoType;
import com.zy.common.service.CommonService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -20,6 +21,7 @@
import java.util.*;
import java.util.stream.Collectors;
@Slf4j
@Service
public class AutoReplenishmentHandler extends AbstractHandler<String> {
@@ -75,6 +77,7 @@
            List<LocDetl> locDetls = locDetlService.selectByLocNo(locNo);
            createWrkDetl(locDetls, wrkMast,order.getOrderNo(),now);
            //修改库位状态
            log.warn("Flag - 24,{}库位状态变更,{} => {}", locMast.getLocNo(), locMast.getLocSts(), "R");
            locMast.setLocSts("R");
            locMastService.updateByLocNo(locMast);
        }
@@ -165,11 +168,19 @@
                if(locMast.getLocType1() == 3){
                    return false;
                }else {
                    return true;
                    //且检测该库位是否含没有料箱码的物料,如有有则不允许出库
//                    LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locNo)
//                            .andNew().eq("supp_code", "").or().isNull("supp_code"));
                    if(Cools.isEmpty(locDetlService.selectByLocWithoutContainer(locNo))){
                        return true;
                    }else {
                        return false;
                    }
                }
            }).collect(Collectors.toSet());
            //重新排序 并且检测该库位是否含没有料箱码的物料,如有有则不允许出库
            //重新排序
            Set<String> resort = resort(locNosSearch);
            for(String locNo : resort){
@@ -280,7 +291,7 @@
            WrkDetl wrkDetl = new WrkDetl();
            BeanUtils.copyProperties(locDetl,wrkDetl);
            wrkDetl.setZpallet(wrkMast.getBarcode());
            wrkDetl.setIoTime(now);
            wrkDetl.setIoTime(wrkMast.getIoTime());
            wrkDetl.setWrkNo(wrkMast.getWrkNo());
            //wrkDetl.setBatch(locDetl.getBatch());
            wrkDetl.setOrderNo(orderNo);