--- import UserLayout from "#layouts/DashboardLayout.astro"; import { Enums, prisma } from "#lib/server/prisma"; import { getCurrentUser } from "#lib/server/user"; import DashboardAufnahmeModule from "#modules/Dashboard/DashboardAufnahmeModule.svelte"; import { getPrismaAusweisAdapter } from "#lib/server/ausweis"; const id = Astro.params.id as string; const page = Number(Astro.url.searchParams.get("p")); const user = await getCurrentUser(Astro); if (!user) { return Astro.redirect("/auth/login"); } const totalPageCount = await prisma.aufnahme.count({ where: user.rolle !== Enums.BenutzerRolle.ADMIN ? { benutzer: { id: user.id, }, } : {}, }); let ausweis; // Wir fragen den neuesten Ausweis ab // Falls der Nutzer ein Admin ist dann kommt der ganz neueste ansonsten der neueste des eingeloggten Benutzers. if (user.rolle !== Enums.BenutzerRolle.ADMIN) { const adapter = getPrismaAusweisAdapter(id); ausweis = await adapter?.findUnique({ where: { id, benutzer_id: user.id, }, include: { rechnung: true, benutzer: true, aufnahme: { include: { bilder: true, unterlagen: true, objekt: true, }, }, }, }); } else { const adapter = getPrismaAusweisAdapter(id); ausweis = await adapter?.findUnique({ where: { id, }, include: { rechnung: true, benutzer: true, aufnahme: { include: { bilder: true, unterlagen: true, objekt: true, }, }, }, }); } if (!ausweis) { return Astro.redirect("/dashboard/objekte?p=1") } ---