From 19533a17aa55fafc70d0a385928e785cb50e1ebc Mon Sep 17 00:00:00 2001
From: admin <2780501319@qq.com>
Date: 星期五, 30 七月 2021 02:05:14 +0800
Subject: [PATCH] 爱奇艺视频更新

---
 src/main/java/com/yeshi/buwan/service/manager/SolrAlbumVideoDataManager.java |   13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/yeshi/buwan/service/manager/SolrAlbumVideoDataManager.java b/src/main/java/com/yeshi/buwan/service/manager/SolrAlbumVideoDataManager.java
index bc28acf..5d38c4f 100644
--- a/src/main/java/com/yeshi/buwan/service/manager/SolrAlbumVideoDataManager.java
+++ b/src/main/java/com/yeshi/buwan/service/manager/SolrAlbumVideoDataManager.java
@@ -18,6 +18,7 @@
 import org.apache.solr.client.solrj.response.UpdateResponse;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.dao.InvalidDataAccessApiUsageException;
 import org.springframework.data.domain.Sort;
 import org.springframework.data.solr.core.SolrTemplate;
 import org.springframework.data.solr.core.query.Criteria;
@@ -135,7 +136,15 @@
         Query query = null;
         if (!StringUtil.isNullOrEmpty(filter.getKey())) {
             //solr绮惧噯妫�绱㈤渶瑕佸甫寮曞彿
-            query = new SimpleQuery(new Criteria("nameStr").startsWith(filter.getKey()).or("mainactor").expression("\"" + filter.getKey() + "\""));
+            if (filter.isFuzzy()) {
+                query = new SimpleQuery(new Criteria("name").expression(filter.getKey()));
+            } else {
+                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() + "\""));
+                }
+            }
         } else if (!StringUtil.isNullOrEmpty(filter.getActor())) {
             query = new SimpleQuery(new Criteria("mainactor").expression("\"" + filter.getActor() + "\""));
         } else if (!StringUtil.isNullOrEmpty(filter.getDirector())) {
@@ -177,7 +186,7 @@
     }
 
     public List<String> getSuggestKeyList(String key) {
-        Query query = new SimpleQuery(new Criteria("nameStr").startsWith(key));
+        Query query = new SimpleQuery(new Criteria("nameStr").expression(key+"*"));
         /** 璁剧疆鍒嗛〉寮�濮嬭褰曟暟(绗竴椤�) 榛樿0 */
         query.setOffset(0);
         /** 璁剧疆姣忛〉鏄剧ず璁板綍鏁帮紝榛樿10 */

--
Gitblit v1.8.0