42 lines
1008 B
Go
42 lines
1008 B
Go
package adminauth
|
|
|
|
import (
|
|
"time"
|
|
|
|
"hfb_sys/backend/internal/modules/auth"
|
|
)
|
|
|
|
type AdminDTO struct {
|
|
ID uint64 `json:"id"`
|
|
Username string `json:"username"`
|
|
Nickname string `json:"nickname"`
|
|
Status string `json:"status"`
|
|
Roles []RoleDTO `json:"roles"`
|
|
Permissions []string `json:"permissions"`
|
|
LastLoginAt *time.Time `json:"last_login_at"`
|
|
}
|
|
|
|
type RoleDTO struct {
|
|
ID uint64 `json:"id"`
|
|
Code string `json:"code"`
|
|
Name string `json:"name"`
|
|
}
|
|
|
|
type LoginRequest struct {
|
|
Username string `json:"username" binding:"required"`
|
|
Password string `json:"password" binding:"required"`
|
|
CaptchaID string `json:"captcha_id" binding:"required"`
|
|
CaptchaCode string `json:"captcha_code" binding:"required"`
|
|
}
|
|
|
|
type LoginResult struct {
|
|
Admin AdminDTO `json:"admin"`
|
|
Tokens auth.TokenPair `json:"tokens"`
|
|
}
|
|
|
|
type CaptchaDTO struct {
|
|
CaptchaID string `json:"captcha_id"`
|
|
Image string `json:"image"`
|
|
ExpiresIn int64 `json:"expires_in"`
|
|
}
|