From a6a6045065169ab56c7d44ea32dce743d940e840 Mon Sep 17 00:00:00 2001
From: jiangshuai <291802688@qq.com>
Date: 星期五, 08 十二月 2023 11:15:19 +0800
Subject: [PATCH] collection改为固定12345

---
 pkg/blevex/bleve.go |   36 ++++++++++++------------------------
 1 files changed, 12 insertions(+), 24 deletions(-)

diff --git a/pkg/blevex/bleve.go b/pkg/blevex/bleve.go
index 3afe948..08fe999 100644
--- a/pkg/blevex/bleve.go
+++ b/pkg/blevex/bleve.go
@@ -4,43 +4,34 @@
 	"fmt"
 	"github.com/blevesearch/bleve/v2"
 	"github.com/blevesearch/bleve/v2/mapping"
-	"github.com/yanyiwu/gojieba"
 	"sync"
 )
 
-// InitAnalyzer 鍔犺浇鑷畾涔夊垎璇嶅櫒锛堢粨宸村垎璇嶏級
+// InitAnalyzer 鍔犺浇鑷畾涔夊垎璇嶅櫒锛坰ego锛�
 
 var defaultAnalyzer *mapping.IndexMappingImpl
 
 func InitAnalyzer() {
 	indexMapping := bleve.NewIndexMapping()
-	//os.RemoveAll(IndexDir)
-	//// clean index when example finished
-	//defer os.RemoveAll(IndexDir)
-
-	err := indexMapping.AddCustomTokenizer("gojieba",
+	err := indexMapping.AddCustomTokenizer("sego",
 		map[string]interface{}{
-			"dictpath":     gojieba.DICT_PATH,
-			"hmmpath":      gojieba.HMM_PATH,
-			"userdictpath": gojieba.USER_DICT_PATH,
-			"idf":          gojieba.IDF_PATH,
-			"stop_words":   gojieba.STOP_WORDS_PATH,
-			"type":         "gojieba",
+			"dictpath": "conf/dictionary.txt", // 鏇挎崲涓哄疄闄呯殑瀛楀吀璺緞
+			"type":     "sego",
 		},
 	)
 	if err != nil {
 		panic(err)
 	}
-	err = indexMapping.AddCustomAnalyzer("gojieba",
+	err = indexMapping.AddCustomAnalyzer("sego",
 		map[string]interface{}{
-			"type":      "gojieba",
-			"tokenizer": "gojieba",
+			"type":      "sego",
+			"tokenizer": "sego",
 		},
 	)
 	if err != nil {
 		panic(err)
 	}
-	indexMapping.DefaultAnalyzer = "gojieba"
+	indexMapping.DefaultAnalyzer = "sego"
 	defaultAnalyzer = indexMapping
 }
 
@@ -78,7 +69,7 @@
 	if err != nil {
 		return
 	}
-	req := bleve.NewSearchRequest(bleve.NewQueryStringQuery(keyword))
+	req := bleve.NewSearchRequest(bleve.NewMatchQuery(keyword))
 	req.From = from
 	req.Size = size
 	res, err := index.Search(req)
@@ -102,15 +93,12 @@
 
 	// Create a boolean query with a should clause for fuzzy search
 	boolQuery := bleve.NewBooleanQuery()
-
-	fuzzyQuery := bleve.NewFuzzyQuery(keyword)
-	fuzzyQuery.SetFuzziness(2) // Set the fuzziness level as needed
-
-	boolQuery.AddShould(fuzzyQuery)
+	fuzzyQuery := bleve.NewMatchQuery(keyword)
+	boolQuery.AddMust(fuzzyQuery)
 
 	// Add a must clause for category filtering
 	for key, val := range conditions {
-		query := bleve.NewQueryStringQuery(fmt.Sprintf("%s:%s", key, val))
+		query := bleve.NewQueryStringQuery(fmt.Sprintf("%v:%v", key, val))
 		boolQuery.AddMust(query)
 	}
 	req := bleve.NewSearchRequest(boolQuery)

--
Gitblit v1.8.0