From c136231742a755fa5defdaaf485f9c549534d17c Mon Sep 17 00:00:00 2001 From: eson <9673575+githubcontent@user.noreply.gitee.com> Date: Fri, 20 Oct 2023 14:06:36 +0800 Subject: [PATCH 1/2] logo search --- model/gmodel/fs_preprocess_logo_logic.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/model/gmodel/fs_preprocess_logo_logic.go b/model/gmodel/fs_preprocess_logo_logic.go index c4f77e2b..3dc07eb2 100644 --- a/model/gmodel/fs_preprocess_logo_logic.go +++ b/model/gmodel/fs_preprocess_logo_logic.go @@ -15,7 +15,7 @@ func (p *FsPreprocessLogoModel) PreLogoSearchSuggestions(ctx context.Context, zi for i, v := range keywords { keywords[i] = "+" + v + v } - sqlstr := fmt.Sprintf("SELECT * FROM fs_preprocess_logo WHERE MATCH(restaurant_name) AGAINST('?' IN BOOLEAN MODE) limit %d;", count) + sqlstr := fmt.Sprintf("SELECT * FROM fs_preprocess_logo WHERE MATCH(restaurant_name) AGAINST(? IN BOOLEAN MODE) limit %d;", count) tx := p.db.WithContext(ctx).Model(&FsPreprocessLogo{}).Raw(sqlstr, strings.Join(keywords, " ")) err = tx.Scan(&resp).Error From ee33f2ba746293825fde08dd608acccb7782fa9f Mon Sep 17 00:00:00 2001 From: eson <9673575+githubcontent@user.noreply.gitee.com> Date: Fri, 20 Oct 2023 14:08:58 +0800 Subject: [PATCH 2/2] logo search --- model/gmodel/fs_preprocess_logo_logic.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/model/gmodel/fs_preprocess_logo_logic.go b/model/gmodel/fs_preprocess_logo_logic.go index 3dc07eb2..d1c73eb1 100644 --- a/model/gmodel/fs_preprocess_logo_logic.go +++ b/model/gmodel/fs_preprocess_logo_logic.go @@ -5,6 +5,8 @@ import ( "fmt" "regexp" "strings" + + "github.com/zeromicro/go-zero/core/logx" ) // TODO: 使用model的属性做你想做的 @@ -13,13 +15,14 @@ import ( func (p *FsPreprocessLogoModel) PreLogoSearchSuggestions(ctx context.Context, zipcode string, keywordsStr string, count int) (resp []FsPreprocessLogo, err error) { keywords := regexp.MustCompile(`\s+`).Split(keywordsStr, -1) for i, v := range keywords { - keywords[i] = "+" + v + v + keywords[i] = "+" + v + "*" } sqlstr := fmt.Sprintf("SELECT * FROM fs_preprocess_logo WHERE MATCH(restaurant_name) AGAINST(? IN BOOLEAN MODE) limit %d;", count) tx := p.db.WithContext(ctx).Model(&FsPreprocessLogo{}).Raw(sqlstr, strings.Join(keywords, " ")) err = tx.Scan(&resp).Error if err != nil { + logx.Error(err) return nil, err } return resp, nil