From c8633312439d60c836d9c170fd3462a1866f14a5 Mon Sep 17 00:00:00 2001 From: Havoc412 <2993167370@qq.com> Date: Wed, 23 Oct 2024 12:57:53 +0800 Subject: [PATCH] animal with like #2 --- app/http/validator/web/animal/list.go | 2 +- app/model/animal_result.go | 2 +- app/service/animals/curd/animals_curd.go | 20 +++++++++++++++----- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/app/http/validator/web/animal/list.go b/app/http/validator/web/animal/list.go index 312ec4a..b94dc5b 100644 --- a/app/http/validator/web/animal/list.go +++ b/app/http/validator/web/animal/list.go @@ -17,7 +17,7 @@ type List struct { Status string `form:"status" json:"status"` Num int `form:"num" json:"num"` Skip int `form:"skip" json:"skip"` - UserId int `form:"user_id" json:"user_id" binding:"required,min=1"` + UserId int `form:"user_id" json:"user_id"` } func (l List) CheckParams(context *gin.Context) { diff --git a/app/model/animal_result.go b/app/model/animal_result.go index a2fb822..8c93b0d 100644 --- a/app/model/animal_result.go +++ b/app/model/animal_result.go @@ -2,5 +2,5 @@ package model type AnimalWithLikeList struct { Animal Animal `json:"animal"` - Like bool `json:"like"` + Like bool `json:"like,omitempty"` } diff --git a/app/service/animals/curd/animals_curd.go b/app/service/animals/curd/animals_curd.go index f8a1686..1a8c542 100644 --- a/app/service/animals/curd/animals_curd.go +++ b/app/service/animals/curd/animals_curd.go @@ -61,13 +61,23 @@ func (a *AnimalsCurd) List(attrs string, gender string, breed string, sterilzati animals := model.CreateAnimalFactory("").Show(validSelectedFields, genderArray, breedArray, sterilzationArray, statusArray, num, skip) - for i := range animals { - animalWithLike := model.AnimalWithLikeList{ - Animal: animals[i], - Like: model.CreateAnimalLikeFactory("").Liked(userId, int(animals[i].Id)), + if userId > 0 { + for i := range animals { + animalWithLike := model.AnimalWithLikeList{ + Animal: animals[i], + Like: model.CreateAnimalLikeFactory("").Liked(userId, int(animals[i].Id)), + } + temp = append(temp, animalWithLike) + } + } else { + for i := range animals { + animalWithLike := model.AnimalWithLikeList{ + Animal: animals[i], + } + temp = append(temp, animalWithLike) } - temp = append(temp, animalWithLike) } + return }