diff --git a/src/components/Dashboard/DashboardAusweis.svelte b/src/components/Dashboard/DashboardAusweis.svelte
index b39ffd98..2e1e09fe 100644
--- a/src/components/Dashboard/DashboardAusweis.svelte
+++ b/src/components/Dashboard/DashboardAusweis.svelte
@@ -227,7 +227,11 @@
{:else if ausweis.bestellt}
Bestellt
{:else}
- Gespeichert
+ {#if ausweisart === Enums.Ausweisart.BedarfsausweisGewerbe || ausweisart === Enums.Ausweisart.GEGNachweisWohnen || ausweisart === Enums.Ausweisart.GEGNachweisGewerbe}
+ Gespeichert
+ {:else}
+ Angefordert
+ {/if}
{/if}
{#each objekt.aufnahmen as aufnahme}
diff --git a/src/modules/BedarfsausweisWohnen/BedarfsausweisWohnenModule.svelte b/src/modules/BedarfsausweisWohnen/BedarfsausweisWohnenModule.svelte
index 2a1202fd..1c1a25e4 100644
--- a/src/modules/BedarfsausweisWohnen/BedarfsausweisWohnenModule.svelte
+++ b/src/modules/BedarfsausweisWohnen/BedarfsausweisWohnenModule.svelte
@@ -36,6 +36,8 @@
export let unterlagen: Unterlage[] = [];
export let id: string | null;
+ export let partner_code: string;
+
export let loadFromDatabase: boolean = false;
// Wir holen die daten aus dem LocalStorage falls
@@ -143,6 +145,7 @@
bind:unterlagen
bind:blockLocalStorageSync
{ausweisart}
+ {partner_code}
showWeiter={false}
{form}
{skala}
@@ -277,6 +280,7 @@
bind:unterlagen
bind:blockLocalStorageSync
{ausweisart}
+ {partner_code}
showWeiter={true}
{form}
{skala}
diff --git a/src/modules/Dashboard/DashboardAusweiseModule.svelte b/src/modules/Dashboard/DashboardAusweiseModule.svelte
deleted file mode 100644
index cb4070f5..00000000
--- a/src/modules/Dashboard/DashboardAusweiseModule.svelte
+++ /dev/null
@@ -1,83 +0,0 @@
-
-
-{#if errorCount > 0}
-
Wichtiges
-
-
- {#each ausweisUeberpruefung as { errors }}
- {#if errors.length > 0}
-
-
-
{errors[0].severity == "error" ? "Achtung!" : "Wichtig!"}
-
{errors[0].title}
-
{errors[0].description}
- {#if errors[0].resolvehref}
-
- {/if}
-
-
- {/if}
- {/each}
-
-{/if}
-
-
Ihre Ausweise
-
-
-
- {#if ausweise === null}
-
- {:else}
- {#if ausweise.length == 0}
-
-
Es konnten keine Ausweise gefunden werden.
-
Erstellen sie einen Verbrauchsausweis für ihr Wohngebäude hier
-
- {:else}
- {#each ausweise as ausweis, i}
-
- {/each}
- {/if}
- {/if}
-
-
-
-
\ No newline at end of file
diff --git a/src/modules/KundendatenModule.svelte b/src/modules/KundendatenModule.svelte
index 30e3e76a..d0944afb 100644
--- a/src/modules/KundendatenModule.svelte
+++ b/src/modules/KundendatenModule.svelte
@@ -211,7 +211,7 @@
versand_plz: versand_plz,
versand_ort: versand_ort,
telefon: telefon,
- nachweis_id: result.nachweis_id,
+ nachweis_id: result.nachweis_id
},
{
headers: {
@@ -291,7 +291,7 @@
let result: Awaited
> | Awaited> | null = null;
if (ausweisart === Enums.Ausweisart.GEGNachweisWohnen || ausweisart === Enums.Ausweisart.GEGNachweisGewerbe || ausweisart === Enums.Ausweisart.BedarfsausweisGewerbe) {
- result = await nachweisSpeichern(ausweis, objekt, aufnahme, bilder, unterlagen, ausweisart)
+ result = await nachweisSpeichern(ausweis as unknown as GEGNachweisWohnen, objekt, aufnahme, bilder, unterlagen, ausweisart)
} else {
result = await ausweisSpeichern(ausweis, objekt, aufnahme, bilder, unterlagen, ausweisart)
}
diff --git a/src/modules/VerbrauchsausweisGewerbe/VerbrauchsausweisGewerbeModule.svelte b/src/modules/VerbrauchsausweisGewerbe/VerbrauchsausweisGewerbeModule.svelte
index e4ea4a8b..22bfb6de 100644
--- a/src/modules/VerbrauchsausweisGewerbe/VerbrauchsausweisGewerbeModule.svelte
+++ b/src/modules/VerbrauchsausweisGewerbe/VerbrauchsausweisGewerbeModule.svelte
@@ -49,6 +49,7 @@
export let bilder: BildClient[];
export let id: string | null;
+ export let partner_code: string;
export let loadFromDatabase: boolean = false;
const ausweisart = Enums.Ausweisart.VerbrauchsausweisGewerbe
@@ -128,6 +129,7 @@
ausweisart={Enums.Ausweisart.VerbrauchsausweisGewerbe}
showWeiter={false}
{form}
+ {partner_code}
{skala}
>
@@ -244,6 +246,7 @@
ausweisart={Enums.Ausweisart.VerbrauchsausweisGewerbe}
showWeiter={true}
{form}
+ {partner_code}
{skala}
>
diff --git a/src/modules/VerbrauchsausweisWohnen/VerbrauchsausweisWohnenModule.svelte b/src/modules/VerbrauchsausweisWohnen/VerbrauchsausweisWohnenModule.svelte
index 2e546118..0e2f0f4e 100644
--- a/src/modules/VerbrauchsausweisWohnen/VerbrauchsausweisWohnenModule.svelte
+++ b/src/modules/VerbrauchsausweisWohnen/VerbrauchsausweisWohnenModule.svelte
@@ -160,6 +160,7 @@ let skala: HTMLDivElement;
bind:aufnahme
ausweisart={Enums.Ausweisart.VerbrauchsausweisWohnen}
showWeiter={false}
+ {partner_code}
{form}
{skala}
>
diff --git a/src/pages/[partner]/energieausweis-erstellen/bedarfsausweis-wohngebaeude/index.astro b/src/pages/[partner]/energieausweis-erstellen/bedarfsausweis-wohngebaeude/index.astro
index d4373c1d..929beaf4 100644
--- a/src/pages/[partner]/energieausweis-erstellen/bedarfsausweis-wohngebaeude/index.astro
+++ b/src/pages/[partner]/energieausweis-erstellen/bedarfsausweis-wohngebaeude/index.astro
@@ -1,84 +1,91 @@
---
-import AusweisLayout from "#layouts/AusweisLayoutDaten_partner.astro";
+
+import AusweisLayout from "#layouts/AusweisLayoutDaten.astro";
import BedarfsausweisWohnenModule from "#modules/BedarfsausweisWohnen/BedarfsausweisWohnenModule.svelte";
-import { AufnahmeClient, ObjektClient, BildClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types";
-import { createCaller } from "src/astro-typesafe-api-caller";
-import { API_ACCESS_TOKEN_COOKIE_NAME } from "#lib/constants";
-import { validateAccessTokenServer } from "#server/lib/validateAccessToken";
-import { Enums } from "#lib/server/prisma";
+import { Aufnahme, BedarfsausweisWohnen, Bild, Enums, Objekt } from "#lib/server/prisma";
+import { getAufnahme, getObjekt, getBilder, getBedarfsausweisWohnen } from "#lib/server/db";
+import { getCurrentUser } from "#lib/server/user";
-const id = Astro.url.searchParams.get("uid") || "";
+const id = Astro.url.searchParams.get("id");
const aufnahme_id = Astro.url.searchParams.get("aufnahme")
-const ausweistyp = Astro.url.searchParams.get("ausweistyp") || Enums.AusweisTyp.Standard;
-let ausweis: VerbrauchsausweisWohnenClient = {} as VerbrauchsausweisWohnenClient;
-let aufnahme: AufnahmeClient = {} as AufnahmeClient;
-let objekt: ObjektClient = {} as ObjektClient;
-let bilder: BildClient[] = []
+let ausweistyp = Astro.url.searchParams.get("ausweistyp") as Enums.AusweisTyp || Enums.AusweisTyp.Standard;
+const partner_code = Astro.params.partner as string;
-const valid = validateAccessTokenServer(Astro);
+let ausweis: BedarfsausweisWohnen = {} as BedarfsausweisWohnen;
+let aufnahme: Aufnahme = {} as Aufnahme;
+let objekt: Objekt = {} as Objekt;
+let bilder: Bild[] = []
-const caller = createCaller(Astro);
+const user = await getCurrentUser(Astro)
if (id) {
- if (!valid) {
+ if (!user) {
return Astro.redirect(
`/auth/login?redirect=${Astro.url.toString()}`
);
}
- try {
- ausweis = await caller["bedarfsausweis-wohnen"]._id.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- id
- }
- });
+ ausweis = await getBedarfsausweisWohnen(id) as BedarfsausweisWohnen
+ ausweistyp = ausweis.ausweistyp;
- aufnahme = await caller.aufnahme._id.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- id: ausweis.aufnahme_id
- }
- })
+ if (!ausweis || (ausweis.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
+ // Der Ausweis scheint nicht zu existieren.
+ // Wir leiten auf die generische Ausweisseite ohne ID weiter.
+ return Astro.redirect(
+ "/energieausweis-erstellen/bedarfsausweis-wohngebaeude"
+ );
+ }
- objekt = await caller.objekt._id.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- id: ausweis.objekt_id
- }
- })
+ aufnahme = await getAufnahme(ausweis.aufnahme_id) as Aufnahme
- bilder = await caller.aufnahme._id.bilder.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- id: ausweis.aufnahme_id
- }
- })
+ if (!aufnahme) {
+ // Die Aufnahme existiert nicht, das sollte eigentlich nicht passieren aber so können wir nicht fortfahren.
+ return Astro.redirect(
+ "/energieausweis-erstellen/bedarfsausweis-wohngebaeude"
+ );
+ }
- if (!ausweis) {
- // Der Ausweis scheint nicht zu existieren.
- // Wir leiten auf die generische Ausweisseite ohne UID weiter.
- return Astro.redirect(
- "/energieausweis-erstellen/bedarfsausweis-wohngebaeude"
- );
- }
- } catch(e) {
+ 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(
+ "/energieausweis-erstellen/bedarfsausweis-wohngebaeude"
+ );
+ }
+
+ bilder = await getBilder(aufnahme.id);
+} else if (aufnahme_id) {
+ if (!user) {
+ return Astro.redirect(
+ `/auth/login?redirect=${Astro.url.toString()}`
+ );
+ }
+
+ aufnahme = await getAufnahme(ausweis.aufnahme_id) as Aufnahme
+
+ if (!aufnahme) {
+ // Die Aufnahme existiert wohl nicht.
+ return Astro.redirect(
+ "/energieausweis-erstellen/bedarfsausweis-wohngebaeude"
+ );
+ }
+
+ objekt = await getObjekt(aufnahme.objekt_id) as Objekt
+
+ if (!objekt) {
+ // Das Objekt existiert nicht.
return Astro.redirect(
"/energieausweis-erstellen/bedarfsausweis-wohngebaeude"
);
}
}
+console.log(ausweistyp);
+
+
---
-
-
+
+
\ No newline at end of file
diff --git a/src/pages/[partner]/energieausweis-erstellen/verbrauchsausweis-gewerbe/index.astro b/src/pages/[partner]/energieausweis-erstellen/verbrauchsausweis-gewerbe/index.astro
index 90793f9d..190b9acc 100644
--- a/src/pages/[partner]/energieausweis-erstellen/verbrauchsausweis-gewerbe/index.astro
+++ b/src/pages/[partner]/energieausweis-erstellen/verbrauchsausweis-gewerbe/index.astro
@@ -1,79 +1,80 @@
---
-import AusweisLayout from "#layouts/AusweisLayoutDaten_partner.astro";
-import { AufnahmeClient, ObjektClient, UploadedGebaeudeBild, VerbrauchsausweisGewerbeClient } from "#components/Ausweis/types";
-import { createCaller } from "src/astro-typesafe-api-caller";
-import { inferOutput } from "astro-typesafe-api/client";
-import { API_ACCESS_TOKEN_COOKIE_NAME } from "#lib/constants";
-import { validateAccessTokenServer } from "#server/lib/validateAccessToken";
+import AusweisLayout from "#layouts/AusweisLayoutDaten.astro";
+import { AufnahmeClient, ObjektClient, BildClient, VerbrauchsausweisGewerbeClient } from "#components/Ausweis/types";
import VerbrauchsausweisGewerbeModule from "#modules/VerbrauchsausweisGewerbe/VerbrauchsausweisGewerbeModule.svelte";
-import { Enums } from "#lib/server/prisma";
+import { Aufnahme, Enums, Objekt, VerbrauchsausweisGewerbe } from "#lib/server/prisma";
+import { getAufnahme, getObjekt, getBilder, getVerbrauchsausweisGewerbe } from "#lib/server/db";
+import { getCurrentUser } from "#lib/server/user";
-const uid = Astro.url.searchParams.get("uid");
-const ausweistyp = Astro.url.searchParams.get("ausweistyp") || Enums.AusweisTyp.Standard;
+const id = Astro.url.searchParams.get("id");
+const aufnahme_id = Astro.url.searchParams.get("aufnahme")
+let ausweistyp = Astro.url.searchParams.get("ausweistyp") as Enums.AusweisTyp || Enums.AusweisTyp.Standard;
+const partner_code = Astro.params.partner as string;
let ausweis: VerbrauchsausweisGewerbeClient = {} as VerbrauchsausweisGewerbeClient;
let aufnahme: AufnahmeClient = {} as AufnahmeClient;
let objekt: ObjektClient = {} as ObjektClient;
-let bilder: UploadedGebaeudeBild[] = []
+let bilder: BildClient[] = []
-const valid = validateAccessTokenServer(Astro);
+const user = await getCurrentUser(Astro)
-const caller = createCaller(Astro);
-
-if (uid) {
- if (!valid) {
+if (id) {
+ if (!user) {
return Astro.redirect(
`/auth/login?redirect=${Astro.url.toString()}`
);
}
- try {
- let { uid_aufnahme, uid_objekt, uid_benutzer, ...result } = await caller["verbrauchsausweis-gewerbe"]._uid.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- uid
- }
- });
+ ausweis = await getVerbrauchsausweisGewerbe(id) as VerbrauchsausweisGewerbe
+ ausweistyp = ausweis.ausweistyp;
- ausweis = result
+ if (!ausweis || (ausweis.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
+ // Der Ausweis scheint nicht zu existieren.
+ // Wir leiten auf die generische Ausweisseite ohne ID weiter.
+ return Astro.redirect(
+ "/energieausweis-erstellen/verbrauchsausweis-gewerbe"
+ );
+ }
- aufnahme = await caller.aufnahme._uid.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- uid: uid_aufnahme
- }
- })
+ aufnahme = await getAufnahme(ausweis.aufnahme_id) as Aufnahme
- objekt = await caller.objekt._uid.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- uid: uid_objekt
- }
- })
+ if (!aufnahme) {
+ // Die Aufnahme existiert nicht, das sollte eigentlich nicht passieren aber so können wir nicht fortfahren.
+ return Astro.redirect(
+ "/energieausweis-erstellen/verbrauchsausweis-gewerbe"
+ );
+ }
- bilder = await caller.aufnahme._uid.bilder.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- uid: uid_aufnahme
- }
- })
+ objekt = await getObjekt(aufnahme.objekt_id) as Objekt
- if (!ausweis) {
- // Der Ausweis scheint nicht zu existieren.
- // Wir leiten auf die generische Ausweisseite ohne UID weiter.
- return Astro.redirect(
- "/energieausweis-erstellen/verbrauchsausweis-gewerbe"
- );
- }
- } catch(e) {
+ if (!objekt) {
+ // Das Objekt existiert nicht, das sollte eigentlich nicht passieren aber so können wir nicht fortfahren.
+ return Astro.redirect(
+ "/energieausweis-erstellen/verbrauchsausweis-gewerbe"
+ );
+ }
+
+ bilder = await getBilder(aufnahme.id);
+} else if (aufnahme_id) {
+ if (!user) {
+ return Astro.redirect(
+ `/auth/login?redirect=${Astro.url.toString()}`
+ );
+ }
+
+ aufnahme = await getAufnahme(ausweis.aufnahme_id) as Aufnahme
+
+ if (!aufnahme) {
+ // Die Aufnahme existiert wohl nicht.
+ return Astro.redirect(
+ "/energieausweis-erstellen/verbrauchsausweis-gewerbe"
+ );
+ }
+
+ objekt = await getObjekt(aufnahme.objekt_id) as Objekt
+
+ if (!objekt) {
+ // Das Objekt existiert nicht.
return Astro.redirect(
"/energieausweis-erstellen/verbrauchsausweis-gewerbe"
);
@@ -81,6 +82,6 @@ if (uid) {
}
---
-
-
+
+
\ No newline at end of file
diff --git a/src/pages/[partner]/energieausweis-erstellen/verbrauchsausweis-wohngebaeude/index.astro b/src/pages/[partner]/energieausweis-erstellen/verbrauchsausweis-wohngebaeude/index.astro
index a0b1cf47..467385b4 100644
--- a/src/pages/[partner]/energieausweis-erstellen/verbrauchsausweis-wohngebaeude/index.astro
+++ b/src/pages/[partner]/energieausweis-erstellen/verbrauchsausweis-wohngebaeude/index.astro
@@ -1,77 +1,79 @@
---
import AusweisLayout from "#layouts/AusweisLayoutDaten_partner.astro";
import VerbrauchsausweisWohnenModule from "#modules/VerbrauchsausweisWohnen/VerbrauchsausweisWohnenModule.svelte";
-import { AufnahmeClient, ObjektClient, UploadedGebaeudeBild, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types";
-import { createCaller } from "src/astro-typesafe-api-caller";
-import { API_ACCESS_TOKEN_COOKIE_NAME } from "#lib/constants";
-import { validateAccessTokenServer } from "#server/lib/validateAccessToken";
-import { Enums } from "#lib/server/prisma";
+import { Aufnahme, Bild, Enums, Objekt, VerbrauchsausweisWohnen } from "#lib/server/prisma";
+import { getVerbrauchsausweisWohnen, getAufnahme, getObjekt, getBilder } from "#lib/server/db";
+import { getCurrentUser } from "#lib/server/user";
-const uid = Astro.url.searchParams.get("uid");
-const ausweistyp = Astro.url.searchParams.get("ausweistyp") || Enums.AusweisTyp.Standard;
+const id = Astro.url.searchParams.get("id");
+const aufnahme_id = Astro.url.searchParams.get("aufnahme")
+let ausweistyp = Astro.url.searchParams.get("ausweistyp") as Enums.AusweisTyp || Enums.AusweisTyp.Standard;
+const partner_code = Astro.params.partner as string;
+let ausweis: VerbrauchsausweisWohnen = {} as VerbrauchsausweisWohnen;
+let aufnahme: Aufnahme = {} as Aufnahme;
+let objekt: Objekt = {} as Objekt;
+let bilder: Bild[] = []
-let ausweis: VerbrauchsausweisWohnenClient = {} as VerbrauchsausweisWohnenClient;
-let aufnahme: AufnahmeClient = {} as AufnahmeClient;
-let objekt: ObjektClient = {} as ObjektClient;
-let bilder: UploadedGebaeudeBild[] = []
+const user = await getCurrentUser(Astro)
-const valid = validateAccessTokenServer(Astro);
-
-const caller = createCaller(Astro);
-
-if (uid) {
- if (!valid) {
+if (id) {
+ if (!user) {
return Astro.redirect(
`/auth/login?redirect=${Astro.url.toString()}`
);
}
- try {
- ausweis = await caller["verbrauchsausweis-wohnen"]._uid.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- uid
- }
- });
+ ausweis = await getVerbrauchsausweisWohnen(id) as VerbrauchsausweisWohnen
+ ausweistyp = ausweis.ausweistyp;
- aufnahme = await caller.aufnahme._uid.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- uid: ausweis.uid_aufnahme
- }
- })
+ if (!ausweis || (ausweis.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
+ // Der Ausweis scheint nicht zu existieren.
+ // Wir leiten auf die generische Ausweisseite ohne ID weiter.
+ return Astro.redirect(
+ "/energieausweis-erstellen/verbrauchsausweis-wohngebaeude"
+ );
+ }
- objekt = await caller.objekt._uid.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- uid: ausweis.uid_objekt
- }
- })
+ aufnahme = await getAufnahme(ausweis.aufnahme_id) as Aufnahme
- bilder = await caller.aufnahme._uid.bilder.GET.fetch(null, {
- headers: {
- authorization: `Bearer ${Astro.cookies.get(API_ACCESS_TOKEN_COOKIE_NAME)?.value}`
- },
- params: {
- uid: ausweis.uid_aufnahme
- }
- })
+ if (!aufnahme) {
+ // Die Aufnahme existiert nicht, das sollte eigentlich nicht passieren aber so können wir nicht fortfahren.
+ return Astro.redirect(
+ "/energieausweis-erstellen/verbrauchsausweis-wohngebaeude"
+ );
+ }
- if (!ausweis) {
- // Der Ausweis scheint nicht zu existieren.
- // Wir leiten auf die generische Ausweisseite ohne UID weiter.
- return Astro.redirect(
- "/energieausweis-erstellen/verbrauchsausweis-wohngebaeude"
- );
- }
- } catch(e) {
+ 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(
+ "/energieausweis-erstellen/verbrauchsausweis-wohngebaeude"
+ );
+ }
+
+ bilder = await getBilder(aufnahme.id);
+} else if (aufnahme_id) {
+ if (!user) {
+ return Astro.redirect(
+ `/auth/login?redirect=${Astro.url.toString()}`
+ );
+ }
+
+ aufnahme = await getAufnahme(ausweis.aufnahme_id) as Aufnahme
+
+ if (!aufnahme) {
+ // Die Aufnahme existiert wohl nicht.
+ return Astro.redirect(
+ "/energieausweis-erstellen/verbrauchsausweis-wohngebaeude"
+ );
+ }
+
+ objekt = await getObjekt(aufnahme.objekt_id) as Objekt
+
+ if (!objekt) {
+ // Das Objekt existiert nicht.
return Astro.redirect(
"/energieausweis-erstellen/verbrauchsausweis-wohngebaeude"
);
@@ -81,5 +83,5 @@ if (uid) {
---
-
+
diff --git a/src/pages/api/rechnung/anfordern.ts b/src/pages/api/rechnung/anfordern.ts
index ffe543a4..ba1a21cf 100644
--- a/src/pages/api/rechnung/anfordern.ts
+++ b/src/pages/api/rechnung/anfordern.ts
@@ -51,9 +51,6 @@ export const PUT = defineApiRoute({
"message": `Ausweisart wird nicht unterstützt: ${ausweisart}`
})
}
-
- console.log(nachweis);
-
if (!nachweis || nachweis.benutzer_id !== user.id) {
throw new APIError({
diff --git a/src/pages/dashboard/ausweise/index.astro b/src/pages/dashboard/ausweise/index.astro
deleted file mode 100644
index 4a49e830..00000000
--- a/src/pages/dashboard/ausweise/index.astro
+++ /dev/null
@@ -1,21 +0,0 @@
----
-import UserLayout from "#layouts/DashboardLayout.astro";
-import DashboardAusweiseModule from "#modules/Dashboard/DashboardAusweiseModule.svelte";
-
-import { validateAccessTokenServer } from "#server/lib/validateAccessToken";
-import { createCaller } from "src/astro-typesafe-api-caller";
-
-const accessTokenValid = await validateAccessTokenServer(Astro);
-
-if (!accessTokenValid) {
- return Astro.redirect("/auth/login")
-}
-
-const caller = createCaller(Astro);
-
-const user = await caller.v1.benutzer.self();
----
-
-
-
-
\ No newline at end of file
diff --git a/src/pages/energieausweis-erstellen/bedarfsausweis-wohngebaeude/index.astro b/src/pages/energieausweis-erstellen/bedarfsausweis-wohngebaeude/index.astro
index d5280bea..77528d1e 100644
--- a/src/pages/energieausweis-erstellen/bedarfsausweis-wohngebaeude/index.astro
+++ b/src/pages/energieausweis-erstellen/bedarfsausweis-wohngebaeude/index.astro
@@ -27,7 +27,7 @@ if (id) {
ausweis = await getBedarfsausweisWohnen(id) as BedarfsausweisWohnen
ausweistyp = ausweis.ausweistyp;
- if (!ausweis || ausweis.benutzer_id !== user.id) {
+ if (!ausweis || (ausweis.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
// Der Ausweis scheint nicht zu existieren.
// Wir leiten auf die generische Ausweisseite ohne ID weiter.
return Astro.redirect(
diff --git a/src/pages/energieausweis-erstellen/verbrauchsausweis-gewerbe/index.astro b/src/pages/energieausweis-erstellen/verbrauchsausweis-gewerbe/index.astro
index ebc5b35c..744699cc 100644
--- a/src/pages/energieausweis-erstellen/verbrauchsausweis-gewerbe/index.astro
+++ b/src/pages/energieausweis-erstellen/verbrauchsausweis-gewerbe/index.astro
@@ -27,7 +27,7 @@ if (id) {
ausweis = await getVerbrauchsausweisGewerbe(id) as VerbrauchsausweisGewerbe
ausweistyp = ausweis.ausweistyp;
- if (!ausweis || ausweis.benutzer_id !== user.id) {
+ if (!ausweis || (ausweis.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
// Der Ausweis scheint nicht zu existieren.
// Wir leiten auf die generische Ausweisseite ohne ID weiter.
return Astro.redirect(
diff --git a/src/pages/energieausweis-erstellen/verbrauchsausweis-wohngebaeude/index.astro b/src/pages/energieausweis-erstellen/verbrauchsausweis-wohngebaeude/index.astro
index d2bb033c..3923b2b0 100644
--- a/src/pages/energieausweis-erstellen/verbrauchsausweis-wohngebaeude/index.astro
+++ b/src/pages/energieausweis-erstellen/verbrauchsausweis-wohngebaeude/index.astro
@@ -1,7 +1,6 @@
---
import AusweisLayout from "#layouts/AusweisLayoutDaten.astro";
import VerbrauchsausweisWohnenModule from "#modules/VerbrauchsausweisWohnen/VerbrauchsausweisWohnenModule.svelte";
-import { AufnahmeClient, BildClient, ObjektClient, UploadedGebaeudeBild, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types";
import { Aufnahme, Bild, Enums, Objekt, VerbrauchsausweisWohnen } from "#lib/server/prisma";
import { getAufnahme, getBilder, getObjekt, getVerbrauchsausweisWohnen } from "#lib/server/db";
import { getCurrentUser } from "#lib/server/user";
@@ -27,7 +26,7 @@ if (id) {
ausweis = await getVerbrauchsausweisWohnen(id) as VerbrauchsausweisWohnen
ausweistyp = ausweis.ausweistyp;
- if (!ausweis || ausweis.benutzer_id !== user.id) {
+ if (!ausweis || (ausweis.benutzer_id !== user.id && user.rolle !== Enums.BenutzerRolle.ADMIN)) {
// Der Ausweis scheint nicht zu existieren.
// Wir leiten auf die generische Ausweisseite ohne ID weiter.
return Astro.redirect(
@@ -82,5 +81,5 @@ if (id) {
---
-
+