From 678e05ede4a9ed16be33f61a852f2a25d8132573 Mon Sep 17 00:00:00 2001 From: satori Date: Sun, 17 Nov 2024 19:05:14 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E7=A9=BA=E5=8F=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/gorse.go | 5 ++--- api/graphql.go | 5 +++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/api/gorse.go b/api/gorse.go index 5cee3d6..9d5c26c 100644 --- a/api/gorse.go +++ b/api/gorse.go @@ -92,14 +92,13 @@ func PutPraises(page int) error { // 获取推荐ID func GetRecommend(user_id int, category string) ([]int, error) { var ctx context.Context = context.Background() + var ids []int data, err := gorse.GetItemLatestWithCategory(ctx, fmt.Sprintf("%d", user_id), category, 100, 0) if err != nil { fmt.Println("获取推荐失败", err) - return nil, err + return ids, err } - - var ids []int for _, item := range data { id, _ := strconv.Atoi(item.Id) ids = append(ids, id) diff --git a/api/graphql.go b/api/graphql.go index a61d73a..b53440d 100644 --- a/api/graphql.go +++ b/api/graphql.go @@ -635,16 +635,17 @@ func NewSchema(config Config) (graphql.Schema, error) { // 筛选:兴趣推荐 if p.Args["interest"] != nil { + fmt.Println("interest:", p.Args["interest"]) user_id := p.Args["interest"].(int) list, err := GetRecommend(user_id, "image") if err != nil { fmt.Println("GetRecommend 获取兴趣推荐失败", err) - return nil, err + return map[string]interface{}{"list": []Image{}, "total": 0}, nil } - fmt.Println("Interest:", user_id, list) if len(list) == 0 { return map[string]interface{}{"list": []Image{}, "total": 0}, nil } + fmt.Println("Interest:", user_id, list) query = query.Where(goqu.Ex{"web_images.id": goqu.Op{"in": list}}).Select("web_images.id", goqu.L( fmt.Sprintf("ROW_NUMBER() OVER(ORDER BY FIELD(%s, %s))", "web_images.id", regexp.MustCompile(`[\[\]]`).ReplaceAllString(strings.Join(strings.Fields(fmt.Sprint(list)), ", "), "")), ).As("row_num"))