fix(admin): project_members use project_uuid/user_uuid column names not SeaORM field names
This commit is contained in:
parent
4d4a0dc886
commit
623faf8c55
@ -20,8 +20,8 @@ export async function PATCH(
|
|||||||
return NextResponse.json({ error: "无效的角色" }, { status: 400 });
|
return NextResponse.json({ error: "无效的角色" }, { status: 400 });
|
||||||
}
|
}
|
||||||
|
|
||||||
const member = await query<{ id: string; scope: string; user: string }>(
|
const member = await query<{ id: string; scope: string; user_uuid: string }>(
|
||||||
`SELECT id, scope, user FROM project_members WHERE id = $1 AND project = $2`,
|
`SELECT id, scope, user_uuid FROM project_members WHERE id = $1 AND project_uuid = $2`,
|
||||||
[memberId, id]
|
[memberId, id]
|
||||||
);
|
);
|
||||||
if (!member.rows.length) {
|
if (!member.rows.length) {
|
||||||
@ -64,8 +64,8 @@ export async function DELETE(
|
|||||||
const adminUserId = parseInt(req.headers.get("x-admin-user-id") || "0", 10);
|
const adminUserId = parseInt(req.headers.get("x-admin-user-id") || "0", 10);
|
||||||
const adminUsername = req.headers.get("x-admin-username") || "unknown";
|
const adminUsername = req.headers.get("x-admin-username") || "unknown";
|
||||||
|
|
||||||
const member = await query<{ id: string; scope: string; user: string }>(
|
const member = await query<{ id: string; scope: string; user_uuid: string }>(
|
||||||
`SELECT id, scope, user FROM project_members WHERE id = $1 AND project = $2`,
|
`SELECT id, scope, user_uuid FROM project_members WHERE id = $1 AND project_uuid = $2`,
|
||||||
[memberId, id]
|
[memberId, id]
|
||||||
);
|
);
|
||||||
if (!member.rows.length) {
|
if (!member.rows.length) {
|
||||||
@ -83,7 +83,7 @@ export async function DELETE(
|
|||||||
action: "delete",
|
action: "delete",
|
||||||
resource: "project_member",
|
resource: "project_member",
|
||||||
resourceId: memberId,
|
resourceId: memberId,
|
||||||
requestParams: { projectId: id, userId: member.rows[0].user },
|
requestParams: { projectId: id, userId: member.rows[0].user_uuid },
|
||||||
ipAddress: req.headers.get("x-forwarded-for") || undefined,
|
ipAddress: req.headers.get("x-forwarded-for") || undefined,
|
||||||
userAgent: req.headers.get("user-agent") || undefined,
|
userAgent: req.headers.get("user-agent") || undefined,
|
||||||
});
|
});
|
||||||
|
|||||||
@ -13,21 +13,21 @@ export async function GET(
|
|||||||
const { id } = await params;
|
const { id } = await params;
|
||||||
|
|
||||||
const result = await query(
|
const result = await query(
|
||||||
`SELECT pm.id, pm.project, pm.user, pm.scope, pm.joined_at::text,
|
`SELECT pm.id, pm.project_uuid, pm.user_uuid, pm.scope, pm.joined_at::text,
|
||||||
u.username, u.display_name, u.avatar_url,
|
u.username, u.display_name, u.avatar_url,
|
||||||
COALESCE(up.is_active, true) as user_is_active
|
COALESCE(up.is_active, true) as user_is_active
|
||||||
FROM project_members pm
|
FROM project_members pm
|
||||||
JOIN "user" u ON u.uid = pm.user
|
JOIN "user" u ON u.uid = pm.user_uuid
|
||||||
LEFT JOIN user_password up ON up.user = u.uid
|
LEFT JOIN user_password up ON up.user = u.uid
|
||||||
WHERE pm.project = $1
|
WHERE pm.project_uuid = $1
|
||||||
ORDER BY pm.scope = 'owner' DESC, pm.scope = 'admin' DESC, pm.joined_at ASC`,
|
ORDER BY pm.scope = 'owner' DESC, pm.scope = 'admin' DESC, pm.joined_at ASC`,
|
||||||
[id]
|
[id]
|
||||||
);
|
);
|
||||||
|
|
||||||
const members = result.rows.map((r: Record<string, unknown>) => ({
|
const members = result.rows.map((r: Record<string, unknown>) => ({
|
||||||
id: r.id,
|
id: r.id,
|
||||||
projectId: r.project,
|
projectId: r.project_uuid,
|
||||||
userId: r.user,
|
userId: r.user_uuid,
|
||||||
scope: r.scope,
|
scope: r.scope,
|
||||||
joinedAt: r.joined_at,
|
joinedAt: r.joined_at,
|
||||||
username: r.username,
|
username: r.username,
|
||||||
@ -81,7 +81,7 @@ export async function POST(
|
|||||||
|
|
||||||
// 检查是否已是成员
|
// 检查是否已是成员
|
||||||
const exist = await query(
|
const exist = await query(
|
||||||
`SELECT id FROM project_members WHERE project = $1 AND user = $2`,
|
`SELECT id FROM project_members WHERE project_uuid = $1 AND user_uuid = $2`,
|
||||||
[id, body.userId]
|
[id, body.userId]
|
||||||
);
|
);
|
||||||
if (exist.rows.length) {
|
if (exist.rows.length) {
|
||||||
@ -89,7 +89,7 @@ export async function POST(
|
|||||||
}
|
}
|
||||||
|
|
||||||
const result = await query(
|
const result = await query(
|
||||||
`INSERT INTO project_members (project, user, scope, joined_at)
|
`INSERT INTO project_members (project_uuid, user_uuid, scope, joined_at)
|
||||||
VALUES ($1, $2, $3, NOW())
|
VALUES ($1, $2, $3, NOW())
|
||||||
RETURNING id`,
|
RETURNING id`,
|
||||||
[id, body.userId, scope]
|
[id, body.userId, scope]
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user