feat: 统一sql命名、函数命名
This commit is contained in:
53
internal/model/response/user.go
Normal file
53
internal/model/response/user.go
Normal file
@@ -0,0 +1,53 @@
|
||||
package response
|
||||
|
||||
import (
|
||||
"server/internal/db/sqlc"
|
||||
"time"
|
||||
)
|
||||
|
||||
type UserRolesResponse struct {
|
||||
ID uint `json:"id"`
|
||||
Code string `json:"code"`
|
||||
Description string `json:"description"`
|
||||
}
|
||||
|
||||
type UserInfo struct {
|
||||
ID int32 `json:"id"`
|
||||
Account string `json:"account"`
|
||||
Username string `json:"username"`
|
||||
AvatarUrl string `json:"avatar_url"`
|
||||
Roles []string `json:"roles"`
|
||||
Menus []sqlc.SysMenu `json:"menus"`
|
||||
Permissions []string `json:"permissions"`
|
||||
}
|
||||
|
||||
type LoginResponse struct {
|
||||
AccessToken string `json:"access_token"`
|
||||
AccessTokenExp time.Time `json:"access_token_exp"`
|
||||
RefreshToken string `json:"refresh_token"`
|
||||
RefreshTokenExp time.Time `json:"refresh_token_exp"`
|
||||
}
|
||||
|
||||
func NewUserInfo(user sqlc.GetUserByIDRow, roles []sqlc.SysRole, menus []sqlc.SysMenu, p []*string) *UserInfo {
|
||||
roleCodes := make([]string, len(roles))
|
||||
for i, role := range roles {
|
||||
roleCodes[i] = role.Code
|
||||
}
|
||||
|
||||
permissions := make([]string, 0, len(p))
|
||||
for _, code := range p {
|
||||
if code != nil {
|
||||
permissions = append(permissions, *code)
|
||||
}
|
||||
}
|
||||
|
||||
return &UserInfo{
|
||||
ID: user.ID,
|
||||
Account: user.Account,
|
||||
Username: user.Username,
|
||||
AvatarUrl: *user.AvatarUrl,
|
||||
Roles: roleCodes,
|
||||
Menus: menus,
|
||||
Permissions: permissions,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user