自动化立体仓库 - WMS系统
18516761980
2022-07-20 ea3f1ee47f365b2958cb9f6e1b93d7dde7496ba2
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -12,6 +12,7 @@
import com.zy.asrs.entity.param.OpenOrderPakinParam;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.MatUtils;
import com.zy.common.CodeRes;
import com.zy.common.constant.MesConstant;
import com.zy.common.entity.Parameter;
import com.zy.common.model.DetlDto;
@@ -80,6 +81,13 @@
                eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) {
            throw new CoolException(param.getBarcode() + "数据正在进行入库");
        }
        int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode()));
        int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode()));
        if (countLoc > 0 || countWrk > 0) {
            throw new CoolException("工作档/库存条码数据已存在===>>" + param.getBarcode());
        }
        Date now = new Date();
        // 无单组托
@@ -418,11 +426,15 @@
        BasDevp sta = basDevpService.checkSiteStatus(staNo);
        //根据订单号生成出库任务工作档
        Order order = orderService.selectOne(new EntityWrapper<Order>().eq("order_no", orderNo));
        if (order.getSettle() != 1 && order.getSettle() != 2){
            throw new CoolException("该订单已处理");
        }
        List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", orderNo));
        Date now = new Date();
        for(OrderDetl orderDetl : orderDetls){
            //查询所有库位状态为F的库位信息
            List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),null);
            List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(),orderDetl.getBatch(),null,null);
            if (locDetls.size() == 0) {
                throw new CoolException("库存中没有该物料");
            }
@@ -453,7 +465,7 @@
                order.setSettle(2L);
                order.setUpdateBy(userId);
                order.setUpdateTime(now);
                if(orderService.update(order, new EntityWrapper<Order>().eq("order_no", orderNo))){
                if(!orderService.update(order, new EntityWrapper<Order>().eq("order_no", orderNo))){
                    throw new CoolException("更新订单状态失败");
                }
                orderDetl.setWorkQty(orderDetl.getWorkQty() + curOutQty);
@@ -464,7 +476,7 @@
                if(!Cools.isEmpty(orderDetl.getBatch())){
                    wrapper.eq("batch", orderDetl.getBatch());
                }
                if(orderDetlService.update(orderDetl, wrapper)){
                if(!orderDetlService.update(orderDetl, wrapper)){
                    throw new CoolException("更新订单明细失败");
                }
            }