|
@@ -327,6 +327,8 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
|
|
|
}
|
|
|
|
|
|
public List<IndexBaseMonthData> getOrganIndexMonthData(List<IndexBaseMonthData> organIndexMonthData,IndexDataType indexDataType,Set<Integer> queryOrganIds) {
|
|
|
+ if(CollectionUtils.isEmpty(queryOrganIds)) queryOrganIds = new HashSet<>();
|
|
|
+ Set<Integer> currentOrganIds = new HashSet<>(queryOrganIds);
|
|
|
List<IndexBaseMonthData> dataList = new ArrayList<>();
|
|
|
if (!CollectionUtils.isEmpty(organIndexMonthData)){
|
|
|
List<IndexBaseMonthData> collect = organIndexMonthData.stream().filter(e -> e.getOrganId() != null && e.getOrganId() != 0).collect(Collectors.toList());
|
|
@@ -338,16 +340,14 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
|
|
|
Function<Integer,IndexBaseMonthData> fun = (organId) -> new IndexBaseMonthData(organId,organMap.get(organId),indexDataType,
|
|
|
listMap.get(organId).stream().map(e->e.getPercent()).reduce(BigDecimal.ZERO,BigDecimal::add));
|
|
|
dataList = organIds.stream().map(fun::apply).collect(Collectors.toList());
|
|
|
- if(!CollectionUtils.isEmpty(queryOrganIds)){
|
|
|
- queryOrganIds.removeAll(organIds);
|
|
|
- }
|
|
|
+ currentOrganIds.removeAll(organIds);
|
|
|
}
|
|
|
}
|
|
|
- if(!CollectionUtils.isEmpty(queryOrganIds)){
|
|
|
+ if(!CollectionUtils.isEmpty(currentOrganIds)){
|
|
|
Map<Integer, String> organMap = organizationService.getMap("organization", "id_", "name_",
|
|
|
- queryOrganIds, TenantContextHolder.getTenantId(), Integer.class, String.class);
|
|
|
+ currentOrganIds, TenantContextHolder.getTenantId(), Integer.class, String.class);
|
|
|
Function<Integer,IndexBaseMonthData> fun1 = (organId) -> new IndexBaseMonthData(organId,organMap.get(organId),indexDataType,BigDecimal.ZERO);
|
|
|
- dataList.addAll(queryOrganIds.stream().map(fun1::apply).collect(Collectors.toList()));
|
|
|
+ dataList.addAll(currentOrganIds.stream().map(fun1::apply).collect(Collectors.toList()));
|
|
|
}
|
|
|
List<IndexBaseMonthData> baseMonthData = dataList.stream().sorted(Comparator.comparing(IndexBaseMonthData::getPercent,Comparator.reverseOrder())).collect(Collectors.toList());
|
|
|
return baseMonthData;
|