44 lines
1.1 KiB
SQL
44 lines
1.1 KiB
SQL
-- 插入空间用户
|
|
-- name: InsertSpaceMember :exec
|
|
INSERT INTO space_member(id,space_id,user_id,role,join_time)
|
|
VALUES ($1,$2,$3,$4,NOW());
|
|
|
|
-- name: ListSpaceMembers :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_member 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: GetSpaceMember :one
|
|
SELECT *
|
|
FROM space_member
|
|
WHERE user_id = $1;
|
|
|
|
-- 删除某个用户在所有空间的关系
|
|
-- name: DeleteSpaceMemberByUserID :exec
|
|
DELETE FROM space_member
|
|
WHERE user_id = $1;
|
|
|
|
-- 删除某个用户在指定空间中的关系
|
|
-- name: DeleteSpaceMemberBySpaceIDAndUserID :exec
|
|
DELETE FROM space_member
|
|
WHERE space_id = $1
|
|
AND user_id = $2;
|
|
|
|
-- 删除某个空间下的所有用户
|
|
-- name: DeleteSpaceMembersBySpaceID :exec
|
|
DELETE FROM space_member
|
|
WHERE space_id = $1;
|
|
|
|
-- 修改角色
|
|
-- name: UpdateSpaceMemberRole :exec
|
|
UPDATE space_member
|
|
SET role = $1
|
|
WHERE user_id = $2 AND space_id = $3; |