Commit aefac40b by 陈健智

定制舆情分析视频图文区分逻辑调整

parent cd53b006
...@@ -228,4 +228,9 @@ public class MarkSearchDTO { ...@@ -228,4 +228,9 @@ public class MarkSearchDTO {
*/ */
@ApiModelProperty(value = "聚合标题") @ApiModelProperty(value = "聚合标题")
private String aggTitle; private String aggTitle;
/**
* 定制舆情分析数据类型 视频/图文
*/
@ApiModelProperty(value = "数据类型:视频/图文")
private Boolean isVideo;
} }
...@@ -3081,7 +3081,7 @@ public class MarkDataServiceImpl implements MarkDataService { ...@@ -3081,7 +3081,7 @@ public class MarkDataServiceImpl implements MarkDataService {
long total = getYuqingAnalyzeCount(dto, null); long total = getYuqingAnalyzeCount(dto, null);
jsonObject.put("total", total); jsonObject.put("total", total);
// 视频舆情总量 // 视频舆情总量
dto.setDataType(Collections.singletonList(5)); dto.setIsVideo(true);
long videoTotal = getYuqingAnalyzeCount(dto, null); long videoTotal = getYuqingAnalyzeCount(dto, null);
jsonObject.put("videoTotal", videoTotal); jsonObject.put("videoTotal", videoTotal);
// 图文舆情总量 // 图文舆情总量
...@@ -3154,12 +3154,12 @@ public class MarkDataServiceImpl implements MarkDataService { ...@@ -3154,12 +3154,12 @@ public class MarkDataServiceImpl implements MarkDataService {
// 负面趋势图 // 负面趋势图
Pair<String, List<LineVO>> negativeSpreadTendency = getEmotionSpreadTendency(dto, EmotionEnum.NEGATIVE.getName()); Pair<String, List<LineVO>> negativeSpreadTendency = getEmotionSpreadTendency(dto, EmotionEnum.NEGATIVE.getName());
// 视频趋势图 // 视频趋势图
dto.setDataType(Collections.singletonList(5)); dto.setIsVideo(true);
Pair<String, List<LineVO>> videoSpreadTendency = getEmotionSpreadTendency(dto, null); Pair<String, List<LineVO>> videoSpreadTendency = getEmotionSpreadTendency(dto, null);
// 图文趋势图 // 图文趋势图
dto.setDataType(Arrays.asList(1, 2, 3)); dto.setIsVideo(false);
Pair<String, List<LineVO>> textSpreadTendency = getEmotionSpreadTendency(dto, null); Pair<String, List<LineVO>> textSpreadTendency = getEmotionSpreadTendency(dto, null);
dto.setDataType(null); dto.setIsVideo(null);
Map<String, BaseMap> baseMaps = new HashMap<>(2); Map<String, BaseMap> baseMaps = new HashMap<>(2);
if (Objects.nonNull(negativeSpreadTendency.getLeft()) || Objects.nonNull(spreadTendency.getLeft())) { if (Objects.nonNull(negativeSpreadTendency.getLeft()) || Objects.nonNull(spreadTendency.getLeft())) {
CompletableFuture.allOf(Stream.of(spreadTendency.getLeft(), negativeSpreadTendency.getLeft()) CompletableFuture.allOf(Stream.of(spreadTendency.getLeft(), negativeSpreadTendency.getLeft())
...@@ -4207,6 +4207,14 @@ public class MarkDataServiceImpl implements MarkDataService { ...@@ -4207,6 +4207,14 @@ public class MarkDataServiceImpl implements MarkDataService {
String planKeyword = xiaohongshuWordDao.findOneById(dto.getCustomPlanId()).getKeyword(); String planKeyword = xiaohongshuWordDao.findOneById(dto.getCustomPlanId()).getKeyword();
postFilter.must(EsQueryTools.assembleNormalKeywordQuery(planKeyword, new String[]{GenericAttribute.ES_IND_FULL_TEXT})); postFilter.must(EsQueryTools.assembleNormalKeywordQuery(planKeyword, new String[]{GenericAttribute.ES_IND_FULL_TEXT}));
} }
// 视频/图文
if (Objects.nonNull(dto.getIsVideo())){
if (dto.getIsVideo()){
postFilter.must(QueryBuilders.existsQuery(GenericAttribute.ES_VIDEO_URLS));
}else {
postFilter.mustNot(QueryBuilders.existsQuery(GenericAttribute.ES_VIDEO_URLS));
}
}
return postFilter; return postFilter;
} }
......
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