From f2303e206cda70eb483a4913a0cf4bf6ac9ef85f Mon Sep 17 00:00:00 2001 From: Havoc412 <2993167370@qq.com> Date: Thu, 24 Oct 2024 20:14:24 +0800 Subject: [PATCH] add animal Create #1 --- app/http/validator/web/animal/create.go | 30 +++++++++++++++++++++++-- app/model/animal.go | 4 ++-- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/app/http/validator/web/animal/create.go b/app/http/validator/web/animal/create.go index 82c86a8..32a59ac 100644 --- a/app/http/validator/web/animal/create.go +++ b/app/http/validator/web/animal/create.go @@ -6,13 +6,39 @@ import ( "catface/app/http/validator/common/location" "catface/app/http/validator/core/data_transfer" "catface/app/utils/response" + "time" "github.com/gin-gonic/gin" ) +type Extra struct { + NickNames []string `form:"nick_names" json:"nick_names"` + Tags []string `form:"tags" json:"tags"` +} + +type Health struct { + Sterilization uint8 `form:"sterilization" json:"sterilization"` + Vaccination uint8 `form:"vaccination" json:"vaccination"` + Deworming uint8 `form:"deworming" json:"deworming"` +} + type Create struct { - Name string `form:"name" json:"name" binding:"required"` - Poi location.Poi `form:"poi" json:"poi"` + Name string `form:"name" json:"name" binding:"required"` + Breed uint8 `form:"breed" json:"breed" binding:"required"` + Gender uint8 `form:"gender" json:"gender" binding:"required"` + Status uint8 `form:"status" json:"status" binding:"required"` + Description string `form:"description" json:"description"` + Birthday *time.Time `form:"birthday" json:"birthday" binding:"required"` // TODO 如何定义不明? + Photos []string `form:"photos" json:"photos"` + + Health Health `form:"health" json:"health"` + UserId int `form:"user_id" json:"user_id" binding:"required,numeric"` + Poi location.Poi `form:"poi" json:"poi"` + Extra Extra `form:"extra" json:"extra"` + + FaceModelScore float64 `form:"face_model_score" json:"face_model_score"` + + Mode bool `form:"mode" json:"mode"` // INFO 0 default;1 缓存的效果。 } func (c Create) CheckParams(context *gin.Context) { diff --git a/app/model/animal.go b/app/model/animal.go index 91215fe..9da7d4d 100644 --- a/app/model/animal.go +++ b/app/model/animal.go @@ -39,8 +39,8 @@ type Animal struct { FaceBreeds string `json:"face_breeds,omitempty" gorm:"size:20"` FaceBreedProbs string `json:"face_breed_probs,omitempty" gorm:"size:20"` // 上传者 ID - UsersModelId int64 `gorm:"column:user_id" json:"user_id"` // 上传者 ID - UsersModel *UsersModel + UsersModelId int64 `gorm:"column:user_id" json:"user_id"` // 上传者 ID + UsersModel *UsersModel `json:"users_model,omitempty"` } func (a *Animal) TableName() string {