memos/api/user.go
2022-02-03 15:32:03 +08:00

41 lines
874 B
Go

package api
type User struct {
Id int `jsonapi:"primary,user"`
CreatedTs int64 `jsonapi:"attr,createdTs"`
UpdatedTs int64 `jsonapi:"attr,updatedTs"`
Name string `jsonapi:"attr,name"`
Password string
OpenId string `jsonapi:"attr,openId"`
}
type UserCreate struct {
Name string `jsonapi:"attr,name"`
Password string `jsonapi:"attr,password"`
OpenId string `jsonapi:"attr,openId"`
}
type UserPatch struct {
Id int
Name *string `jsonapi:"attr,name"`
Password *string `jsonapi:"attr,password"`
OpenId *string
ResetOpenId *bool `jsonapi:"attr,resetOpenId"`
}
type UserFind struct {
Id *int `jsonapi:"attr,id"`
Name *string `jsonapi:"attr,name"`
OpenId *string
}
type UserService interface {
CreateUser(create *UserCreate) (*User, error)
PatchUser(patch *UserPatch) (*User, error)
FindUser(find *UserFind) (*User, error)
}