65 lines
1.0 KiB
Go
65 lines
1.0 KiB
Go
package domain
|
|
|
|
import (
|
|
"errors"
|
|
"time"
|
|
)
|
|
|
|
var (
|
|
ErrUserNotFound = errors.New("user not found")
|
|
)
|
|
|
|
type User struct {
|
|
ID int64
|
|
FirstName string
|
|
LastName string
|
|
Email string
|
|
PhoneNumber string
|
|
Password []byte
|
|
Role Role
|
|
//
|
|
EmailVerified bool
|
|
PhoneVerified bool
|
|
//
|
|
CreatedAt time.Time
|
|
UpdatedAt time.Time
|
|
//
|
|
SuspendedAt time.Time
|
|
Suspended bool
|
|
//
|
|
BranchID int64
|
|
}
|
|
type RegisterUserReq struct {
|
|
FirstName string
|
|
LastName string
|
|
Email string
|
|
PhoneNumber string
|
|
Password string
|
|
Role string
|
|
Otp string
|
|
ReferalCode string
|
|
//
|
|
OtpMedium OtpMedium
|
|
}
|
|
type CreateUserReq struct {
|
|
FirstName string
|
|
LastName string
|
|
Email string
|
|
PhoneNumber string
|
|
Password string
|
|
Role string
|
|
}
|
|
type ResetPasswordReq struct {
|
|
Email string
|
|
PhoneNumber string
|
|
Password string
|
|
Otp string
|
|
OtpMedium OtpMedium
|
|
}
|
|
type UpdateUserReq struct {
|
|
UserId int64
|
|
FirstName ValidString
|
|
LastName ValidString
|
|
Suspended ValidBool
|
|
}
|