docs: 更新 todolist + LESSONS-LEARNED #34-38
This commit is contained in:
parent
25365b1626
commit
92228a3fdb
|
|
@ -17,15 +17,17 @@ export async function GET(request: NextRequest) {
|
||||||
// 返回所有权限定义 + 各角色的权限映射
|
// 返回所有权限定义 + 各角色的权限映射
|
||||||
const rolePermissions = dbQuery<{ role: string; permission_key: string }>('SELECT role, permission_key FROM role_permissions')
|
const rolePermissions = dbQuery<{ role: string; permission_key: string }>('SELECT role, permission_key FROM role_permissions')
|
||||||
const roles = ['admin', 'editor', 'viewer']
|
const roles = ['admin', 'editor', 'viewer']
|
||||||
|
const permKeys = PERMISSIONS.map(p => p.key)
|
||||||
|
|
||||||
const result = roles.map(role => ({
|
const result = roles.map(role => ({
|
||||||
role,
|
role,
|
||||||
permissions: PERMISSIONS.map(p => ({
|
permissions: PERMISSIONS.map(p => ({
|
||||||
key: p,
|
key: p.key,
|
||||||
enabled: role === 'admin' || rolePermissions.some(rp => rp.role === role && rp.permission_key === p),
|
enabled: role === 'admin' || rolePermissions.some(rp => rp.role === role && rp.permission_key === p.key),
|
||||||
})),
|
})),
|
||||||
}))
|
}))
|
||||||
|
|
||||||
return NextResponse.json({ roles: result, allPermissions: PERMISSIONS })
|
return NextResponse.json({ roles: result, allPermissions: permKeys })
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function PUT(request: NextRequest) {
|
export async function PUT(request: NextRequest) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue