From 0d797ad8338d438b2601f237cd91ceee21c9c06d Mon Sep 17 00:00:00 2001 From: Havoc412 <2993167370@qq.com> Date: Wed, 23 Oct 2024 12:08:05 +0800 Subject: [PATCH] encounter like #2 --- app/http/validator/web/encounter_like/create.go | 4 ++-- app/http/validator/web/encounter_like/delete.go | 4 ++-- app/model/base_model.go | 2 +- app/model/encounter_like.go | 4 ++-- routers/web.go | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/app/http/validator/web/encounter_like/create.go b/app/http/validator/web/encounter_like/create.go index 2db5e97..942635c 100644 --- a/app/http/validator/web/encounter_like/create.go +++ b/app/http/validator/web/encounter_like/create.go @@ -10,8 +10,8 @@ import ( ) type Create struct { - UserId int64 `form:"user_id" json:"user_id"` - EncounterId int64 `form:"encounter_id" json:"encounter_id"` + UserId int `form:"user_id" json:"user_id" binding:"required,min=1"` + EncounterId int `form:"encounter_id" json:"encounter_id" binding:"required,min=1"` } func (c Create) CheckParams(context *gin.Context) { diff --git a/app/http/validator/web/encounter_like/delete.go b/app/http/validator/web/encounter_like/delete.go index 3695816..6465432 100644 --- a/app/http/validator/web/encounter_like/delete.go +++ b/app/http/validator/web/encounter_like/delete.go @@ -10,8 +10,8 @@ import ( ) type Delete struct { - UserId int64 `form:"user_id" json:"user_id"` - EncounterId int64 `form:"encounter_id" json:"encounter_id"` + UserId int64 `form:"user_id" json:"user_id" binding:"required,min=1"` + EncounterId int64 `form:"encounter_id" json:"encounter_id" binding:"required,min=1"` } func (d Delete) CheckParams(context *gin.Context) { diff --git a/app/model/base_model.go b/app/model/base_model.go index fcc8b93..7fc71de 100644 --- a/app/model/base_model.go +++ b/app/model/base_model.go @@ -32,7 +32,7 @@ type Color struct { type DeletedAt struct { DeletedAt *time.Time `json:"deleted_at" gorm:"defalt:NULL"` - IsDel soft_delete.DeletedAt `gorm:"softDelete:flag,DeletedAtField:DeletedAt"` + IsDel soft_delete.DeletedAt `gorm:"softDelete:flag,DeletedAtField:DeletedAt;default:0"` } func UseDbConn(sqlType string) *gorm.DB { diff --git a/app/model/encounter_like.go b/app/model/encounter_like.go index ac268e1..712e1f1 100644 --- a/app/model/encounter_like.go +++ b/app/model/encounter_like.go @@ -17,7 +17,7 @@ func (e *EncounterLike) Create(userId, encounterId int) bool { e.UsersModelId = userId e.EncounterId = encounterId - e.Unscoped().Where("encounter_id = ?", e.EncounterId).First(e) + e.Unscoped().Where("encounter_id = ? AND user_id = ?", e.EncounterId, e.UsersModelId).First(e) e.IsDel = 0 // if err := e.Save(e).Error; err != nil { return false @@ -28,7 +28,7 @@ func (e *EncounterLike) Create(userId, encounterId int) bool { func (e *EncounterLike) SoftDelete(userId, encounterId int) bool { e.UsersModelId = userId // - e.Where("encounter_id = ?", encounterId).First(e) + e.Unscoped().Where("encounter_id = ? AND user_id = ?", encounterId, e.UsersModelId).First(e) if err := e.Delete(e).Error; err != nil { return false } diff --git a/routers/web.go b/routers/web.go index 8bb2dd0..e4a6cd1 100644 --- a/routers/web.go +++ b/routers/web.go @@ -136,7 +136,7 @@ func InitWebRouter() *gin.Engine { encounter.POST("", validatorFactory.Create(consts.ValidatorPrefix+"EncounterStore")) // Like / unlike - encounter.GET("like", validatorFactory.Create(consts.ValidatorPrefix+"EncounterLikeCreate")) + encounter.POST("like", validatorFactory.Create(consts.ValidatorPrefix+"EncounterLikeCreate")) encounter.DELETE("like", validatorFactory.Create(consts.ValidatorPrefix+"EncounterLikeDelete")) } // }