自动化立体仓库 - WMS系统
#
野心家
2023-06-01 3c38ed3606ecbaac693baff568f8f66e635abc8d
src/main/java/com/zy/common/web/WcsController.java
@@ -68,32 +68,49 @@
        if (Cools.isEmpty(param.getSourceStaNo())) {
            return R.error("源站编号不能为空");
        }
        if (Cools.isEmpty(param.getBarcode())) {
            return R.error("托盘码不能为空");
        }
        boolean logs=true;
        TestMast testMast11=new TestMast();
        //如果pack码为空,查测试表
        if (Cools.isEmpty(param.getPackNo())) {
            return R.error("packNo不能为空");
            testMast11= testMastService.selectOne(new EntityWrapper<TestMast>()
                    .eq("user_id",param.getBarcode())//查托盘码
                    .eq("status",4));   //完成测试
            logs=false;
        }
        Date now = new Date();
        if (param.getSourceStaNo()==109){
        if (true){
            try{
                Mat mat = matService.selectByMatnr(param.getPackNo());
                Mat mat=new Mat();
                if(logs){
                    mat = matService.selectByMatnr(param.getPackNo());
                }else {
                    mat = matService.selectByMatnr(testMast11.getBarcode());
                }
                if (Cools.isEmpty(mat)){
                    return R.error("商品信息档案未查询到pack信息"+param.getPackNo());
                }
                WaitPakin waitPakin = new WaitPakin();
                waitPakin.setMatnr(mat.getMatnr());// Pack码
                waitPakin.setMaktx(mat.getMaktx());
                waitPakin.setZpallet(param.getBarcode());   //托盘码
                waitPakin.setIoStatus("N");     // 入出状态
                waitPakin.setAnfme(1.0);  // 数量
                waitPakin.setStatus("Y");    // 状态
                waitPakin.setManuDate(mat.getManuDate());
                waitPakin.setAppeUser(null);
                waitPakin.setAppeTime(now);
                waitPakin.setModiUser(null);
                waitPakin.setModiTime(now);
                waitPakin.setDeadWarn(mat.getDeadWarn());
                if (!waitPakinService.insert(waitPakin)) {
                    throw new CoolException("保存入库通知档失败");
                int i = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBarcode()));
                if(i==0){
                    waitPakin.setMatnr(mat.getMatnr());// Pack码
                    waitPakin.setMaktx(mat.getMaktx());
                    waitPakin.setZpallet(param.getBarcode());   //托盘码
                    waitPakin.setIoStatus("N");     // 入出状态
                    waitPakin.setAnfme(1.0);  // 数量
                    waitPakin.setStatus("Y");    // 状态
                    waitPakin.setManuDate(mat.getManuDate());
                    waitPakin.setAppeUser(null);
                    waitPakin.setAppeTime(now);
                    waitPakin.setModiUser(null);
                    waitPakin.setModiTime(now);
                    waitPakin.setDeadWarn(mat.getDeadWarn());
                    if (!waitPakinService.insert(waitPakin)) {
                        throw new CoolException("保存入库通知档失败");
                    }
                }
            }catch (Exception e){
@@ -105,9 +122,9 @@
                return R.error("条码不能为空");
            }
            waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBarcode()));
            if (Cools.isEmpty(waitPakins) || waitPakins.size()!=1) {
            if (Cools.isEmpty(waitPakins) || waitPakins.size() !=1) {
                WrkMast wrkMast = wrkMastService.selectByBarcode(param.getBarcode());
                if (wrkMast != null || waitPakins.size()!=1) {
                if (wrkMast != null || waitPakins.size() !=1) {
                    return R.parse("600-重复组托");
                }
                return R.parse(CodeRes.NO_COMB_700);
@@ -200,13 +217,13 @@
            if (!wrkDetlService.insert(wrkDetl)) {
                throw new CoolException("保存工作明细失败");
            }
            TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>().eq("barcode", wrkMast.getBarcode()));
            TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>()
                    .eq("barcode", wrkDetl.getMatnr()));//pack码
            if (Cools.isEmpty(testMast)){
                //生成测试档
                testMast=new TestMast();
                testMast.setChannel(locMast.getChannel());
                testMast.setUserId(locMast.getLocNo());
                testMast.setUserId(wrkMast.getBarcode());//托盘码
                testMast.setStatus(1);
                testMast.setBarcode(wrkDetl.getMatnr());
                testMast.setLocNo(locMast.getLocNo());
@@ -216,7 +233,13 @@
                    throw new CoolException(wrkDetl.getMatnr()+"生成测试档失败");
                }
            }else {
                throw new CoolException(wrkDetl.getMatnr()+"已存在测试档");
                testMast.setBarcode(wrkDetl.getMatnr());
                testMast.setChannel(locMast.getChannel());
                testMast.setLocNo(locMast.getLocNo());
                testMast.setAppeTime(now);
                if(!testMastService.update(testMast,new EntityWrapper<TestMast>().eq("barcode", wrkDetl.getMatnr()))){
                    throw new CoolException(wrkDetl.getMatnr()+"更新测试档失败");
                }
            }
        });
        // 更新入库通知档 ioStatus ===>> Y