From a2fc7f0c83d3391fe42ed23460ec50f76ff41ac6 Mon Sep 17 00:00:00 2001 From: elliot14A Date: Sun, 2 Jul 2023 21:15:53 +0530 Subject: [PATCH] feat: converted status field to an enum --- server/action/organisation/user/create.go | 4 ++-- server/action/profile/invite/accept.go | 2 +- server/action/profile/invite/delete.go | 6 +++++- server/action/profile/invite/list.go | 2 +- server/model/invitation.go | 12 ++++++++++-- 5 files changed, 19 insertions(+), 7 deletions(-) diff --git a/server/action/organisation/user/create.go b/server/action/organisation/user/create.go index 4897775a..6b970d15 100644 --- a/server/action/organisation/user/create.go +++ b/server/action/organisation/user/create.go @@ -117,7 +117,7 @@ func create(w http.ResponseWriter, r *http.Request) { CreatedByID: uint(currentUID), }, InviteeID: invitee.ID, - Status: false, + Status: model.Pending, Role: user.Role, OrganisationID: uint(orgID), ExpiredAt: time.Now().AddDate(0, 0, 7), @@ -125,7 +125,7 @@ func create(w http.ResponseWriter, r *http.Request) { var invitationCount int64 err = tx.Model(&model.Invitation{}). - Where("invitee_id=? AND organisation_id=? AND status=? AND role=? AND expired_at?", uint(userID), false, time.Now()).Find(&invitationList).Error + err = tx.Model(model.Invitation{}).Where("invitee_id=? AND status=? and expired_at>?", uint(userID), model.Pending, time.Now()).Find(&invitationList).Error if err != nil { tx.Rollback() loggerx.Error(err) diff --git a/server/model/invitation.go b/server/model/invitation.go index 7548d71b..04bb45f6 100644 --- a/server/model/invitation.go +++ b/server/model/invitation.go @@ -2,13 +2,21 @@ package model import "time" -//Invitation model definition +type Status string + +const ( + Pending Status = "pending" + Rejected Status = "rejected" + Accepted Status = "accepted" +) + +// Invitation model definition type Invitation struct { Base InviteeID uint `gorm:"column:invitee_id" json:"invitee_id"` OrganisationID uint `gorm:"column:organisation_id" json:"organisation_id"` Role string `gorm:"column:role" json:"role"` - Status bool `gorm:"column:status" json:"status"` + Status Status `gorm:"column:status" json:"status"` ExpiredAt time.Time `json:"expired_at"` }