From cb7d78c86743d599b43df92b661c6cb3648aa58d Mon Sep 17 00:00:00 2001 From: Moritz Utcke Date: Sat, 17 Feb 2024 16:34:12 +0700 Subject: [PATCH] Kaufabschluss Update --- .../VerbrauchsausweisWohnen/erstellen.cy.ts | 5 +- src/components/Ausweis/Progressbar.svelte | 8 +- src/components/CheckoutItem.svelte | 36 ++ .../Kaufabschluss/PriceContainer.svelte | 204 ------ src/layouts/AusweisLayout.astro | 2 +- src/modules/Ausweise/AusweisWeiter.svelte | 2 +- src/modules/KaufabschlussModule.svelte | 370 +++++++++++ src/modules/KundendatenModule.svelte | 596 +++++++----------- src/pages/kaufabschluss.astro | 41 ++ 9 files changed, 692 insertions(+), 572 deletions(-) create mode 100644 src/components/CheckoutItem.svelte delete mode 100644 src/components/Kaufabschluss/PriceContainer.svelte create mode 100644 src/modules/KaufabschlussModule.svelte create mode 100644 src/pages/kaufabschluss.astro diff --git a/cypress/e2e/VerbrauchsausweisWohnen/erstellen.cy.ts b/cypress/e2e/VerbrauchsausweisWohnen/erstellen.cy.ts index 0164ed33..2c6f1513 100644 --- a/cypress/e2e/VerbrauchsausweisWohnen/erstellen.cy.ts +++ b/cypress/e2e/VerbrauchsausweisWohnen/erstellen.cy.ts @@ -244,12 +244,15 @@ describe("Verbrauchsausweis erstellen Schritt 1", () => { // Der Ausweis sollte jetzt schon erstellt worden sein und wir sollten auf die kundendaten seite weitergeleitet worden sein. cy.url().should("contain", "/kundendaten"); + cy.wait(1000) + // Wir füllen jetzt die Kundendaten aus. + cy.get("select[name='anrede']").select(Math.random() > 0.5 ? "Herr" : "Frau"); cy.get("input[name='vorname']").should("contain.value", vorname); cy.get("input[name='name']").should("contain.value", nachname); cy.get("input[name='email']").should("contain.value", email); cy.get("input[name='telefon']").type(faker.phone.number()); - + cy.get("input[name='rechnung_empfaenger']").type(`${vorname} ${nachname}`); cy.get("input[name='rechnung_strasse']").type(faker.location.streetAddress()); // TODO: Random Plz generieren, allerdings muss die auch in der Datenbank vorhanden sein... diff --git a/src/components/Ausweis/Progressbar.svelte b/src/components/Ausweis/Progressbar.svelte index 463faafa..4a6b9310 100644 --- a/src/components/Ausweis/Progressbar.svelte +++ b/src/components/Ausweis/Progressbar.svelte @@ -4,8 +4,8 @@
-
-
+
+
1 2 @@ -14,14 +14,14 @@

Gebäudedaten

-

Kundendaten

+

Prüfung

Kaufabschluss

\ No newline at end of file diff --git a/src/layouts/AusweisLayout.astro b/src/layouts/AusweisLayout.astro index 753cdbd0..7735a688 100644 --- a/src/layouts/AusweisLayout.astro +++ b/src/layouts/AusweisLayout.astro @@ -86,7 +86,7 @@ const schema = JSON.stringify({
-
+
diff --git a/src/modules/Ausweise/AusweisWeiter.svelte b/src/modules/Ausweise/AusweisWeiter.svelte index 0d8c0c7f..33660a0f 100644 --- a/src/modules/Ausweise/AusweisWeiter.svelte +++ b/src/modules/Ausweise/AusweisWeiter.svelte @@ -1,7 +1,7 @@ + +
+
+

Ansprechpartner

+
+
+ +
+ +
+ +
+
+ + +
+ + +
+ + +
+ + +
+
+
+ +
+ + +
+ + +
+ + +
+
+
+ +

Rechnungsadresse

+
+
+
+ + +
+ + +
+ + +
+
+
+ +
+ + +
+ + + + + +
+ + +
+
+
+ +
+ + +
+ + +
+ + +
+
+
+ +

Versandadresse

+
+
+ + +
+
+ +
+ + +
+ + +
+ + +
+
+
+ +
+ + +
+ + + + + +
+ + +
+
+
+ +

Bezahlmethode

+
+ + + + + +
+
+ +
+

Zusammenfassung

+
+ +
+
+
+ Brutto + 75$ +
+
+ Netto + 75$ +
+
+
+ Gesamt + 75$ +
+ +
+
+
+
diff --git a/src/modules/KundendatenModule.svelte b/src/modules/KundendatenModule.svelte index c965bce7..8eb5a9ea 100644 --- a/src/modules/KundendatenModule.svelte +++ b/src/modules/KundendatenModule.svelte @@ -1,397 +1,271 @@
-
+

Verbrauchsausweis erstellen - 45€

-
-
-
-
- -
-
- -
- -
- -
-
- - -
- - -
- - -
- - -
-
-
- -
- - -
- - -
- - -
+ +
+
+
+ A - Prüfung der Ausweisart +
+ Vermietung, Verkauf oder sonstiges + Baujahr Heizung nicht kleiner als Baujahr GebäudeBaujahr nach 1977 oder saniert oder mehr als 4 + WohneinheitenHeizung min. 3 Jahre altVerbrauchsausweis zulässig
- -
- -
- -
- - -
-
- - -
- - -
- - -
-
-
- -
- - -
- - - - - -
- - -
-
-
- -
- - -
- - -
- - -
+
+ B - Prüfung der Adresse, Wohnfläche, Keller und Dach +
+ PLZ gültigKlimafaktorernWohnfläche passt zu Wohneinheiten
- -
- -
- -
-
- - -
-
- -
- - -
- - -
- - -
-
-
- -
- - -
- - - - - -
- - -
+
+ C - Prüfung der Verbrauchsangaben +
+ Verbrauchsmenge schlüssigVerbrauchsabweichung im RahmenEndenergieverbrauch schlüssig
- -
- -
- -
-
- - - - - +
+ D - Prüfung Warmwasser und alternative + Energieversorgung +
+ Warmwasseranteil schlüssig
-
-
-
{selectedPaymentType}
- -
- {#if selectedPaymentType == Enums.Bezahlmethoden.rechnung} -

- Sobald sie AGB und Datenschutzerklärung - gelesen und akzeptiert haben können sie den - Kauf fortsetzen. Durch das Klicken auf - 'Kostenpflichtig Bestellen' wird ihnen eine - Email mit weiteren Informationen über ihren - Kauf zugeschickt, von der aus sie den - Bezahlvorgang abschließen können. -

- {:else} -

- Sobald sie AGB und Datenschutzerklärung - gelesen und akzeptiert haben können sie den - Kauf fortsetzen. Durch das Klicken auf - 'Kostenpflichtig Bestellen' werden sie zu {selectedPaymentType} weitergeleitet. -

- {/if} -
-
- - -
-
- - -
-
- +
+ E - Prüfung von Gebäudetyp, Lüftung, Kühlung und + Leerstand +
+ Leerstand nicht größer als 30% +
+
+
+ F - Prüfung des Sanierungsstandes und der Gebäudebilder +
+ Mindestens ein Bild pro Abschnitt vorhandenAngaben zum Sanierungsstand vorhandenBei Baujahr vor 1978 Dach oder Geschossdecke min. + 12 cm gedämmt +
+
+
+
+
+ + + + - + + + + + + + + + + + + + +
+ + + + +
Produkt:
+ Verbrauchsausweis +
Beschreibung: +
+ Registrierung beim DiBt
+ Prüfung durch Diplom Ingenieur
+ Energieausweis Vorschau als PDF
+
+
Netto-Preis
+ {(price * 0.81).toFixed(2) + "€"} +
19% gesetzl. MwSt.
+ {(price * 0.19).toFixed(2) + "€"} +
Preis inkl. MwSt.
+ {price + "€"} +
+
- -
- -
- +

Hiermit bestelle ich folgende Version des Energieausweises:

+
+ + + + + + + + + + + + +
Verbrauchsausweis online für {prices[0]} € inkl. MwSt. + als PDF per E-Mail +
Verbrauchsausweis online inkl. Beratung für {prices[1]} + € inkl. MwSt. als PDF per E-Mail +
Verbrauchsausweis offline für {prices[2]} € inkl. MwSt. + als PDF per E-Mail (Sie schicken uns 3 Verbrauchsabrechnungen)
+
+ +

Zusatzleistungen

+
+ + {#each services as service} + + + + + {/each} +
{service.name} +
-
- + +
+
+ + +
+ + +
- -
+
+
diff --git a/src/pages/kaufabschluss.astro b/src/pages/kaufabschluss.astro new file mode 100644 index 00000000..1c8ac413 --- /dev/null +++ b/src/pages/kaufabschluss.astro @@ -0,0 +1,41 @@ +--- + +import KaufabschlussModule from "#modules/KaufabschlussModule.svelte"; +import AusweisLayout from "#layouts/AusweisLayout.astro"; +import { Benutzer, Enums } from "@ibcornelsen/database/client"; +import { prisma } from "@ibcornelsen/database/server"; + +// Man sollte nur auf diese Seite kommen, wenn ein Ausweis bereits vorliegt und in der Datenbank abgespeichert wurde. +const uidAusweis = Astro.url.searchParams.get("uid"); + +if (!uidAusweis) { + return Astro.redirect("/404"); +} + +const uid = Astro.cookies.get("uid").value; + +if (!uid) { + return Astro.redirect("/401"); +} + +const user = await prisma.benutzer.findUnique({ + where: { + uid + }, +}) as Benutzer; + +const ausweis = await prisma.verbrauchsausweisWohnen.findUnique({ + where: { + uid: uidAusweis, + }, +}); + +if (!ausweis) { + return Astro.redirect("/404"); +} +--- + + + + +