|
@ -23,10 +23,7 @@ import org.springframework.stereotype.Service; |
|
|
import org.springframework.util.CollectionUtils; |
|
|
import org.springframework.util.CollectionUtils; |
|
|
|
|
|
|
|
|
import java.text.SimpleDateFormat; |
|
|
import java.text.SimpleDateFormat; |
|
|
import java.util.Date; |
|
|
import java.util.*; |
|
|
import java.util.LinkedList; |
|
|
|
|
|
import java.util.List; |
|
|
|
|
|
import java.util.Map; |
|
|
|
|
|
import java.util.function.Function; |
|
|
import java.util.function.Function; |
|
|
import java.util.stream.Collectors; |
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
@ -91,11 +88,21 @@ public class GroupExtractServiceImpl implements GroupExtractService { |
|
|
List<ExtractGroupMemberActionRecordResultDTO> memberList = new LinkedList<>(); |
|
|
List<ExtractGroupMemberActionRecordResultDTO> memberList = new LinkedList<>(); |
|
|
if (!CollectionUtils.isEmpty(originGroupData)) { |
|
|
if (!CollectionUtils.isEmpty(originGroupData)) { |
|
|
List<GridAttributesResultDTO> gridList = dimGridService.getGridAttributes(param.getCustomerId(),originGroupData.stream().map(FactOriginGroupMainDailyDTO::getGridId).distinct().collect(Collectors.toList())); |
|
|
List<GridAttributesResultDTO> gridList = dimGridService.getGridAttributes(param.getCustomerId(),originGroupData.stream().map(FactOriginGroupMainDailyDTO::getGridId).distinct().collect(Collectors.toList())); |
|
|
|
|
|
List<String> missingGroups = new LinkedList<>(); |
|
|
if (!CollectionUtils.isEmpty(gridList)) { |
|
|
if (!CollectionUtils.isEmpty(gridList)) { |
|
|
Map<String, GridAttributesResultDTO> gridMap = |
|
|
Map<String, GridAttributesResultDTO> gridMap = |
|
|
gridList.stream().collect(Collectors.toMap(GridAttributesResultDTO::getGridId, Function.identity(), (key1, key2) -> key2)); |
|
|
gridList.stream().collect(Collectors.toMap(GridAttributesResultDTO::getGridId, Function.identity(), (key1, key2) -> key2)); |
|
|
if (!CollectionUtils.isEmpty(originGroupData)) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for(Iterator<FactOriginGroupMainDailyDTO> iter = originGroupData.iterator(); |
|
|
|
|
|
iter.hasNext();){ |
|
|
|
|
|
FactOriginGroupMainDailyDTO pointer = iter.next(); |
|
|
|
|
|
if(null == gridMap.get(pointer.getGridId())){ |
|
|
|
|
|
missingGroups.add(pointer.getId()); |
|
|
|
|
|
iter.remove(); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
originGroupData.forEach(group -> { |
|
|
originGroupData.forEach(group -> { |
|
|
GridAttributesResultDTO attr = gridMap.get(group.getGridId()); |
|
|
GridAttributesResultDTO attr = gridMap.get(group.getGridId()); |
|
|
if (null != attr) { |
|
|
if (null != attr) { |
|
@ -141,14 +148,15 @@ public class GroupExtractServiceImpl implements GroupExtractService { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
}); |
|
|
}); |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
factOriginGroupMainDailyService.insertExtractedData( |
|
|
factOriginGroupMainDailyService.insertExtractedData( |
|
|
count <= NumConstant.ZERO ? true : false, |
|
|
count <= NumConstant.ZERO ? true : false, |
|
|
param.getCustomerId(), |
|
|
param.getCustomerId(), |
|
|
param.getDateId(), |
|
|
param.getDateId(), |
|
|
originGroupData, |
|
|
originGroupData, |
|
|
memberList |
|
|
memberList, |
|
|
|
|
|
missingGroups |
|
|
); |
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|