mirror of
https://github.com/snowykami/neo-blog.git
synced 2025-09-26 11:06:23 +00:00
- Replaced static config with dynamic site info context. - Updated color scheme handling in various components to use site info. - Removed deprecated config file and integrated site info fetching. - Enhanced user preference page to allow color scheme selection. - Adjusted blog and console components to reflect new site info structure. - Improved error handling and fallback mechanisms for site info retrieval.
105 lines
2.9 KiB
Go
105 lines
2.9 KiB
Go
package dto
|
|
|
|
type UserDto struct {
|
|
ID uint `json:"id"` // 用户ID
|
|
Username string `json:"username"` // 用户名
|
|
Nickname string `json:"nickname"`
|
|
AvatarUrl string `json:"avatar_url"` // 头像URL
|
|
BackgroundUrl string `json:"background_url"`
|
|
PreferredColor string `json:"preferred_color"` // 主题色
|
|
Email string `json:"email"` // 邮箱
|
|
Gender string `json:"gender"`
|
|
Role string `json:"role"`
|
|
Language string `json:"language"` // 语言
|
|
}
|
|
|
|
type UserOidcConfigDto struct {
|
|
Name string `json:"name"` // OIDC配置名称
|
|
DisplayName string `json:"display_name"` // OIDC配置显示名称
|
|
Icon string `json:"icon"` // OIDC配置图标URL
|
|
LoginUrl string `json:"login_url"` // OIDC登录URL
|
|
}
|
|
type UserLoginReq struct {
|
|
Username string `json:"username"` // username or email
|
|
Password string `json:"password"`
|
|
}
|
|
|
|
type UserLoginResp struct {
|
|
Token string `json:"token"`
|
|
RefreshToken string `json:"refresh_token"`
|
|
User UserDto `json:"user"`
|
|
}
|
|
|
|
type UserRegisterReq struct {
|
|
Username string `json:"username"` // 用户名
|
|
Nickname string `json:"nickname"` // 昵称
|
|
Password string `json:"password"` // 密码
|
|
Email string `json:"-" binding:"-"`
|
|
}
|
|
|
|
type UserRegisterResp struct {
|
|
Token string `json:"token"` // 访问令牌
|
|
RefreshToken string `json:"refresh_token"` // 刷新令牌
|
|
User UserDto `json:"user"` // 用户信息
|
|
}
|
|
|
|
type VerifyEmailReq struct {
|
|
Email string `json:"email"` // 邮箱地址
|
|
}
|
|
|
|
type VerifyEmailResp struct {
|
|
Success bool `json:"success"` // 验证码发送成功与否
|
|
}
|
|
|
|
type OidcLoginReq struct {
|
|
Name string `json:"name"` // OIDC配置名称
|
|
Code string `json:"code"` // OIDC授权码
|
|
State string `json:"state"`
|
|
}
|
|
|
|
type OidcLoginResp struct {
|
|
Token string `json:"token"`
|
|
RefreshToken string `json:"refresh_token"`
|
|
User UserDto `json:"user"`
|
|
}
|
|
|
|
type ListOidcConfigResp struct {
|
|
OidcConfigs []UserOidcConfigDto `json:"oidc_configs"` // OIDC配置列表
|
|
}
|
|
|
|
type GetUserReq struct {
|
|
UserID uint `json:"user_id"`
|
|
}
|
|
|
|
type GetUserByUsernameReq struct {
|
|
Username string `json:"username"`
|
|
}
|
|
|
|
type GetUserResp struct {
|
|
User UserDto `json:"user"` // 用户信息
|
|
}
|
|
|
|
type UpdateUserReq struct {
|
|
ID uint `json:"id"`
|
|
Username string `json:"username"`
|
|
Nickname string `json:"nickname"`
|
|
AvatarUrl string `json:"avatar_url"`
|
|
BackgroundUrl string `json:"background_url"`
|
|
PreferredColor string `json:"preferred_color"`
|
|
Gender string `json:"gender"`
|
|
}
|
|
|
|
type UpdateUserResp struct {
|
|
User *UserDto `json:"user"` // 更新后的用户信息
|
|
}
|
|
|
|
type UpdatePasswordReq struct {
|
|
OldPassword string `json:"old_password"`
|
|
NewPassword string `json:"new_password"`
|
|
}
|
|
|
|
type ResetPasswordReq struct {
|
|
Email string `json:"-" binding:"-"`
|
|
NewPassword string `json:"new_password"`
|
|
}
|