upvote and feedback list
This commit is contained in:
@@ -38,6 +38,26 @@ func (h *FeedbackHandler) GetFeedbacks(params feedback.GetFeedbacksParams) middl
|
||||
return feedback.NewGetFeedbacksOK().WithPayload(feedbacksToAPI(feedbacks))
|
||||
}
|
||||
|
||||
func (h *FeedbackHandler) GetFeedback(params feedback.GetFeedbacksForProjectParams) middleware.Responder {
|
||||
feedbacks, err := h.feedback.GetByProjectID(params.ProjectID)
|
||||
if err != nil {
|
||||
return feedback.NewGetFeedbacksForProjectForbidden()
|
||||
|
||||
}
|
||||
|
||||
return feedback.NewGetFeedbacksForProjectOK().WithPayload(feedbacksToAPI(feedbacks))
|
||||
|
||||
}
|
||||
|
||||
func (h *FeedbackHandler) UpvoteFeedback(params feedback.UpvoteFeedbackParams) middleware.Responder {
|
||||
err := h.feedback.Upvote(params.SessionUUID, params.FeedbackUUID)
|
||||
if err != nil {
|
||||
return feedback.NewUpvoteFeedbackForbidden()
|
||||
}
|
||||
|
||||
return feedback.NewUpvoteFeedbackOK()
|
||||
}
|
||||
|
||||
func feedbacksToAPI(feedbacks []*dmodels.Feedback) []*models.Feedback {
|
||||
apiFeedbacks := make([]*models.Feedback, 0, len(feedbacks))
|
||||
for _, f := range feedbacks {
|
||||
@@ -51,7 +71,7 @@ func feedbackToAPI(feedback *dmodels.Feedback) *models.Feedback {
|
||||
return &models.Feedback{
|
||||
ProjectID: feedback.ProjectID,
|
||||
Text: feedback.Text,
|
||||
Type: feedback.Type,
|
||||
Type: string(feedback.Type),
|
||||
UserID: feedback.UserID,
|
||||
CreatedAt: strfmt.DateTime(feedback.CreatedAt),
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user