自动化立体仓库 - WMS系统
#
Junjie
2025-06-08 26dd2deb404109df6621e0b61b0ff9f06c83d9c3
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -17,6 +17,7 @@
import com.zy.common.model.DetlDto;
import com.zy.common.model.enums.WorkNoType;
import com.zy.common.service.CommonService;
import com.zy.common.utils.Synchro;
import com.zy.nc.service.NccJcQilibcBarcodeflowWmsService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -74,6 +75,12 @@
    private ManLocDetlService manLocDetlService;
    @Autowired
    private ManLocDetlMapper manLocDetlMapper;
    @Autowired
    private InventoryCheckOrderService inventoryCheckOrderService;
    @Autowired
    private InventoryCheckOrderDetlService inventoryCheckOrderDetlService;
    @Autowired
    private AdjDetlService adjDetlService;
@@ -573,7 +580,7 @@
        Date now = new Date();
        // 无单组托
        if (Cools.isEmpty(param.getOrderNo()) && Cools.isEmpty(param.getCombMats().get(0).getOrderNo())) {
        if (Cools.isEmpty(param.getCombMats().get(0).getOrderNo())) {
            // 生成入库通知档
            List<DetlDto> detlDtos = new ArrayList<>();
@@ -597,6 +604,7 @@
                }
                WaitPakin waitPakin = new WaitPakin();
                waitPakin.sync(mat);
                waitPakin.setWeight(detlDto.getWeight());
                waitPakin.setBatch(detlDto.getBatch());
                waitPakin.setZpallet(param.getBarcode());   // 托盘码
                waitPakin.setIoStatus("N");     // 入出状态
@@ -786,6 +794,7 @@
                            throw new CoolException(wrkMast.getWrkNo() + "盘点任务," + wrkDetl.getMatnr() + "商品," + wrkDetl.getBatch() + "批号修改数量失败");
                        }
                    }
                    //如果已经拣料回库,就需要取locNo字段
                    iterator.remove();
                    iterator1.remove();
                }
@@ -817,7 +826,21 @@
            if (!wrkDetlService.insert(wrkDetl)) {
                throw new CoolException("添加" + wrkMast.getWrkNo() + "盘点任务," + wrkDetl.getMatnr() + "商品," + wrkDetl.getBatch() + "批号任务明细失败");
            }
            String locNo = Cools.isEmpty(wrkMast.getLocNo()) ? wrkMast.getSourceLocNo() : wrkMast.getLocNo();
            List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("loc_no", locNo));
            for (InventoryCheckOrderDetl checkOrderDetl : checkOrderDetls) {
                if (wrkDetl.getMatnr().equals(checkOrderDetl.getMatnr()) && Cools.eq(wrkDetl.getBatch(), checkOrderDetl.getBatch())) {
                    checkOrderDetl.setCheckAnfme(wrkDetl.getAnfme());
                    checkOrderDetl.setStatus("2");
                } else {
                    InventoryCheckOrderDetl newDetl = new InventoryCheckOrderDetl();
                    Synchro.Copy(wrkDetl, newDetl);
                    newDetl.setAnfme(0D);
                    newDetl.setCheckAnfme(wrkDetl.getAnfme());
                    newDetl.setOrderNo(checkOrderDetl.getOrderNo());
                    newDetl.setStatus("2");
                }
            }
        }
        List<WrkDetl> wrkDetls1 = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
        for (WrkDetl wrkDetl : wrkDetls1) {