From b6e0bec71de45cad64e9de14977770053be7e010 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期二, 10 六月 2025 19:28:02 +0800 Subject: [PATCH] 流程更改 --- src/main/java/com/zy/common/web/WcsController.java | 60 +++++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 39 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java index bbe9aa6..78c0638 100644 --- a/src/main/java/com/zy/common/web/WcsController.java +++ b/src/main/java/com/zy/common/web/WcsController.java @@ -92,18 +92,29 @@ if(param.getIoType() == 1) { List<SearchLocParam.WantBucket> wantBucketFlag = param.getWantBucketFlag(); - Optional<SearchLocParam.WantBucket> first = wantBucketFlag.stream().filter(wantBucket -> wantBucket.getBucketType() == param.getBucketType()).findFirst(); - if (first.isPresent()) { - if(waitPakin == null) { - return R.error("鍏ュ簱閫氱煡妗d负绌�"); - } else { - dto = startupFullPutStore(param,waitPakin,first.get()); // 鐩翠緵缃愯绾夸换鍔� - if (dto != null) { - log.info("WCS鍏ュ簱鐩翠緵缃愯绾挎帴鍙h繑鍙�:{},鎵樼洏鐮�:{}", dto, param.getBarcode()); - return R.ok().add(dto); + for(SearchLocParam.WantBucket wantBucket: wantBucketFlag) { + if(wantBucket.getBucketType() != 0 && wantBucket.getBucketType() == param.getBucketType()) { // 缃愯绾挎湁瑕佹《淇″彿骞朵笖褰撳墠妗舵槸缃愯绾胯鐨勬《 + if(waitPakin == null) { + return R.error("鍏ュ簱閫氱煡妗d负绌�"); + } else { + int count = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("wrk_sts", 2).eq("sta_no", wantBucket.getSite())); + if(wantBucket.getSite() == 1071 && count < 12 || wantBucket.getSite() == 1064 && count < 10 || wantBucket.getSite() == 1078 && count < 12) { + dto = startupFullPutStore(param,waitPakin,wantBucket); // 鐩翠緵缃愯绾夸换鍔� + if (dto != null) { + log.info("WCS鍏ュ簱鐩翠緵缃愯绾挎帴鍙h繑鍙�:{},鎵樼洏鐮�:{}", dto, param.getBarcode()); + return R.ok().add(dto); + } + } else { + log.warn("鐩翠緵鐏岃绾夸换鍔″凡婊★紝鍏ユ垚鍝佸簱,鍏ュ簱鐩爣绔欑偣{}锛屼换鍔℃暟锛歿}",wantBucket.getSite(),count); + } } } } + } + // 1.姣嶆墭鐩橈紝2瀛愭墭鐩� + int flag = 0; + if(param.getIoType() == 10) { + flag = param.getBucketType() == 21 ? 1 : 2 ; } switch (param.getIoType()) { @@ -112,7 +123,7 @@ dto = startupFullPutStore(param.getSourceStaNo(), param.getBarcode(), locTypeDto, waitPakin, param.isTailSupportFlag()); break; case 10://绌烘墭鐩樺叆搴� - dto = emptyPlateIn(param.getSourceStaNo(), locTypeDto, param.getBarcode(), 1); + dto = emptyPlateIn(param.getSourceStaNo(), locTypeDto, param.getBarcode(), 1, flag); break; default: break; @@ -147,9 +158,15 @@ // 鑾峰彇绯荤粺閰嶇疆锛岀湅鎴愬搧缃愯瀹屾垚鏄惁鐩存帴鍑哄埌鍙戣揣鍙� Config config = configService.selectConfigByCode("gzwcfh"); - String fhFlag = ""; + boolean fhFlag = false; if (config != null && config.getStatus() == 1 && !Cools.isEmpty(config.getValue())) { - fhFlag = config.getValue(); + String[] split = config.getValue().split("="); + for(String item : split) { + if(param.getMatnr().equals(item)) { + fhFlag = true; + break; + } + } } Date now = new Date(); @@ -200,7 +217,7 @@ // dto.setSourceStaNo(wrkMast.getSourceStaNo()); // dto.setStaNo(wrkMast.getStaNo()); // } else - if(param.getMatnr().equals(fhFlag)) { // 鐩存帴鍙戣揣 + if(fhFlag) { // 鐩存帴鍙戣揣 // 鐢熸垚宸ヤ綔妗� ------------------------------------------------------ WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(commonService.getWorkNo(0)); @@ -694,13 +711,13 @@ // 婧愮珯鐐圭姸鎬佹娴� BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getSourceStaNo(), true); - // 鍒ゆ柇绌烘《搴撴湁澶氬皯杩欑妗跺瀷 - int count = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("matnr", param.getBucketType()).where("CAST(SUBSTRING(loc_no, 1, 2) as int) >= 9")); - - // 灏忎簬10涓垯鐩翠緵缃愯绾匡紝閬垮厤鍏ョ┖妗跺簱鍚庡湪鍑哄簱 - if (count > 10) { - return null; - } +// // 鍒ゆ柇绌烘《搴撴湁澶氬皯杩欑妗跺瀷 +// int count = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("matnr", param.getBucketType()).where("CAST(SUBSTRING(loc_no, 1, 2) as int) >= 9")); +// +// // 灏忎簬10涓垯鐩翠緵缃愯绾匡紝閬垮厤鍏ョ┖妗跺簱鍚庡湪鍑哄簱 +// if (count > 10) { +// return null; +// } StartupDto dto = commonService.getLocNo(param,wantBucket.getSite()); int workNo = dto.getWorkNo(); @@ -762,7 +779,7 @@ } @Transactional - public StartupDto emptyPlateIn(Integer devpNo, LocTypeDto locTypeDto, String barcode, int locArea) { + public StartupDto emptyPlateIn(Integer devpNo, LocTypeDto locTypeDto, String barcode, int locArea, int flag) { // 婧愮珯鐐圭姸鎬佹娴� BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true); // 妫�绱㈠簱浣� @@ -786,6 +803,7 @@ wrkMast.setExitMk("N"); // 閫�鍑� wrkMast.setEmptyMk("Y"); // 绌烘澘 wrkMast.setLinkMis("Y"); + wrkMast.setPltType(flag); // 绌烘嫋绫诲瀷 // wrkMast.setBarcode(barcode); // wrkMast.setCtnType(sourceStaNo.getCtnType()); // 瀹瑰櫒绫诲瀷 // 鎿嶄綔浜哄憳鏁版嵁 -- Gitblit v1.9.1