quintodrome/model/user.go

29 lines
812 B
Go
Raw Normal View History

2020-01-14 18:22:34 -09:00
package model
2020-01-14 12:11:27 -09:00
import "time"
type User struct {
ID string `json:"id" orm:"column(id)"`
UserName string `json:"userName"`
Name string `json:"name"`
Email string `json:"email"`
Password string `json:"password"`
IsAdmin bool `json:"isAdmin"`
LastLoginAt *time.Time `json:"lastLoginAt"`
LastAccessAt *time.Time `json:"lastAccessAt"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
// TODO ChangePassword string `json:"password"`
2020-01-14 12:11:27 -09:00
}
type Users []User
type UserRepository interface {
CountAll(...QueryOptions) (int64, error)
Get(id string) (*User, error)
Put(*User) error
2020-01-20 05:54:29 -09:00
FindByUsername(username string) (*User, error)
UpdateLastLoginAt(id string) error
UpdateLastAccessAt(id string) error
}