From 8fee151ffae0c3818694b7318583814bf92663e2 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 27 八月 2021 18:52:28 +0800 Subject: [PATCH] 聚合视频资源包调整,接入韩迷 --- src/main/java/com/yeshi/buwan/service/manager/search/SolrAlbumVideoDataManager.java | 16 ++++++++++++---- 1 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/service/manager/search/SolrAlbumVideoDataManager.java b/src/main/java/com/yeshi/buwan/service/manager/search/SolrAlbumVideoDataManager.java index deffac6..dbf980c 100644 --- a/src/main/java/com/yeshi/buwan/service/manager/search/SolrAlbumVideoDataManager.java +++ b/src/main/java/com/yeshi/buwan/service/manager/search/SolrAlbumVideoDataManager.java @@ -28,6 +28,7 @@ import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.io.Serializable; import java.util.*; /** @@ -122,7 +123,7 @@ } } - public SolrAlbumVideo findOne(String id) { + public SolrAlbumVideo findOne(Serializable id) { SolrAlbumVideo solrVideo = solrTemplate.getById(CORE_NAME, id, SolrAlbumVideo.class); return solrVideo; } @@ -141,7 +142,7 @@ try { query = new SimpleQuery(new Criteria("nameStr").startsWith(filter.getKey()).or("mainactor").expression("\"" + filter.getKey() + "\"")); } catch (InvalidDataAccessApiUsageException e) { - query = new SimpleQuery(new Criteria("nameStr").expression("\""+filter.getKey()+"\"").or("mainactor").expression("\"" + filter.getKey() + "\"")); + query = new SimpleQuery(new Criteria("nameStr").expression("\"" + filter.getKey() + "\"").or("mainactor").expression("\"" + filter.getKey() + "\"")); } } } else if (!StringUtil.isNullOrEmpty(filter.getActor())) { @@ -158,7 +159,14 @@ } if (filter.getResourceIds() != null && filter.getResourceIds().size() > 0) { - query.addFilterQuery(new SimpleFilterQuery(Criteria.where("resourceIds").contains(filter.getResourceIds()))); + Criteria ors = null; + for (String rid : filter.getResourceIds()) { + if (ors == null) + ors = Criteria.where("resourceIds").contains(rid); + else + ors = ors.or("resourceIds").contains(rid); + } + query.addFilterQuery(new SimpleFilterQuery(ors)); } if (filter.getFreeType() != null) { query.addFilterQuery(new SimpleFilterQuery(Criteria.where("free_type").is(filter.getFreeType()))); @@ -185,7 +193,7 @@ } public List<String> getSuggestKeyList(String key) { - Query query = new SimpleQuery(new Criteria("nameStr").expression(key+"*")); + Query query = new SimpleQuery(new Criteria("nameStr").expression(key + "*")); /** 璁剧疆鍒嗛〉寮�濮嬭褰曟暟(绗竴椤�) 榛樿0 */ query.setOffset(0); /** 璁剧疆姣忛〉鏄剧ず璁板綍鏁帮紝榛樿10 */ -- Gitblit v1.8.0