Files
online-energieausweis/src/pages/[partner]/angebot-anfragen/geg-nachweis-gewerbe-anfragen/index.astro
Moritz Utcke 5f97e1f37e Daten weg im Bestellptozess nach Passwort anfordern. Joachim Weggler
Nachdem ein neues Passwort angefragt wurde wird der Kunde nun automatisch zurück zum Formular geleitet.
2025-10-14 11:59:15 -04:00

87 lines
2.6 KiB
Plaintext

---
import AusweisLayout from "#layouts/AusweisLayoutDatenPartner.astro";
import { Aufnahme, Bild, Enums, GEGNachweisGewerbe, GEGNachweisWohnen, Objekt, Unterlage } from "#lib/server/prisma";
import { getAufnahme, getObjekt, getBilder, getGEGNachweisWohnen, getUnterlagen, getGEGNachweisGewerbe } from "#lib/server/db";
import { getCurrentUser } from "#lib/server/user";
import GEGNachweisGewerbeModule from "#modules/angebot-anfragen/GEGNachweisGewerbeModule.svelte";
const id = Astro.url.searchParams.get("id");
const aufnahme_id = Astro.url.searchParams.get("aufnahme")
let nachweistyp = Astro.url.searchParams.get("ausweistyp") as Enums.AusweisTyp || Enums.AusweisTyp.Standard;
let nachweis: GEGNachweisGewerbe = {} as GEGNachweisGewerbe;
let aufnahme: Aufnahme = {} as Aufnahme;
let objekt: Objekt = {} as Objekt;
let bilder: Bild[] = []
let unterlagen: Unterlage[] = []
const user = await getCurrentUser(Astro)
if (id) {
if (!user) {
return Astro.redirect(
`/auth/login?r=${Astro.url.toString()}`
);
}
nachweis = await getGEGNachweisGewerbe(id) as GEGNachweisGewerbe
if (!nachweis || nachweis.benutzer_id !== user.id) {
// Der Ausweis scheint nicht zu existieren.
// Wir leiten auf die generische Ausweisseite ohne ID weiter.
return Astro.redirect(
"/angebot-anfragen/geg-nachweis-gewerbe-anfragen"
);
}
aufnahme = await getAufnahme(nachweis.aufnahme_id) as Aufnahme
if (!aufnahme) {
// Die Aufnahme existiert nicht, das sollte eigentlich nicht passieren aber so können wir nicht fortfahren.
return Astro.redirect(
"/angebot-anfragen/geg-nachweis-gewerbe-anfragen"
);
}
objekt = await getObjekt(aufnahme.objekt_id) as Objekt
if (!objekt) {
// Das Objekt existiert nicht, das sollte eigentlich nicht passieren aber so können wir nicht fortfahren.
return Astro.redirect(
"/angebot-anfragen/geg-nachweis-gewerbe-anfragen"
);
}
bilder = await getBilder(aufnahme.id);
unterlagen = await getUnterlagen(aufnahme.id);
} else if (aufnahme_id) {
if (!user) {
return Astro.redirect(
`/auth/login?r=${Astro.url.toString()}`
);
}
aufnahme = await getAufnahme(nachweis.aufnahme_id) as Aufnahme
if (!aufnahme) {
// Die Aufnahme existiert wohl nicht.
return Astro.redirect(
"/angebot-anfragen/geg-nachweis-gewerbe-anfragen"
);
}
objekt = await getObjekt(aufnahme.objekt_id) as Objekt
if (!objekt) {
// Das Objekt existiert nicht.
return Astro.redirect(
"/angebot-anfragen/geg-nachweis-gewerbe-anfragen"
);
}
}
---
<AusweisLayout title="GEG Nachweis Wohnen anfragen" tabHover6="glow">
<GEGNachweisGewerbeModule client:only {nachweis} {objekt} {aufnahme} {bilder} {unterlagen} {id} {nachweistyp} />
</AusweisLayout>