自动化立体仓库 - WMS系统
ZY
2025-04-01 b4fc2f5e7ce5f0e984f406c4bca23dd5044fdcec
组托限制相同物料
2个文件已修改
29 ■■■■ 已修改文件
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
@@ -15,9 +15,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -68,6 +66,16 @@
        if(!Cools.isEmpty(agvWrkMastService.selectByContainerCode(param.getBarcode()))){
            throw new CoolException(param.getBarcode() + "料箱码已存在AGV工作档中");
        }
        List<CombParam.CombMat> combMats = param.getCombMats();
        Map<String, String> map = new HashMap<>();
        for (CombParam.CombMat combMat : combMats) {
            String batch = Cools.isEmpty(combMat.getBatch()) ? "" : combMat.getBatch();
            if (!Cools.isEmpty(map.get(combMat.getMatnr() + batch))) {
                throw new CoolException(param.getBarcode() + "组托的物料明细重复,请检查是否重复扫码");
            } else {
                map.put(combMat.getMatnr() + batch, combMat.getMatnr());
            }
        }
        if (Cools.isEmpty(param.getOrderNo())) {
            //无单组托
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -22,10 +22,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
 * Created by vincent on 2022/4/9
@@ -525,6 +522,16 @@
            callApiLogSaveMES(param, null, param.getBarcode() + ":工作明细档已存在此数据", false);
            throw new CoolException("工作明细档已存在此数据===>>" + param.getBarcode());
        }
        List<CombParam.CombMat> combMats = param.getCombMats();
        Map<String, String> map = new HashMap<>();
        for (CombParam.CombMat combMat : combMats) {
            String batch = Cools.isEmpty(combMat.getBatch()) ? "" : combMat.getBatch();
            if (!Cools.isEmpty(map.get(combMat.getMatnr() + batch))) {
                throw new CoolException(param.getBarcode() + "组托的物料明细重复,请检查是否重复扫码");
            } else {
                map.put(combMat.getMatnr() + batch, combMat.getMatnr());
            }
        }
        Date now = new Date();
        try{