|
@@ -178,39 +178,45 @@ public class LogisticsInfosServiceImpl extends ServiceImpl<LogisticsInfosMapper,
|
|
|
//采购到货
|
|
|
{
|
|
|
List<LogisticsInfosVo> collect0 = records.stream().filter(item -> item.getBusinessType().equals(1)).collect(Collectors.toList());
|
|
|
- List<Long> ids0 = collect0.stream().map(LogisticsInfos::getId).collect(Collectors.toList());
|
|
|
- List<LogisticsProductInfo> byDeliverGoods = baseMapper.getLogisticsProductInfoByDeliverGoods(IWrapper.getWrapper()
|
|
|
- .in("lis.id", ids0)
|
|
|
- );
|
|
|
- Map<Long, List<LogisticsProductInfo>> byDeliverGoodsMap = byDeliverGoods.stream().collect(Collectors.groupingBy(LogisticsProductInfo::getId));
|
|
|
- for (LogisticsInfosVo logisticsInfosVo : collect0) {
|
|
|
- logisticsInfosVo.setLogisticsProductInfoList(byDeliverGoodsMap.getOrDefault(logisticsInfosVo.getId(), new ArrayList<>()));
|
|
|
+ List<Long> ids0 = collect0.stream().map(LogisticsInfos::getId).distinct().collect(Collectors.toList());
|
|
|
+ if(ObjectUtil.isNotEmpty(ids0)) {
|
|
|
+ List<LogisticsProductInfo> byDeliverGoods = baseMapper.getLogisticsProductInfoByDeliverGoods(IWrapper.getWrapper()
|
|
|
+ .in("lis.id", ids0)
|
|
|
+ );
|
|
|
+ Map<Long, List<LogisticsProductInfo>> byDeliverGoodsMap = byDeliverGoods.stream().collect(Collectors.groupingBy(LogisticsProductInfo::getId));
|
|
|
+ for (LogisticsInfosVo logisticsInfosVo : collect0) {
|
|
|
+ logisticsInfosVo.setLogisticsProductInfoList(byDeliverGoodsMap.getOrDefault(logisticsInfosVo.getId(), new ArrayList<>()));
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//京东数据
|
|
|
{
|
|
|
List<LogisticsInfosVo> collect1 = records.stream().filter(item -> item.getBusinessType().equals(2)).collect(Collectors.toList());
|
|
|
- List<Long> ids1 = collect1.stream().map(LogisticsInfos::getId).collect(Collectors.toList());
|
|
|
- List<LogisticsProductInfo> byStockWait = baseMapper.getLogisticsProductInfoByStockWait(IWrapper.getWrapper()
|
|
|
- .in("lis.id", ids1)
|
|
|
- );
|
|
|
- Map<Long, List<LogisticsProductInfo>> byStockWaitMap = byStockWait.stream().collect(Collectors.groupingBy(LogisticsProductInfo::getId));
|
|
|
- for (LogisticsInfosVo logisticsInfosVo : collect1) {
|
|
|
- logisticsInfosVo.setLogisticsProductInfoList(byStockWaitMap.getOrDefault(logisticsInfosVo.getId(), new ArrayList<>()));
|
|
|
+ List<Long> ids1 = collect1.stream().map(LogisticsInfos::getId).distinct().collect(Collectors.toList());
|
|
|
+ if(ObjectUtil.isNotEmpty(ids1)) {
|
|
|
+ List<LogisticsProductInfo> byStockWait = baseMapper.getLogisticsProductInfoByStockWait(IWrapper.getWrapper()
|
|
|
+ .in("lis.id", ids1)
|
|
|
+ );
|
|
|
+ Map<Long, List<LogisticsProductInfo>> byStockWaitMap = byStockWait.stream().collect(Collectors.groupingBy(LogisticsProductInfo::getId));
|
|
|
+ for (LogisticsInfosVo logisticsInfosVo : collect1) {
|
|
|
+ logisticsInfosVo.setLogisticsProductInfoList(byStockWaitMap.getOrDefault(logisticsInfosVo.getId(), new ArrayList<>()));
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//采购退货
|
|
|
{
|
|
|
List<LogisticsInfosVo> collect2 = records.stream().filter(item -> item.getBusinessType().equals(5)).collect(Collectors.toList());
|
|
|
- List<Long> ids2 = collect2.stream().map(LogisticsInfos::getId).collect(Collectors.toList());
|
|
|
- List<LogisticsProductInfo> byStockWait1 = baseMapper.getLogisticsProductInfoByStockWait(IWrapper.getWrapper()
|
|
|
- .in("lis.id", ids2)
|
|
|
- );
|
|
|
- Map<Long, List<LogisticsProductInfo>> byStockWaitMap1 = byStockWait1.stream().collect(Collectors.groupingBy(LogisticsProductInfo::getId));
|
|
|
- for (LogisticsInfosVo logisticsInfosVo : collect2) {
|
|
|
- logisticsInfosVo.setLogisticsProductInfoList(byStockWaitMap1.getOrDefault(logisticsInfosVo.getId(), new ArrayList<>()));
|
|
|
+ List<Long> ids2 = collect2.stream().map(LogisticsInfos::getId).distinct().collect(Collectors.toList());
|
|
|
+ if(ObjectUtil.isNotEmpty(ids2)) {
|
|
|
+ List<LogisticsProductInfo> byStockWait1 = baseMapper.getLogisticsProductInfoByStockWait(IWrapper.getWrapper()
|
|
|
+ .in("lis.id", ids2)
|
|
|
+ );
|
|
|
+ Map<Long, List<LogisticsProductInfo>> byStockWaitMap1 = byStockWait1.stream().collect(Collectors.groupingBy(LogisticsProductInfo::getId));
|
|
|
+ for (LogisticsInfosVo logisticsInfosVo : collect2) {
|
|
|
+ logisticsInfosVo.setLogisticsProductInfoList(byStockWaitMap1.getOrDefault(logisticsInfosVo.getId(), new ArrayList<>()));
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|