| | |
| | | |
| | | 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("入库通知档为空"); |
| | | } else { |
| | | dto = startupFullPutStore(param,waitPakin,first.get()); // 直供罐装线任务 |
| | | if (dto != null) { |
| | | log.info("WCS入库直供罐装线接口返参:{},托盘码:{}", 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("入库通知档为空"); |
| | | } 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入库直供罐装线接口返参:{},托盘码:{}", dto, param.getBarcode()); |
| | | return R.ok().add(dto); |
| | | } |
| | | } else { |
| | | log.warn("直供灌装线任务已满,入成品库,入库目标站点{},任务数:{}",wantBucket.getSite(),count); |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | // 获取系统配置,看成品罐装完成是否直接出到发货口 |
| | | 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(); |
| | |
| | | // 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)); |
| | |
| | | wrkMast.setIoPri(13D); // 优先级 |
| | | // wrkMast.setCrnNo(dto.getCrnNo()); |
| | | wrkMast.setSourceStaNo(param.getSourceStaNo()); |
| | | wrkMast.setStaNo(1024); |
| | | wrkMast.setStaNo(1016); |
| | | // wrkMast.setLocNo(dto.getLocNo()); |
| | | wrkMast.setBarcode(wrkMast1.getBarcode()); // 托盘码 |
| | | wrkMast.setFullPlt("Y"); // 满板:Y |
| | |
| | | // 源站点状态检测 |
| | | 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(); |