UNPKG

@opengis/fastify-table

Version:

core-plugins

23 lines (22 loc) 1.04 kB
import { pgClients, getAdminAccess } from "../../../../utils.js"; export default async function accessGroup({ pg = pgClients.client, params, user = {}, unittest, }, reply) { if (!params?.id) { return reply.status(400).send("not enough params: id"); } // restrict access - admin only const check = await getAdminAccess({ id: params.id, user, }); if (check?.message && check?.status && !unittest) { return reply.status(check?.status).send(check?.message); } const { rows: routes = [] } = await pg.query(`select a.route_id as path, b.actions from admin.routes a left join admin.role_access b on a.route_id=b.route_id where b.role_id=$1`, [params.id]); const { rows: users = [] } = await pg.query(`select user_uid as id, user_name as name, access_granted, b.cdate as user_created, b.last_activity_date as last_activity from admin.user_roles a left join admin.users b on a.user_uid=b.uid where a.role_id=$1`, [params.id]); return { routes, users }; }