Commit ac4d66c0 by 陈健智

数据分析平台相关调整

parent b1d6693f
......@@ -2509,13 +2509,11 @@ public class MarkDataServiceImpl implements MarkDataService {
JSONObject res = new JSONObject();
try {
List<JSONObject> list = new ArrayList<>();
List<String> importantPlatforms = new ArrayList<>();
String projectId = UserThreadLocal.getProjectId();
dto.setProjectId(projectId);
for (String platformNames : Arrays.asList("微博", "微信", "抖音", "小红书", "今日头条", "网媒")) {
importantPlatforms.add(GlobalPojo.getPlatformIdByName(platformNames));
if (CollectionUtils.isEmpty(dto.getPlatforms())) {
dto.setPlatforms(Stream.of("微博", "微信", "抖音", "小红书", "今日头条", "网媒").map(GlobalPojo::getPlatformIdByName).collect(Collectors.toList()));
}
dto.setPlatforms(importantPlatforms);
Long total = getYuqingAnalyzeCount(dto);
// 平台聚合
SearchResponse searchResponse = platformAggSearchResponse(dto);
......@@ -2580,8 +2578,10 @@ public class MarkDataServiceImpl implements MarkDataService {
* @throws IOException
*/
private List<JSONObject> getPlatformPercentage(MarkSearchDTO dto) throws IOException {
if (CollectionUtils.isEmpty(dto.getPlatforms())) {
List<String> platforms = commonService.getQbjcPlatform().stream().map(jsonObject -> jsonObject.getString("id")).collect(Collectors.toList());
dto.setPlatforms(platforms);
}
List<JSONObject> list = new ArrayList<>();
// total
dto.setProjectId(UserThreadLocal.getProjectId());
......@@ -3093,17 +3093,15 @@ public class MarkDataServiceImpl implements MarkDataService {
String[] indexes = esClientDao.getIndexes();
dto.setProjectId(UserThreadLocal.getProjectId());
// query
if (Objects.nonNull(dto.getPlatforms()) && Objects.nonNull(dto.getPlatforms().get(0))){
dto.setPlatforms(Collections.singletonList(GlobalPojo.getPlatformIdByName(dto.getPlatforms().get(0))));
}
BoolQueryBuilder query = yuqingAnalyzeQuery(dto);
if (Objects.equals("其他", dto.getPlatforms().get(0))){
List<String> platforms = getPlatformPercentage(dto).stream().map(json -> json.getString("platform")).collect(Collectors.toList());
List<String> allPlatforms = GlobalPojo.PLATFORMS.stream().map(MessagePlatform::getName).collect(Collectors.toList());
allPlatforms.removeAll(platforms);
dto.setPlatforms(allPlatforms.stream().map(GlobalPojo::getPlatformIdByName).collect(Collectors.toList()));
query = yuqingAnalyzeQuery(dto);
}else {
dto.setPlatforms(Collections.singletonList(GlobalPojo.getPlatformIdByName(dto.getPlatforms().get(0))));
}
BoolQueryBuilder query = yuqingAnalyzeQuery(dto);
// sort
FieldSortBuilder sort = SortBuilders.fieldSort("time").order(SortOrder.DESC);
// response
......@@ -3217,9 +3215,12 @@ public class MarkDataServiceImpl implements MarkDataService {
private Map<String, List<LineVO>> getPlatformSpreadTendency(MarkSearchDTO dto) throws IOException{
Map<String, List<LineVO>> res = new HashMap<>(4);
// 平台
List<String> platforms = new ArrayList<>();
for (String platformNames : Arrays.asList("微博", "微信", "抖音", "小红书")) {
platforms.add(GlobalPojo.getPlatformIdByName(platformNames));
// List<String> platforms = new ArrayList<>();
// for (String platformNames : Arrays.asList("微博", "微信", "抖音", "小红书")) {
// platforms.add(GlobalPojo.getPlatformIdByName(platformNames));
// }
if (CollectionUtils.isEmpty(dto.getPlatforms())){
dto.setPlatforms(Stream.of("微博", "微信", "抖音", "小红书").map(GlobalPojo::getPlatformIdByName).collect(Collectors.toList()));
}
String[] indexes = esClientDao.getIndexes();
// 聚合请求
......@@ -3231,7 +3232,6 @@ public class MarkDataServiceImpl implements MarkDataService {
}else {
daysAggregationBuilder = AggregationBuilders.dateHistogram("timeAgg").field("time").calendarInterval(DateHistogramInterval.DAY);
}
dto.setPlatforms(platforms);
// query
BoolQueryBuilder query = yuqingAnalyzeQuery(dto);
// response
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment