| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- package models
- import (
- "errors"
- "time"
- )
- // Typed errors
- var (
- ErrTempUserNotFound = errors.New("User not found")
- )
- type TempUserStatus string
- const (
- TmpUserSignUpStarted TempUserStatus = "SignUpStarted"
- TmpUserInvitePending TempUserStatus = "InvitePending"
- TmpUserCompleted TempUserStatus = "Completed"
- TmpUserRevoked TempUserStatus = "Revoked"
- )
- // TempUser holds data for org invites and unconfirmed sign ups
- type TempUser struct {
- Id int64
- OrgId int64
- Version int
- Email string
- Name string
- Role RoleType
- InvitedByUserId int64
- Status TempUserStatus
- EmailSent bool
- EmailSentOn time.Time
- Code string
- RemoteAddr string
- Created time.Time
- Updated time.Time
- }
- // ---------------------
- // COMMANDS
- type CreateTempUserCommand struct {
- Email string
- Name string
- OrgId int64
- InvitedByUserId int64
- Status TempUserStatus
- Code string
- Role RoleType
- RemoteAddr string
- Result *TempUser
- }
- type UpdateTempUserStatusCommand struct {
- Code string
- Status TempUserStatus
- }
- type UpdateTempUserWithEmailSentCommand struct {
- Code string
- }
- type GetTempUsersQuery struct {
- OrgId int64
- Email string
- Status TempUserStatus
- Result []*TempUserDTO
- }
- type GetTempUserByCodeQuery struct {
- Code string
- Result *TempUserDTO
- }
- type TempUserDTO struct {
- Id int64 `json:"id"`
- OrgId int64 `json:"orgId"`
- Name string `json:"name"`
- Email string `json:"email"`
- Role RoleType `json:"role"`
- InvitedByLogin string `json:"invitedByLogin"`
- InvitedByEmail string `json:"invitedByEmail"`
- InvitedByName string `json:"invitedByName"`
- Code string `json:"code"`
- Status TempUserStatus `json:"status"`
- Url string `json:"url"`
- EmailSent bool `json:"emailSent"`
- EmailSentOn time.Time `json:"emailSentOn"`
- Created time.Time `json:"createdOn"`
- }
|