Commit 32218b2c by shenjunjie

Merge branch 'feature' into 'release'

调整情报预警配置

See merge request !311
parents badad774 88b936b3
...@@ -15,7 +15,7 @@ import java.util.List; ...@@ -15,7 +15,7 @@ import java.util.List;
public class ChannelType { public class ChannelType {
private static final List<String> MAIN_BODY_TYPES = Arrays.asList("媒体", "团体", "普通用户", "企业", "名人", "政务机构"); private static final List<String> MAIN_BODY_TYPES = Arrays.asList("媒体", "团体", "普通用户", "企业", "名人", "政务机构");
private static final List<String> POLITICS_LEVELS = Arrays.asList("央级", "省级", "地级"); public static final List<String> POLITICS_LEVELS = Arrays.asList("央级", "省级", "地级");
private static final List<String> FIELDS = Arrays.asList("情感", "综合", "财经", "家居", "社会", "时尚", "文化", "历史", "母婴育儿", "体育", "娱乐", "动漫", "汽车", "美食", "健康养生", "国际", "音乐", "游戏", "科技", "旅游", "军事", "时事", "教育"); private static final List<String> FIELDS = Arrays.asList("情感", "综合", "财经", "家居", "社会", "时尚", "文化", "历史", "母婴育儿", "体育", "娱乐", "动漫", "汽车", "美食", "健康养生", "国际", "音乐", "游戏", "科技", "旅游", "军事", "时事", "教育");
private static final JSONArray REGION = GlobalPojo.CHINA_AREA_TAGS; private static final JSONArray REGION = GlobalPojo.CHINA_AREA_TAGS;
public static JSONObject channelOption = new JSONObject(); public static JSONObject channelOption = new JSONObject();
......
package com.zhiwei.brandkbs2.es; package com.zhiwei.brandkbs2.es;
import com.zhiwei.brandkbs2.common.ChannelType;
import com.zhiwei.brandkbs2.common.GenericAttribute; import com.zhiwei.brandkbs2.common.GenericAttribute;
import com.zhiwei.brandkbs2.common.GlobalPojo; import com.zhiwei.brandkbs2.common.GlobalPojo;
import com.zhiwei.brandkbs2.config.Constant; import com.zhiwei.brandkbs2.config.Constant;
...@@ -328,16 +329,22 @@ public class EsQueryTools { ...@@ -328,16 +329,22 @@ public class EsQueryTools {
} }
public static void addSensitiveChannel(BrandkbsYuQingConfig config, BoolQueryBuilder boolQueryBuilder) { public static void addSensitiveChannel(BrandkbsYuQingConfig config, BoolQueryBuilder boolQueryBuilder) {
if (!Tools.isEmpty(config.getPoliticsLevels()) && !config.getPoliticsLevels().contains("全部")) { if (!Tools.isEmpty(config.getPoliticsLevels())) {
List<String> hitList = config.getPoliticsLevels();
if (config.getPoliticsLevels().contains("全部")) {
hitList = ChannelType.POLITICS_LEVELS;
}
BoolQueryBuilder politicsLevelBool = QueryBuilders.boolQuery(); BoolQueryBuilder politicsLevelBool = QueryBuilders.boolQuery();
config.getPoliticsLevels().forEach(politicsLevel -> politicsLevelBool.should(QueryBuilders.termQuery(GenericAttribute.ES_SENSITIVE_CHANNEL + "." + GenericAttribute.ES_POLITICS_LEVEL + ".keyword", politicsLevel))); hitList.forEach(politicsLevel -> politicsLevelBool.should(QueryBuilders.termQuery(GenericAttribute.ES_SENSITIVE_CHANNEL + "." + GenericAttribute.ES_POLITICS_LEVEL + ".keyword", politicsLevel)));
boolQueryBuilder.must(politicsLevelBool); boolQueryBuilder.must(politicsLevelBool);
} }
if (!Tools.isEmpty(config.getFields()) && !config.getFields().contains("全部")) { if (!Tools.isEmpty(config.getFields())) {
List<String> hitList = config.getFields();
if (config.getFields().contains("全部")) {
hitList = ChannelType.COMMON_FIELDS;
}
BoolQueryBuilder fieldBool = QueryBuilders.boolQuery(); BoolQueryBuilder fieldBool = QueryBuilders.boolQuery();
config.getFields().forEach(field -> { hitList.forEach(field -> fieldBool.should(QueryBuilders.termQuery(GenericAttribute.ES_SENSITIVE_CHANNEL + "." + GenericAttribute.ES_FIELD + ".keyword", field)));
fieldBool.should(QueryBuilders.termQuery(GenericAttribute.ES_SENSITIVE_CHANNEL + "." + GenericAttribute.ES_FIELD + ".keyword", field));
});
boolQueryBuilder.must(fieldBool); boolQueryBuilder.must(fieldBool);
} }
} }
......
...@@ -226,22 +226,30 @@ public class ProjectWarnServiceImpl implements ProjectWarnService { ...@@ -226,22 +226,30 @@ public class ProjectWarnServiceImpl implements ProjectWarnService {
StringBuilder mediaChannel = new StringBuilder(); StringBuilder mediaChannel = new StringBuilder();
List<String> politicsLevels = config.getPoliticsLevels(); List<String> politicsLevels = config.getPoliticsLevels();
List<String> fields = config.getFields(); List<String> fields = config.getFields();
if ((!Tools.isEmpty(politicsLevels) && !politicsLevels.contains("全部"))) { if(Tools.isEmpty(politicsLevels)){
politicsLevels.forEach(politicsLevel -> mediaChannel.append(politicsLevel).append("、"));
} else {
key2Header += "【全部级别】"; key2Header += "【全部级别】";
}else if(politicsLevels.contains("全部")){
key2Header += "【重点级别】";
}else{
politicsLevels.forEach(politicsLevel -> mediaChannel.append(politicsLevel).append("、"));
} }
if ((!Tools.isEmpty(fields) && !fields.contains("全部"))) { if (Tools.isEmpty(fields)) {
fields.forEach(field -> mediaChannel.append(field).append("、"));
} else {
if (0 != key2Header.length()) { if (0 != key2Header.length()) {
key2Header += "、"; key2Header += "、";
key2Header += "【全部领域】,"; key2Header += "【全部领域】,";
} else { } else {
key2Header += "【全部领域】"; key2Header += "【全部领域】";
} }
} else if (fields.contains("全部")) {
if (0 != key2Header.length()) {
key2Header += "、";
key2Header += "【重点领域】,";
} else {
key2Header += "【重点领域】";
}
} else {
fields.forEach(field -> mediaChannel.append(field).append("、"));
} }
// config.getChannelTypes().forEach(channelType -> mediaChannel.append(channelType).append("、"));
if (0 != mediaChannel.length()) { if (0 != mediaChannel.length()) {
if (0 != key2Header.length()) { if (0 != key2Header.length()) {
key2Header += "、"; key2Header += "、";
......
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