自动化立体仓库 - WMS系统
pang.jiabao
2024-08-14 0dba85880e21d1a42fd2667590b5168c54bdc7e9
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -986,6 +986,17 @@
    }
    @Override
    public void updateBarcode() {
        List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "D"));
        for (int i = 0; i < locMasts.size(); i ++) {
            LocMast locMast = locMasts.get(i);
            locMast.setBarcode("a"+i);
            locMastService.updateById(locMast);
        }
        System.out.println("更新完了" + locMasts.size());
    }
    @Override
    @Transactional
    public R gwmsGenerateInventory(GwmsGenerateInventoryDto param) {
@@ -1051,39 +1062,43 @@
                WrkDetl wrkDetl = new WrkDetl();
                wrkDetl.setWrkNo(wrkMast.getWrkNo());
                obj.getRolls().forEach(roll -> {
//                Mat mat = matService.selectByMatnr(roll.getSpecs());
//                if (mat == null) {
//                    mat = new Mat();
//                    mat.setTagId(6L);
//                    mat.setMatnr(roll.getSpecs());
//                    mat.setMaktx(roll.getSpecs());
//                    mat.setSpecs(roll.getSpecs());
//                    mat.setStatus(1);
//                    mat.setCreateTime(now);
//                    mat.setUpdateTime(now);
//                    if (!matService.insert(mat)) {
//                        throw new CoolException("物料导入失败!");
//                    }
//                }
                    wrkDetl.setWrkNo(wrkMast.getWrkNo());
                    wrkDetl.setMatnr(roll.getSpecs()); // 规格
                    wrkDetl.setMaktx(roll.getSpecs()); //规格
                    wrkDetl.setBatch(roll.getBoxNo()); // 箱号
                    wrkDetl.setUnit(roll.getBoxNo()); // 箱号
                    wrkDetl.setModel(roll.getRollNo()); // 卷号
                    wrkDetl.setBrand(obj.getPackageGroupNo()); // 包装组号
                    wrkDetl.setZpallet(param.getBarcode()); // 托盘吗
                    wrkDetl.setZpallet(param.getBarcode()); // 托盘码
                    wrkDetl.setBarcode(param.getBarcode());
                    wrkDetl.setOrigin(obj.getBoxPos()); // 木箱在托盘位置
                    wrkDetl.setColor(obj.getBoxType()); // 木箱类型
                    wrkDetl.setManu(obj.getRollType()); // 管芯类型
                    wrkDetl.setSku(obj.getWideInWidth()); // 实测宽幅
                    wrkDetl.setItemNum(obj.getThickness()); // 生箔厚度
                    wrkDetl.setManuDate(obj.getFqTime()); // 分切下料时间
                    wrkDetl.setWeight(roll.getNetWeight()); // 净重
                    wrkDetl.setVolume(roll.getGrossWeight()); // 毛重
                    wrkDetl.setPrice(roll.getLength());
                    wrkDetl.setSpecs(String.valueOf(roll.getSplices()));
                    wrkDetl.setLength(roll.getLength()); // 长度
                    wrkDetl.setSpecs(String.valueOf(roll.getSplices())); // 接头
                    wrkDetl.setAnfme(1.0);
//                    wrkDetl.setThreeCode(null); // 通过mes或excel导入检测是否合格 0不合格,1 合格
                    wrkDetl.setIoTime(now);
                    wrkDetl.setAppeTime(now);
                    wrkDetl.setModiTime(now);
                    if (!wrkDetlService.insert(wrkDetl)) {
                        throw new CoolException("保存工作明细失败");
                    }
                    // 物料表备份一份
                    Mat mat = new Mat();
                    mat.sync(wrkDetl);
                    mat.setTagId(6L);
                    mat.setCreateTime(now);
                    mat.setUpdateTime(now);
                    if (!matService.insert(mat)) {
                        throw new CoolException("备份物料表失败");
                    }
                });
            }
        }
@@ -1116,6 +1131,9 @@
        }
        wrkMast.setWrkSts(2L);
        if(wrkMast.getIoType() == 10){
            wrkMast.setBarcode(param.getBarcode());
        }
        wrkMastService.updateById(wrkMast);
        return "请求成功";
@@ -1300,6 +1318,7 @@
        wrkMast.setStaNo(staDesc.getStnNo()); // 目标站
        wrkMast.setCrnNo(locMast.getCrnNo());
        wrkMast.setSourceLocNo(locMast.getLocNo()); // 源库位
        wrkMast.setBarcode(locMast.getBarcode());
        wrkMast.setFullPlt("N"); // 满板:Y
        wrkMast.setPicking("N"); // 拣料
        wrkMast.setExitMk("N"); // 退出