From 276878563d3f2ce73ad16f4150e7b40a8e62f499 Mon Sep 17 00:00:00 2001 From: lsh <1> Date: 星期一, 15 七月 2024 14:42:07 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 86 +++++++++++++++++++++++++++++++++++++++--- 1 files changed, 79 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index 01ed37a..bee58b2 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -1141,14 +1141,14 @@ WaitPakin waitPakin = new WaitPakin(); waitPakin.sync(mat); waitPakin.setBatch(param.getBatch()); //鏈ㄧ缂栫爜 //鎵规 鍞竴鍊� 绠卞彿 -// waitPakin.setModel(matList.getModel()); //鍗峰彿 鍞竴鍊� + waitPakin.setModel(param.getTaskNo()); //鍗峰彿 鍞竴鍊� // waitPakin.setBrand(param.getBoxType()); //鏈ㄧ绫诲瀷 waitPakin.setZpallet(basDevp.getBarcode()); //鎵樼洏鐮� // waitPakin.setOrigin(matList.getPosition()); //鏈ㄧ鍦ㄦ墭鐩樹笂鐨勪綅缃� waitPakin.setWeight(param.getWeight()); //鍑�閲� // waitPakin.setVolume(matList.getRoughWeight()); //姣涢噸 // waitPakin.setPrice(matList.getRollExtent()); //闀垮害 -// waitPakin.setSpecs(String.valueOf(matList.getJoint())); //鎺ュご + waitPakin.setSpecs(param.getOrderNo()); //鍗曞彿 鍊熺敤 // waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵�� // waitPakin.setAnfme(matList.getAnfme()); // 鏁伴噺 waitPakin.setColor(param.getColor()); // 棰滆壊 @@ -1178,7 +1178,10 @@ throw new CoolException("鍙傛暟锛氬搧鍙� matnr涓虹┖"); }else if (Cools.isEmpty(param.getWeight())){ throw new CoolException("鍙傛暟锛氱墿鏂欓噸閲� wright涓虹┖"); + }else if (Cools.isEmpty(param.getBatchNum())){ + throw new CoolException("鍙傛暟锛氬嚭搴撴暟閲� batchNum涓虹┖"); } + ArrayList<LocDetl> locDetlArrayList = new ArrayList<>(); List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", param.getMatnr()).eq("weight", param.getWeight())); @@ -1192,13 +1195,79 @@ break; } } + + if (param.getDevNo() == 536){ + locDetlArrayList = new ArrayList<>(); + locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", param.getMatnr()) + .eq("weight", param.getWeight()) + .eq("specs", param.getOrderNo()) + .eq("model", param.getTaskNo())); + if (locDetls.isEmpty()){ + locDetls = new ArrayList<LocDetl>(); + } + for (LocDetl locDetl:locDetls){ + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetl.getLocNo())); + if (locMast.getLocSts().equals("F")){ + locDetlArrayList.add(locDetl); + break; + } + } + } if (locDetlArrayList.isEmpty()){ - throw new CoolException("鏈壘鍒扮鍚堟潯浠剁殑鐗╂枡鏄庣粏锛氬搧鍙�==銆媘atnr:"+param.getMatnr()+"锛涢噸閲�==銆媤right:"+param.getWeight()+"锛涢鑹�==銆媍olor:"+param.getColor()); + throw new CoolException("鏈壘鍒扮鍚堟潯浠剁殑鐗╂枡鏄庣粏锛氬搧鍙�==銆媘atnr:"+param.getMatnr()+"锛涢噸閲�==銆媤right:"+param.getWeight()); + } + Integer batchNum = param.getBatchNum(); + if (locDetlArrayList.size()<batchNum){//涓�5 + locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", param.getMatnr()) + .eq("specs", param.getOrderNo()) + .eq("model", param.getTaskNo()) + .lt("weight", param.getWeight()+5) + .and() + .gt("weight", param.getWeight()) + .orderBy("weight",true)); + if (locDetls.isEmpty()){ + locDetls = new ArrayList<LocDetl>(); + } + for (LocDetl locDetl:locDetls){ + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetl.getLocNo())); + if (locMast.getLocSts().equals("F")){ + locDetlArrayList.add(locDetl); + break; + } + } + } + if (locDetlArrayList.size()<batchNum){//涓�5 + locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", param.getMatnr()) + + .eq("specs", param.getOrderNo()) + .eq("model", param.getTaskNo()) + .gt("weight", param.getWeight()-5) + .and() + .lt("weight", param.getWeight()) + .orderBy("weight",false)); + + if (locDetls.isEmpty()){ + locDetls = new ArrayList<LocDetl>(); + } + for (LocDetl locDetl:locDetls){ + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetl.getLocNo())); + if (locMast.getLocSts().equals("F")){ + locDetlArrayList.add(locDetl); + break; + } + } + } + + if (locDetlArrayList.size()<batchNum){ + throw new CoolException("搴撳瓨鏁伴噺:"+locDetlArrayList.size()+"锛涘皬浜庨渶姹傛暟閲�:"+param.getBatchNum()); } for (LocDetl locDetl : locDetlArrayList){ + if (batchNum <= 0){ + return; + } StockOutParam stockOutParam = new StockOutParam(param,locDetl); workService.startupFullTakeStore(stockOutParam, userId); - return; + batchNum --; } } @@ -1263,15 +1332,15 @@ WaitPakin waitPakin = new WaitPakin(); waitPakin.sync(mat); -// waitPakin.setBatch(matList.getBatch()); //鏈ㄧ缂栫爜 //鎵规 鍞竴鍊� 绠卞彿 -// waitPakin.setModel(matList.getModel()); //鍗峰彿 鍞竴鍊� + waitPakin.setBatch(param.getBatch()); //鏈ㄧ缂栫爜 //鎵规 鍞竴鍊� 绠卞彿 + waitPakin.setModel(param.getTaskNo()); //鍗峰彿 鍞竴鍊� // waitPakin.setBrand(param.getBoxType()); //鏈ㄧ绫诲瀷 waitPakin.setZpallet(basDevp.getBarcode()); //鎵樼洏鐮� // waitPakin.setOrigin(matList.getPosition()); //鏈ㄧ鍦ㄦ墭鐩樹笂鐨勪綅缃� waitPakin.setWeight(param.getWeight()); //鍑�閲� // waitPakin.setVolume(matList.getRoughWeight()); //姣涢噸 // waitPakin.setPrice(matList.getRollExtent()); //闀垮害 -// waitPakin.setSpecs(String.valueOf(matList.getJoint())); //鎺ュご + waitPakin.setSpecs(param.getOrderNo()); //鍗曞彿 鍊熺敤 // waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵�� // waitPakin.setAnfme(matList.getAnfme()); // 鏁伴噺 waitPakin.setColor(param.getColor()); // 棰滆壊 @@ -1358,6 +1427,9 @@ wrkDetl.setWrkNo(wrkMast.getWrkNo()); wrkDetl.setIoTime(wrkMast.getIoTime()); wrkDetl.setMatnr(param.getMatnr()); + wrkDetl.setModel(param.getTaskNo()); + wrkDetl.setBatch(param.getBatch()); + wrkDetl.setSpecs(param.getOrderNo()); wrkDetl.setAnfme(1D); wrkDetl.setWeight(param.getWeight()); wrkDetl.setBarcode(basDevp.getBarcode()); -- Gitblit v1.9.1