From 5bf25442820cd793725cb4712dde0d3c5609f122 Mon Sep 17 00:00:00 2001 From: nyne Date: Mon, 8 Sep 2025 20:24:57 +0800 Subject: [PATCH] Fix search --- server/dao/resource.go | 6 +++++- server/service/resource.go | 15 +++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/server/dao/resource.go b/server/dao/resource.go index d0601d1..8310a9b 100644 --- a/server/dao/resource.go +++ b/server/dao/resource.go @@ -422,7 +422,11 @@ func GetResourcesIdWithTag(tagID uint) ([]uint, error) { return nil, err } - return tagIds, nil + ids := make([]uint, len(result)) + for i, r := range result { + ids[i] = r.ID + } + return ids, nil } func BatchGetResources(ids []uint) ([]model.Resource, error) { diff --git a/server/service/resource.go b/server/service/resource.go index 0f8abe1..95654c8 100644 --- a/server/service/resource.go +++ b/server/service/resource.go @@ -325,6 +325,21 @@ func SearchResource(query string, page int) ([]model.ResourceView, int, error) { } resources = append(resources, temp...) + // remove duplicates + temp = make([]uint, 0) + for _, id := range resources { + found := false + for _, id2 := range temp { + if id == id2 { + found = true + break + } + } + if !found { + temp = append(temp, id) + } + } + if start >= len(resources) { return []model.ResourceView{}, 0, nil }