feat: update template
This commit is contained in:
@@ -78,34 +78,7 @@ func (q *Queries) DeleteUser(ctx context.Context, id int32) (int64, error) {
|
||||
return result.RowsAffected(), nil
|
||||
}
|
||||
|
||||
const getActiveUserByID = `-- name: GetActiveUserByID :one
|
||||
SELECT id, account, username, status
|
||||
FROM sys_users
|
||||
WHERE id = $1
|
||||
AND status = 1
|
||||
`
|
||||
|
||||
type GetActiveUserByIDRow struct {
|
||||
ID int32 `json:"id"`
|
||||
Account string `json:"account"`
|
||||
Username string `json:"username"`
|
||||
Status int16 `json:"status"`
|
||||
}
|
||||
|
||||
// 场景:用户登录、获取个人信息、刷新 Token(严格校验 status = 1)
|
||||
func (q *Queries) GetActiveUserByID(ctx context.Context, id int32) (GetActiveUserByIDRow, error) {
|
||||
row := q.db.QueryRow(ctx, getActiveUserByID, id)
|
||||
var i GetActiveUserByIDRow
|
||||
err := row.Scan(
|
||||
&i.ID,
|
||||
&i.Account,
|
||||
&i.Username,
|
||||
&i.Status,
|
||||
)
|
||||
return i, err
|
||||
}
|
||||
|
||||
const getUserByAccount = `-- name: GetUserByAccount :one
|
||||
const getUser = `-- name: GetUser :one
|
||||
SELECT u.id,
|
||||
u.account,
|
||||
u.username,
|
||||
@@ -113,14 +86,21 @@ SELECT u.id,
|
||||
u.status,
|
||||
u.avatar_id,
|
||||
f.file_url AS avatar_url,
|
||||
u.token_version,
|
||||
u.created_at,
|
||||
u.updated_at
|
||||
FROM sys_users u
|
||||
LEFT JOIN files f ON u.avatar_id = f.id
|
||||
WHERE u.account = $1
|
||||
WHERE u.id = $1
|
||||
OR u.account = $2
|
||||
`
|
||||
|
||||
type GetUserByAccountRow struct {
|
||||
type GetUserParams struct {
|
||||
ID int32 `json:"id"`
|
||||
Account string `json:"account"`
|
||||
}
|
||||
|
||||
type GetUserRow struct {
|
||||
ID int32 `json:"id"`
|
||||
Account string `json:"account"`
|
||||
Username string `json:"username"`
|
||||
@@ -128,13 +108,14 @@ type GetUserByAccountRow struct {
|
||||
Status int16 `json:"status"`
|
||||
AvatarID *int32 `json:"avatar_id"`
|
||||
AvatarUrl *string `json:"avatar_url"`
|
||||
TokenVersion int32 `json:"token_version"`
|
||||
CreatedAt time.Time `json:"created_at"`
|
||||
UpdatedAt *time.Time `json:"updated_at"`
|
||||
}
|
||||
|
||||
func (q *Queries) GetUserByAccount(ctx context.Context, account string) (GetUserByAccountRow, error) {
|
||||
row := q.db.QueryRow(ctx, getUserByAccount, account)
|
||||
var i GetUserByAccountRow
|
||||
func (q *Queries) GetUser(ctx context.Context, arg GetUserParams) (GetUserRow, error) {
|
||||
row := q.db.QueryRow(ctx, getUser, arg.ID, arg.Account)
|
||||
var i GetUserRow
|
||||
err := row.Scan(
|
||||
&i.ID,
|
||||
&i.Account,
|
||||
@@ -143,53 +124,53 @@ func (q *Queries) GetUserByAccount(ctx context.Context, account string) (GetUser
|
||||
&i.Status,
|
||||
&i.AvatarID,
|
||||
&i.AvatarUrl,
|
||||
&i.TokenVersion,
|
||||
&i.CreatedAt,
|
||||
&i.UpdatedAt,
|
||||
)
|
||||
return i, err
|
||||
}
|
||||
|
||||
const getUserByID = `-- name: GetUserByID :one
|
||||
SELECT u.id,
|
||||
u.account,
|
||||
u.username,
|
||||
u.avatar_id,
|
||||
u.status,
|
||||
f.file_url AS avatar_url,
|
||||
u.created_at,
|
||||
u.updated_at
|
||||
FROM sys_users u
|
||||
LEFT JOIN files f ON u.avatar_id = f.id
|
||||
WHERE u.id = $1
|
||||
const getUserAuthState = `-- name: GetUserAuthState :one
|
||||
SELECT status,
|
||||
token_version
|
||||
FROM sys_users
|
||||
WHERE id = $1
|
||||
`
|
||||
|
||||
type GetUserByIDRow struct {
|
||||
ID int32 `json:"id"`
|
||||
Account string `json:"account"`
|
||||
Username string `json:"username"`
|
||||
AvatarID *int32 `json:"avatar_id"`
|
||||
Status int16 `json:"status"`
|
||||
AvatarUrl *string `json:"avatar_url"`
|
||||
CreatedAt time.Time `json:"created_at"`
|
||||
UpdatedAt *time.Time `json:"updated_at"`
|
||||
type GetUserAuthStateRow struct {
|
||||
Status int16 `json:"status"`
|
||||
TokenVersion int32 `json:"token_version"`
|
||||
}
|
||||
|
||||
func (q *Queries) GetUserByID(ctx context.Context, id int32) (GetUserByIDRow, error) {
|
||||
row := q.db.QueryRow(ctx, getUserByID, id)
|
||||
var i GetUserByIDRow
|
||||
err := row.Scan(
|
||||
&i.ID,
|
||||
&i.Account,
|
||||
&i.Username,
|
||||
&i.AvatarID,
|
||||
&i.Status,
|
||||
&i.AvatarUrl,
|
||||
&i.CreatedAt,
|
||||
&i.UpdatedAt,
|
||||
)
|
||||
func (q *Queries) GetUserAuthState(ctx context.Context, id int32) (GetUserAuthStateRow, error) {
|
||||
row := q.db.QueryRow(ctx, getUserAuthState, id)
|
||||
var i GetUserAuthStateRow
|
||||
err := row.Scan(&i.Status, &i.TokenVersion)
|
||||
return i, err
|
||||
}
|
||||
|
||||
const incrementTokenVersionForAllUsers = `-- name: IncrementTokenVersionForAllUsers :exec
|
||||
UPDATE sys_users
|
||||
SET token_version = token_version + 1
|
||||
`
|
||||
|
||||
func (q *Queries) IncrementTokenVersionForAllUsers(ctx context.Context) error {
|
||||
_, err := q.db.Exec(ctx, incrementTokenVersionForAllUsers)
|
||||
return err
|
||||
}
|
||||
|
||||
const incrementUserTokenVersion = `-- name: IncrementUserTokenVersion :exec
|
||||
UPDATE sys_users
|
||||
SET token_version = token_version + 1
|
||||
WHERE id = $1
|
||||
`
|
||||
|
||||
func (q *Queries) IncrementUserTokenVersion(ctx context.Context, id int32) error {
|
||||
_, err := q.db.Exec(ctx, incrementUserTokenVersion, id)
|
||||
return err
|
||||
}
|
||||
|
||||
const listAdminMenus = `-- name: ListAdminMenus :many
|
||||
SELECT id, name, path, component, type, hidden, sort, status, parent_id, icon, created_at, updated_at
|
||||
FROM sys_menus
|
||||
|
||||
Reference in New Issue
Block a user