From 2bf09963aca841f6519b134bf61eb112d00e9aba Mon Sep 17 00:00:00 2001 From: aspasskiy Date: Tue, 23 Apr 2024 19:33:34 +0300 Subject: [PATCH] upvotes --- internal/interfaces/rest/handlers/feedback.go | 14 +++++++++++++- repo/pg/client.go | 1 + 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/internal/interfaces/rest/handlers/feedback.go b/internal/interfaces/rest/handlers/feedback.go index 0f594eb..139184e 100644 --- a/internal/interfaces/rest/handlers/feedback.go +++ b/internal/interfaces/rest/handlers/feedback.go @@ -7,21 +7,29 @@ import ( "gerald/internal/services" "github.com/go-openapi/runtime/middleware" "github.com/go-openapi/strfmt" + "github.com/rs/zerolog" ) type FeedbackHandler struct { feedback *services.FeedbackService + logger zerolog.Logger } func NewFeedbackHandler( feedback *services.FeedbackService, + logger zerolog.Logger, ) *FeedbackHandler { - return &FeedbackHandler{feedback: feedback} + return &FeedbackHandler{ + feedback: feedback, + logger: logger, + } + } func (h *FeedbackHandler) CreateFeedback(params feedback.CreateFeedbackParams) middleware.Responder { err := h.feedback.Create(params.SessionUUID, params.Body) if err != nil { + h.logger.Error().Err(err).Msg("Cannot create feedback") return feedback.NewCreateFeedbackForbidden() } @@ -32,6 +40,7 @@ func (h *FeedbackHandler) CreateFeedback(params feedback.CreateFeedbackParams) m func (h *FeedbackHandler) GetFeedbacks(params feedback.GetFeedbacksParams) middleware.Responder { feedbacks, err := h.feedback.GetBySessionID(params.SessionUUID) if err != nil { + h.logger.Error().Err(err).Msg("Cannot get feedbacks") return feedback.NewGetFeedbacksForbidden() } @@ -41,6 +50,7 @@ func (h *FeedbackHandler) GetFeedbacks(params feedback.GetFeedbacksParams) middl func (h *FeedbackHandler) GetFeedback(params feedback.GetFeedbacksForProjectParams) middleware.Responder { feedbacks, err := h.feedback.GetByProjectID(params.ProjectID) if err != nil { + h.logger.Error().Err(err).Msg("Cannot get feedbacks") return feedback.NewGetFeedbacksForProjectForbidden() } @@ -52,6 +62,7 @@ func (h *FeedbackHandler) GetFeedback(params feedback.GetFeedbacksForProjectPara func (h *FeedbackHandler) VoteFeedback(params feedback.UpvoteFeedbackParams) middleware.Responder { err := h.feedback.Vote(params.SessionUUID, params.FeedbackUUID, params.Action) if err != nil { + h.logger.Error().Err(err).Msg("Cannot vote feedback") return feedback.NewUpvoteFeedbackForbidden() } @@ -61,6 +72,7 @@ func (h *FeedbackHandler) VoteFeedback(params feedback.UpvoteFeedbackParams) mid func (h *FeedbackHandler) GetFeedbacksForProject(params feedback.GetFeedbacksForProjectParams) middleware.Responder { feedbacks, err := h.feedback.GetByProjectID(params.ProjectID) if err != nil { + h.logger.Error().Err(err).Msg("Cannot get feedbacks") return feedback.NewGetFeedbacksForProjectForbidden() } diff --git a/repo/pg/client.go b/repo/pg/client.go index f8a131e..704668b 100644 --- a/repo/pg/client.go +++ b/repo/pg/client.go @@ -44,6 +44,7 @@ func Close(db *gorm.DB) error { func CreateSchema(db *gorm.DB) error { err := db.AutoMigrate( &models.Feedback{}, + &models.Upvote{}, ) if err != nil {