From 3b0c9e51e16619e59b58e4ce9870e8f69e89259b Mon Sep 17 00:00:00 2001 From: rk <94314517@qq.com> Date: 星期二, 21 十月 2025 17:42:11 +0800 Subject: [PATCH] 月台自动叫号处理问题 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java | 54 ++++++++++++++++++++++++++---------------------------- 1 files changed, 26 insertions(+), 28 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java index 16f88e7..157418c 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java @@ -2831,31 +2831,30 @@ //鍗曚竴鍝佺被 涓斿綋鍓嶅惊鐜湀鍙颁负鏁存墭鐩樻湀鍙� return platformJob; }else if(!Constants.equalsInteger(materialNameSet.size(),Constants.ONE)){ - if(Constants.equalsInteger(platform.getType(),Constants.ZERO)){ - //闈炲崟涓�鍝佺被 - //濡傛灉鍗曚釜杩愬崟鍖呭惈涓や釜鍙婁互涓婄殑鍝佽锛屽垯闇�瑕佸垽鏂槸鍚﹀瓨鍦ㄥ崟涓搧瑙勮秴杩� 500 浠朵笖璇ュ搧瑙勬暟閲忓崰鏁翠釜杩愬崟浠诲姟閲忕殑 60%鍙婁互涓婏紝鍒欒嚜鍔ㄥ垎閰嶈嚦鍦ㄦ暣鎵樼洏 鏈堝彴杩涜鏈堝彴锛� - BigDecimal total = platformWmsDetailList.stream().map(i->i.getIoQty()).reduce(BigDecimal.ZERO,BigDecimal::add); - BigDecimal compareTotal = new BigDecimal("500"); - if((total.multiply(new BigDecimal("0.6")).compareTo(compareTotal)>Constants.ZERO)){ - compareTotal = total.multiply(new BigDecimal("0.6")); - } - for (String name:materialNameSet) { - BigDecimal quanlity = platformWmsDetailList.stream().filter(i->i.getMaterialName().equals(name)).map(i->i.getIoQty()).reduce(BigDecimal.ZERO,BigDecimal::add); - if(quanlity.compareTo(compareTotal)>Constants.ZERO){ - //瓒呰繃瑙勫畾鏁伴噺 涓斿綋鍓嶆湀鍙颁负鏁存墭鏈堝彴 - return platformJob; - } + //闈炲崟涓�鍝佺被 + //濡傛灉鍗曚釜杩愬崟鍖呭惈涓や釜鍙婁互涓婄殑鍝佽锛屽垯闇�瑕佸垽鏂槸鍚﹀瓨鍦ㄥ崟涓搧瑙勮秴杩� 500 浠朵笖璇ュ搧瑙勬暟閲忓崰鏁翠釜杩愬崟浠诲姟閲忕殑 60%鍙婁互涓婏紝鍒欒嚜鍔ㄥ垎閰嶈嚦鍦ㄦ暣鎵樼洏 鏈堝彴杩涜鏈堝彴锛� + BigDecimal total = platformWmsDetailList.stream().map(i->i.getIoQty()).reduce(BigDecimal.ZERO,BigDecimal::add); + BigDecimal compareTotal = new BigDecimal("500"); + if((total.multiply(new BigDecimal("0.6")).compareTo(compareTotal)>Constants.ZERO)){ + compareTotal = total.multiply(new BigDecimal("0.6")); + } + Boolean flag = false; //鏄惁瀛樺湪澶т簬鎬昏繍鍗�60%鏁伴噺鐨勬暟鎹� + for (String name:materialNameSet) { + BigDecimal quanlity = platformWmsDetailList.stream().filter(i->i.getMaterialName().equals(name)).map(i->i.getIoQty()).reduce(BigDecimal.ZERO,BigDecimal::add); + if(quanlity.compareTo(compareTotal)>Constants.ZERO){ + flag = true; + break; } } + if(Constants.equalsInteger(platform.getType(),Constants.ZERO)&&flag){ + return platformJob; + }else if(Constants.equalsInteger(platform.getType(),Constants.ONE)&&!flag){ + return platformJob; + } } - return null; -// //寰幆WMS浠诲姟 鏈垎閰嶈嚦鏁存墭鐩樻湀鍙板垯鐩存帴鍒嗛厤鍒版暎鎵樼洏鏈堝彴 -// if(Constants.equalsInteger(platform.getType(),Constants.ONE)){ -// return platformJob; -// } }else{ //鐗╂祦杞﹂绾︾殑浠诲姟 鐩存帴鍒嗛厤 鏁f墭鐩樻湀鍙� - if(Constants.equalsInteger(platform.getType(),Constants.TWO)){ + if(Constants.equalsInteger(platform.getType(),Constants.ONE)){ return platformJob; } } @@ -2875,21 +2874,20 @@ } SystemDictData systemDictData = systemDictDataBiz.queryByCode(Constants.WMS_PARAM,Constants.IN_REPERTOTY_CODE); if(Objects.nonNull(systemDictData)){ - //鍒ゆ柇鏀剧疆浣嶇疆 - if(platformWmsDetailMapper.selectCount(new QueryWrapper<PlatformWmsDetail>().lambda().eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO) + Boolean flag = platformWmsDetailMapper.selectCount(new QueryWrapper<PlatformWmsDetail>().lambda().eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO) .eq(PlatformWmsDetail::getWmsJobId,platformWmsJob.getId()) .apply(" find_in_set(IN_REPERTOTY_CODE ,'"+systemDictData.getCode()+"')") - .eq(PlatformWmsDetail::getInRepertotyCode,"") .isNotNull(PlatformWmsDetail::getInRepertotyCode) - ) > Constants.ZERO && Constants.equalsInteger(platform.getType(),Constants.ONE)){ + ) > Constants.ZERO; + //鍒ゆ柇鍙戣揣鐐逛俊鎭� + if(flag && Constants.equalsInteger(platform.getType(),Constants.ONE)){ + return platformJob; + }else if(!flag && Constants.equalsInteger(platform.getType(),Constants.ZERO)){ return platformJob; } } - if(Constants.equalsInteger(platform.getType(),Constants.ZERO)){ - return platformJob; - } }else{ - //鐗╂祦杞﹂绾︾殑浠诲姟 鐩存帴鍒嗛厤 鏁f墭鐩樻湀鍙� + //鐗╂祦杞﹂绾︾殑浠诲姟 鐩存帴鍒嗛厤 鏁存墭鐩樻湀鍙� if(Constants.equalsInteger(platform.getType(),Constants.ZERO)){ return platformJob; } -- Gitblit v1.9.3