Files
workspace/code/allapp/allapp-go/db/queries/space_user.sql
T
2026-01-28 17:19:41 +08:00

44 lines
1.1 KiB
SQL

-- 插入空间用户
-- name: InsertSpaceUser :exec
INSERT INTO space_user(id,space_id,user_id,role,join_time)
VALUES ($1,$2,$3,$4,NOW());
-- name: ListSpaceUsers :many
SELECT
u.id AS user_id,
u.username AS user_name,
u.avatar AS user_avatar,
u.last_login_time AS last_login_time,
su.role
FROM space_user su
INNER JOIN "user" u ON su.user_id = u.id
WHERE su.space_id = $1
ORDER BY su.role DESC, u.username ASC;
-- 获取空间用户
-- name: GetSpaceUser :one
SELECT *
FROM space_user
WHERE user_id = $1;
-- 删除某个用户在所有空间的关系
-- name: DeleteSpaceUserByUserID :exec
DELETE FROM space_user
WHERE user_id = $1;
-- 删除某个用户在指定空间中的关系
-- name: DeleteSpaceUserBySpaceIDAndUserID :exec
DELETE FROM space_user
WHERE space_id = $1
AND user_id = $2;
-- 删除某个空间下的所有用户
-- name: DeleteSpaceUsersBySpaceID :exec
DELETE FROM space_user
WHERE space_id = $1;
-- 修改角色
-- name: UpdateSpaceUserRole :exec
UPDATE space_user
SET role = $1
WHERE user_id = $2 AND space_id = $3;