API größtenteils umgezogen und Funktionen angepasst
This commit is contained in:
@@ -23,11 +23,11 @@
|
||||
export let ausweis: BedarfsausweisWohnenClient;
|
||||
export let user: BenutzerClient = {} as BenutzerClient;
|
||||
|
||||
let gebaeude_aufnahme_allgemein = ausweis.gebaeude_aufnahme_allgemein || {};
|
||||
let aufnahme = ausweis.aufnahme || {};
|
||||
let gebaeude =
|
||||
ausweis.gebaeude_aufnahme_allgemein?.gebaeude_stammdaten || {};
|
||||
ausweis.aufnahme?.objekt || {};
|
||||
let images: (UploadedGebaeudeBild & { base64?: string })[] =
|
||||
ausweis.gebaeude_aufnahme_allgemein?.gebaeude_stammdaten
|
||||
ausweis.aufnahme?.objekt
|
||||
?.gebaeude_bilder || [];
|
||||
|
||||
let daemmungsBreiten = [0, 0.02, 0.05, 0.08, 0.12, 0.16, 0.2, 0.3, 0.4];
|
||||
@@ -54,7 +54,7 @@
|
||||
// const result = await verbrauchsausweisWohnenSpeichern(
|
||||
// ausweis,
|
||||
// gebaeude,
|
||||
// gebaeude_aufnahme_allgemein,
|
||||
// aufnahme,
|
||||
// images,
|
||||
// user
|
||||
// );
|
||||
@@ -63,7 +63,7 @@
|
||||
// // Sonst müsste er alles neu eingeben...
|
||||
// ausweis.uid = result.uid;
|
||||
// gebaeude.uid = result.gebaeude_uid;
|
||||
// gebaeude_aufnahme_allgemein.uid = result.gebaeude_aufnahme_uid;
|
||||
// aufnahme.uid = result.gebaeude_aufnahme_uid;
|
||||
// window.history.pushState(
|
||||
// {},
|
||||
// "",
|
||||
@@ -153,8 +153,8 @@
|
||||
<div class="w-full rounded-lg border-gray/35 border-2 relative px-4">
|
||||
<PerformanceScore
|
||||
bind:ausweis
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:gebaeude
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:objekt={gebaeude}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -165,8 +165,8 @@
|
||||
<div id="formular-box" class="formular-boxen ring-0">
|
||||
<Bereich bereich="A" title="Prüfung der Ausweisart">
|
||||
<Ausweisart
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:objekt={gebaeude}
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:ausweis
|
||||
/>
|
||||
</Bereich>
|
||||
@@ -177,7 +177,7 @@
|
||||
<Bereich
|
||||
bereich="B"
|
||||
title="Eingabe der Gebäudeadresse - Angaben zu Wohnfläche, Keller und Dachgeschoss"
|
||||
><GebaeudeDaten bind:gebaeude_aufnahme_allgemein /></Bereich
|
||||
><GebaeudeDaten bind:aufnahme /></Bereich
|
||||
>
|
||||
|
||||
<hr />
|
||||
@@ -1360,7 +1360,7 @@ title="Eingabe der Gebäudeadresse - Angaben zu Wohnfläche, Keller und Dachgesc
|
||||
<BilderZusatzsysteme
|
||||
{ausweis}
|
||||
{gebaeude}
|
||||
{gebaeude_aufnahme_allgemein}
|
||||
{aufnahme}
|
||||
{images}
|
||||
/>
|
||||
<hr />
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
<div class="flex flex-col gap-4">
|
||||
{#each ausweise as ausweis}
|
||||
<div class="rounded-lg border p-2 flex flex-row items-center justify-between">
|
||||
<h2 class="text-black">{ausweis.gebaeude_aufnahme_allgemein.gebaeude_stammdaten.adresse}</h2>
|
||||
<h2 class="text-black">{ausweis.aufnahme.objekt.adresse}</h2>
|
||||
<button class="btn btn-square btn-ghost p-1.5" on:click={() => {
|
||||
changeInputs(ausweis)
|
||||
}}><Check size={20}/></button>
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
export let title;
|
||||
export let bullets;
|
||||
|
||||
let gebaeude_aufnahme_allgemein = ausweis.gebaeude_aufnahme_allgemein || {};
|
||||
let gebaeude = ausweis.gebaeude_aufnahme_allgemein?.gebaeude_stammdaten || {};
|
||||
let aufnahme = ausweis.aufnahme || {};
|
||||
let gebaeude = ausweis.aufnahme?.objekt || {};
|
||||
|
||||
let services = [
|
||||
{
|
||||
@@ -58,8 +58,8 @@
|
||||
|
||||
let prices: number[] = [];
|
||||
|
||||
if (ausweis.gebaeude_aufnahme_allgemein.ausweisart) {
|
||||
prices = PRICES[ausweis.gebaeude_aufnahme_allgemein.ausweisart];
|
||||
if (ausweis.aufnahme.ausweisart) {
|
||||
prices = PRICES[ausweis.aufnahme.ausweisart];
|
||||
}
|
||||
|
||||
let basePrice: number = prices[0];
|
||||
@@ -102,8 +102,8 @@
|
||||
<div id="performance-box" class="w-full box relative px-4 order-2 2xl:order-1 self-stretch grid grid-cols-1">
|
||||
<PerformanceScore
|
||||
bind:ausweis
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:gebaeude
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:objekt={gebaeude}
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -47,8 +47,8 @@
|
||||
|
||||
let prices: number[] = [];
|
||||
|
||||
if (ausweis.gebaeude_aufnahme_allgemein.ausweisart) {
|
||||
prices = PRICES[ausweis.gebaeude_aufnahme_allgemein.ausweisart];
|
||||
if (ausweis.aufnahme.ausweisart) {
|
||||
prices = PRICES[ausweis.aufnahme.ausweisart];
|
||||
}
|
||||
|
||||
let basePrice: number = prices[0];
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
import SanierungszustandWaermedammung from "#components/Ausweis/SanierungszustandWaermedammung.svelte";
|
||||
import AusweisPreviewContainer from "#components/Ausweis/AusweisPreviewContainer.svelte";
|
||||
|
||||
import Bereich from "#labels/Bereich.svelte";
|
||||
import Bereich from "#components/labels/Bereich.svelte";
|
||||
import HelpLabel from "#components/HelpLabel.svelte";
|
||||
import Verbrauch from "#components/Ausweis/Verbrauch.svelte";
|
||||
import StromVerbrauch from "#components/Ausweis/StromVerbrauch.svelte";
|
||||
@@ -35,9 +35,9 @@
|
||||
|
||||
export let Energieausweis = "Verbrauchsausweis Gewerbe";
|
||||
|
||||
let gebaeude_aufnahme_allgemein = ausweis.gebaeude_aufnahme_allgemein || {};
|
||||
let gebaeude = ausweis.gebaeude_aufnahme_allgemein?.gebaeude_stammdaten || {};
|
||||
let images: (UploadedGebaeudeBild & { base64?: string })[] = ausweis.gebaeude_aufnahme_allgemein?.gebaeude_stammdaten?.gebaeude_bilder || [];
|
||||
let aufnahme = ausweis.aufnahme || {};
|
||||
let gebaeude = ausweis.aufnahme?.objekt || {};
|
||||
let images: (UploadedGebaeudeBild & { base64?: string })[] = ausweis.aufnahme?.objekt?.gebaeude_bilder || [];
|
||||
|
||||
function automatischAusfüllen() {
|
||||
}
|
||||
@@ -46,7 +46,7 @@
|
||||
const result = await verbrauchsausweisWohnenSpeichern(
|
||||
ausweis,
|
||||
gebaeude,
|
||||
gebaeude_aufnahme_allgemein,
|
||||
aufnahme,
|
||||
images,
|
||||
user
|
||||
);
|
||||
@@ -56,7 +56,7 @@
|
||||
// Sonst müsste er alles neu eingeben...
|
||||
ausweis.uid = result.uid;
|
||||
gebaeude.uid = result.gebaeude_uid;
|
||||
gebaeude_aufnahme_allgemein.uid = result.gebaeude_aufnahme_uid;
|
||||
aufnahme.uid = result.gebaeude_aufnahme_uid;
|
||||
window.history.pushState(
|
||||
{},
|
||||
"",
|
||||
@@ -76,8 +76,8 @@
|
||||
<div id="performance-box" class="w-full box relative px-4 order-2 2xl:order-1 self-stretch grid grid-cols-1">
|
||||
<PerformanceScore
|
||||
bind:ausweis
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:gebaeude
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:objekt={gebaeude}
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -104,9 +104,9 @@
|
||||
<Bereich bereich="A" title="Prüfung der Ausweisart">
|
||||
<Ausweisart
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:aufnahme
|
||||
bind:ausweis
|
||||
{Energieausweis}
|
||||
ausweisart={Energieausweis}
|
||||
/>
|
||||
</Bereich>
|
||||
|
||||
@@ -117,7 +117,7 @@
|
||||
title="Eingabe der Gebäudeadresse - Angaben zu Wohnfläche, Keller und Dachgeschoss"
|
||||
>
|
||||
<GebaeudeDaten
|
||||
bind:gebaeude_aufnahme_allgemein />
|
||||
bind:aufnahme />
|
||||
</Bereich
|
||||
>
|
||||
|
||||
@@ -129,7 +129,7 @@
|
||||
>
|
||||
<StromVerbrauch
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:aufnahme
|
||||
bind:ausweis
|
||||
/>
|
||||
</Bereich>
|
||||
@@ -151,7 +151,7 @@
|
||||
<Bereich
|
||||
bereich="E"
|
||||
title="Eingabe von Gebäudeteil, Lüftung, Kühlung und Leerstand"
|
||||
><LueftungundLeerstand bind:gebaeude_aufnahme_allgemein /></Bereich
|
||||
><LueftungundLeerstand bind:aufnahme /></Bereich
|
||||
>
|
||||
|
||||
<!-- F Angaben zur Heizungsanlage -->
|
||||
@@ -160,7 +160,7 @@
|
||||
><SanierungszustandHeizungsanlage
|
||||
bind:images
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:aufnahme
|
||||
bind:ausweis
|
||||
/></Bereich
|
||||
>
|
||||
@@ -171,7 +171,7 @@
|
||||
><SanierungszustandFensterTueren
|
||||
bind:images
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:aufnahme
|
||||
bind:ausweis
|
||||
/></Bereich
|
||||
>
|
||||
@@ -181,7 +181,7 @@
|
||||
><SanierungszustandWaermedammung
|
||||
bind:images
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:aufnahme
|
||||
bind:ausweis
|
||||
/></Bereich
|
||||
>
|
||||
@@ -202,7 +202,7 @@
|
||||
bind:images
|
||||
bind:user
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:aufnahme
|
||||
>
|
||||
</ButtonWeiterHilfe>
|
||||
|
||||
|
||||
@@ -1,17 +1,18 @@
|
||||
<script lang="ts">
|
||||
import { BenutzerClient, GebaeudeAufnahmeClient, GebaeudeClient, UploadedGebaeudeBild, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
|
||||
import { addNotification, updateNotification } from "@ibcornelsen/ui";
|
||||
import { validateAccessTokenClient } from "../../client/lib/validateAccessToken.js";
|
||||
import { client } from "src/trpc.js";
|
||||
import EmbeddedAuthFlowModule from "#modules/EmbeddedAuthFlowModule.svelte";
|
||||
import Overlay from "#components/Overlay.svelte";
|
||||
import { validateAccessTokenClient } from "#client/lib/validateAccessToken.js";
|
||||
import { verbrauchsausweisWohnenSpeichern } from "#client/lib/verbrauchsausweisWohnenSpeichern.js";
|
||||
import { AufnahmeClient, BenutzerClient, ObjektClient, UploadedGebaeudeBild, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
|
||||
import { addNotification, updateNotification } from "#components/Notifications/index.js";
|
||||
import Overlay from "#components/Overlay.svelte";
|
||||
import EmbeddedAuthFlowModule from "#modules/EmbeddedAuthFlowModule.svelte";
|
||||
|
||||
export let gebaeude: GebaeudeClient;
|
||||
import { api } from "astro-typesafe-api/client"
|
||||
|
||||
export let objekt: ObjektClient;
|
||||
export let images: UploadedGebaeudeBild[];
|
||||
export let ausweis: VerbrauchsausweisWohnenClient;
|
||||
export let user: BenutzerClient;
|
||||
export let gebaeude_aufnahme_allgemein: GebaeudeAufnahmeClient;
|
||||
export let aufnahme: AufnahmeClient;
|
||||
|
||||
async function bilderHochladen() {
|
||||
// Alle Bilder hochladen
|
||||
@@ -27,17 +28,20 @@
|
||||
type: "info"
|
||||
})
|
||||
for (let i = 0; i < images.length; i++) {
|
||||
const image = images[i];
|
||||
const image = images[i];
|
||||
if (image.uid) {
|
||||
// Bild wurde bereits hochgeladen, wir müssen es also nicht nochmal hochladen.
|
||||
continue
|
||||
}
|
||||
|
||||
try {
|
||||
const response = await client.v1.bilder.upload.mutate({
|
||||
const response = await api.objekt._uid.bilder.PUT.fetch({
|
||||
base64: image.base64,
|
||||
kategorie: image.kategorie,
|
||||
gebaeude_uid: gebaeude.uid
|
||||
kategorie: image.kategorie
|
||||
}, {
|
||||
params: {
|
||||
uid: objekt.uid
|
||||
}
|
||||
})
|
||||
|
||||
image.uid = response.uid
|
||||
@@ -75,8 +79,8 @@
|
||||
// Wir speichern den Ausweis ab und leiten auf die "ausweis-gespeichert" Seite weiter.
|
||||
try {
|
||||
const response = await verbrauchsausweisWohnenSpeichern(ausweis,
|
||||
gebaeude,
|
||||
gebaeude_aufnahme_allgemein,
|
||||
objekt,
|
||||
aufnahme,
|
||||
images,
|
||||
user)
|
||||
|
||||
@@ -84,22 +88,22 @@
|
||||
await bilderHochladen();
|
||||
// Falls der Nutzer zurück navigiert, sollte er wieder auf seinen Vorgang kommen.
|
||||
// Sonst müsste er alles neu eingeben...
|
||||
ausweis.uid = response.uid;
|
||||
gebaeude.uid = response.gebaeude_uid;
|
||||
gebaeude_aufnahme_allgemein.uid = response.gebaeude_aufnahme_uid;
|
||||
ausweis.uid = response.uid_ausweis;
|
||||
objekt.uid = response.uid_objekt;
|
||||
aufnahme.uid = response.uid_aufnahme;
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
return false;
|
||||
} catch (e: any) {
|
||||
await client.v1.tickets.erstellen.mutate({
|
||||
await api.ticket.PUT.fetch({
|
||||
titel: "Ausweis konnte nicht gespeichert werden",
|
||||
beschreibung: e.stack,
|
||||
email: user.email ?? "",
|
||||
metadata: JSON.stringify({
|
||||
ausweis,
|
||||
gebaeude
|
||||
gebaeude: objekt
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
@@ -30,48 +30,48 @@
|
||||
import { verbrauchsausweisWohnenSpeichern } from "src/client/lib/verbrauchsausweisWohnenSpeichern.js";
|
||||
|
||||
// TODO: Vom Server sollte ein volles Objekt kommen, dass alle Subobjekte enthält, weil es sonst zu Problemen führen kann
|
||||
// wenn gebaeude_aufnahme_allgemein oder gebaeude_stammdaten nicht existiert...
|
||||
// wenn aufnahme oder objekt nicht existiert...
|
||||
export let ausweis: VerbrauchsausweisWohnenClient;
|
||||
export let user: BenutzerClient = {} as BenutzerClient;
|
||||
|
||||
let gebaeude_aufnahme_allgemein = ausweis.gebaeude_aufnahme_allgemein || {};
|
||||
let gebaeude = ausweis.gebaeude_aufnahme_allgemein?.gebaeude_stammdaten || {};
|
||||
let images: (UploadedGebaeudeBild & { base64?: string })[] = ausweis.gebaeude_aufnahme_allgemein?.gebaeude_stammdaten?.gebaeude_bilder || [];
|
||||
let aufnahme = ausweis.aufnahme || {};
|
||||
let gebaeude = ausweis.aufnahme?.objekt || {};
|
||||
let images: (UploadedGebaeudeBild & { base64?: string })[] = ausweis.aufnahme?.objekt?.gebaeude_bilder || [];
|
||||
|
||||
async function spaeterWeitermachen() {
|
||||
const result = await verbrauchsausweisWohnenSpeichern(ausweis, gebaeude, gebaeude_aufnahme_allgemein, images, user);
|
||||
const result = await verbrauchsausweisWohnenSpeichern(ausweis, gebaeude, aufnahme, images, user);
|
||||
|
||||
if (result !== null) {
|
||||
// Falls der Nutzer zurück navigiert, sollte er wieder auf seinen Vorgang kommen.
|
||||
// Sonst müsste er alles neu eingeben...
|
||||
ausweis.uid = result.uid
|
||||
gebaeude.uid = result.gebaeude_uid
|
||||
gebaeude_aufnahme_allgemein.uid = result.gebaeude_aufnahme_uid
|
||||
aufnahme.uid = result.gebaeude_aufnahme_uid
|
||||
window.history.pushState({}, "", `${location.pathname}?uid=${result.uid}`);
|
||||
speichernOverlayHidden = false;
|
||||
}
|
||||
}
|
||||
|
||||
function automatischAusfüllen() {
|
||||
gebaeude_aufnahme_allgemein.baujahr_gebaeude = [1962];
|
||||
gebaeude_aufnahme_allgemein.baujahr_heizung = [1952];
|
||||
gebaeude_aufnahme_allgemein.saniert = true;
|
||||
gebaeude_aufnahme_allgemein.einheiten = 1;
|
||||
aufnahme.baujahr_gebaeude = [1962];
|
||||
aufnahme.baujahr_heizung = [1952];
|
||||
aufnahme.saniert = true;
|
||||
aufnahme.einheiten = 1;
|
||||
ausweis.ausstellgrund = "Vermietung";
|
||||
ausweis.verbrauch_1 = 15000;
|
||||
ausweis.verbrauch_2 = 14000;
|
||||
ausweis.verbrauch_3 = 16000;
|
||||
gebaeude_aufnahme_allgemein.flaeche = 152;
|
||||
gebaeude_aufnahme_allgemein.nutzflaeche = 172;
|
||||
aufnahme.flaeche = 152;
|
||||
aufnahme.nutzflaeche = 172;
|
||||
ausweis.keller_beheizt = true;
|
||||
gebaeude_aufnahme_allgemein.brennstoff_1 = "Erdgas H";
|
||||
aufnahme.brennstoff_1 = "Erdgas H";
|
||||
ausweis.einheit_1 = "kWh";
|
||||
ausweis.anteil_warmwasser_1 = 18;
|
||||
ausweis.startdatum = moment("01.01.2019").toDate();
|
||||
gebaeude_aufnahme_allgemein.plz = "21039";
|
||||
gebaeude_aufnahme_allgemein.ort = "Hamburg";
|
||||
gebaeude_aufnahme_allgemein.adresse = "Curslacker Deich 170";
|
||||
gebaeude_aufnahme_allgemein.gebaeudeteil = "Gesamtgebäude";
|
||||
aufnahme.plz = "21039";
|
||||
aufnahme.ort = "Hamburg";
|
||||
aufnahme.adresse = "Curslacker Deich 170";
|
||||
aufnahme.gebaeudeteil = "Gesamtgebäude";
|
||||
|
||||
gebaeude = gebaeude;
|
||||
ausweis = ausweis;
|
||||
@@ -80,14 +80,14 @@
|
||||
|
||||
async function ausweisAbschicken(e: SubmitEvent) {
|
||||
if (e && e.preventDefault) e.preventDefault();
|
||||
const result = await verbrauchsausweisWohnenSpeichern(ausweis, gebaeude, gebaeude_aufnahme_allgemein, images, user);
|
||||
const result = await verbrauchsausweisWohnenSpeichern(ausweis, gebaeude, aufnahme, images, user);
|
||||
|
||||
if (result !== null) {
|
||||
// Falls der Nutzer zurück navigiert, sollte er wieder auf seinen Vorgang kommen.
|
||||
// Sonst müsste er alles neu eingeben...
|
||||
ausweis.uid = result.uid
|
||||
gebaeude.uid = result.gebaeude_uid
|
||||
gebaeude_aufnahme_allgemein.uid = result.gebaeude_aufnahme_uid
|
||||
aufnahme.uid = result.gebaeude_aufnahme_uid
|
||||
window.history.pushState({}, "", `${location.pathname}?uid=${result.uid}`);
|
||||
window.location.href = `/kundendaten?uid=${result.uid}`;
|
||||
}
|
||||
@@ -97,12 +97,12 @@
|
||||
let speichernOverlayHidden = true;
|
||||
|
||||
$: {
|
||||
if (gebaeude_aufnahme_allgemein.saniert
|
||||
&& gebaeude_aufnahme_allgemein.oberste_geschossdecke_gedaemmt === undefined
|
||||
&& gebaeude_aufnahme_allgemein.dachgeschoss_gedaemmt === undefined) {
|
||||
if (aufnahme.saniert
|
||||
&& aufnahme.oberste_geschossdecke_gedaemmt === undefined
|
||||
&& aufnahme.dachgeschoss_gedaemmt === undefined) {
|
||||
|
||||
gebaeude_aufnahme_allgemein.oberste_geschossdecke_gedaemmt = true;
|
||||
gebaeude_aufnahme_allgemein.dachgeschoss_gedaemmt = true;
|
||||
aufnahme.oberste_geschossdecke_gedaemmt = true;
|
||||
aufnahme.dachgeschoss_gedaemmt = true;
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -127,8 +127,8 @@
|
||||
|
||||
<PerformanceScore
|
||||
bind:ausweis
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:gebaeude
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:objekt={gebaeude}
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -153,8 +153,8 @@
|
||||
<Label>A - Prüfung der Ausweisart</Label>
|
||||
|
||||
<Ausweisart
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:objekt={gebaeude}
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:ausweis
|
||||
/>
|
||||
|
||||
@@ -181,7 +181,7 @@
|
||||
required
|
||||
data-msg-minlength="min. 5 Zeichen"
|
||||
data-msg-maxlength="max. 40 Zeichen"
|
||||
bind:value={gebaeude_aufnahme_allgemein.adresse}
|
||||
bind:value={aufnahme.adresse}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -189,8 +189,8 @@
|
||||
<!-- PLZ -->
|
||||
<div class="form-group col-md-4 PLZ">
|
||||
<ZipSearch
|
||||
bind:zip={gebaeude_aufnahme_allgemein.plz}
|
||||
bind:city={gebaeude_aufnahme_allgemein.ort}
|
||||
bind:zip={aufnahme.plz}
|
||||
bind:city={aufnahme.ort}
|
||||
name="plz"
|
||||
/>
|
||||
</div>
|
||||
@@ -204,7 +204,7 @@
|
||||
name="ort"
|
||||
data-test="ort"
|
||||
readonly={true}
|
||||
bind:value={gebaeude_aufnahme_allgemein.ort}
|
||||
bind:value={aufnahme.ort}
|
||||
type="text"
|
||||
/>
|
||||
</div>
|
||||
@@ -227,7 +227,7 @@
|
||||
autocomplete="off"
|
||||
data-rule-minlength="2"
|
||||
data-msg-minlength="min. 2 Zeichen"
|
||||
bind:value={gebaeude_aufnahme_allgemein.flaeche}
|
||||
bind:value={aufnahme.flaeche}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -240,7 +240,7 @@
|
||||
name="keller"
|
||||
data-test="keller"
|
||||
required
|
||||
bind:value={gebaeude_aufnahme_allgemein.keller}
|
||||
bind:value={aufnahme.keller}
|
||||
>
|
||||
<option disabled>Bitte auswählen</option>
|
||||
<option value={Enums.Heizungsstatus.NICHT_VORHANDEN}
|
||||
@@ -263,7 +263,7 @@
|
||||
<select
|
||||
name="dachgeschoss"
|
||||
data-test="dachgeschoss"
|
||||
bind:value={gebaeude_aufnahme_allgemein.dachgeschoss}
|
||||
bind:value={aufnahme.dachgeschoss}
|
||||
required
|
||||
>
|
||||
<option disabled>Bitte auswählen</option>
|
||||
@@ -299,7 +299,7 @@
|
||||
autocomplete="off"
|
||||
data-rule-minlength="2"
|
||||
data-msg-minlength="min. 2 Zeichen"
|
||||
bind:value={gebaeude_aufnahme_allgemein.nutzflaeche}
|
||||
bind:value={aufnahme.nutzflaeche}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -312,7 +312,7 @@
|
||||
<div class="GRB">
|
||||
<Verbrauch
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:aufnahme
|
||||
bind:ausweis
|
||||
/>
|
||||
</div>
|
||||
@@ -455,7 +455,7 @@
|
||||
<select
|
||||
name="gebaeudetyp"
|
||||
data-test="gebaeudetyp"
|
||||
bind:value={gebaeude_aufnahme_allgemein.gebaeudetyp}
|
||||
bind:value={aufnahme.gebaeudetyp}
|
||||
required
|
||||
>
|
||||
<option disabled>Bitte auswählen</option>
|
||||
@@ -499,7 +499,7 @@
|
||||
<select
|
||||
name="gebaeudeteil"
|
||||
data-test="gebaeudeteil"
|
||||
bind:value={gebaeude_aufnahme_allgemein.gebaeudeteil}
|
||||
bind:value={aufnahme.gebaeudeteil}
|
||||
required
|
||||
>
|
||||
<option disabled>Bitte auswählen</option>
|
||||
@@ -520,7 +520,7 @@
|
||||
name="lueftung"
|
||||
data-test="lueftung"
|
||||
required
|
||||
bind:value={gebaeude_aufnahme_allgemein.lueftung}
|
||||
bind:value={aufnahme.lueftung}
|
||||
>
|
||||
<option disabled>Bitte auswählen</option>
|
||||
<option value="Fensterlüftung">Fensterlüftung</option>
|
||||
@@ -546,7 +546,7 @@
|
||||
name="kuehlung"
|
||||
data-test="kuehlung"
|
||||
required
|
||||
bind:value={gebaeude_aufnahme_allgemein.kuehlung}
|
||||
bind:value={aufnahme.kuehlung}
|
||||
>
|
||||
<option disabled>Bitte auswählen</option>
|
||||
<option value="1">vorhanden</option>
|
||||
@@ -568,7 +568,7 @@
|
||||
data-test="leerstand"
|
||||
maxlength="2"
|
||||
type="number"
|
||||
bind:value={gebaeude_aufnahme_allgemein.leerstand}
|
||||
bind:value={aufnahme.leerstand}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -580,7 +580,7 @@
|
||||
>F - Bitte prüfen Sie hier die Angaben zum Sanierungszustand des
|
||||
Gebäudes</Label
|
||||
>
|
||||
<BilderZusatzsysteme bind:images bind:gebaeude bind:gebaeude_aufnahme_allgemein bind:ausweis />
|
||||
<BilderZusatzsysteme bind:images bind:gebaeude bind:aufnahme bind:ausweis />
|
||||
<hr />
|
||||
<div class="flex flex-row justify-between">
|
||||
<Hilfe />
|
||||
@@ -596,7 +596,7 @@
|
||||
</RawNotification>
|
||||
{/each}
|
||||
|
||||
{#if auditBedarfsausweisBenoetigt(ausweis, gebaeude_aufnahme_allgemein)}
|
||||
{#if auditBedarfsausweisBenoetigt(ausweis, aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Bedarfsausweis benötigt!",
|
||||
@@ -612,7 +612,7 @@
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#await auditPlzNichtErkannt(gebaeude_aufnahme_allgemein) then result}
|
||||
{#await auditPlzNichtErkannt(objekt) then result}
|
||||
{#if result}
|
||||
<RawNotification
|
||||
notification={{
|
||||
@@ -630,7 +630,7 @@
|
||||
{/if}
|
||||
{/await}
|
||||
|
||||
{#if auditHeizungGebaeudeBaujahr(gebaeude_aufnahme_allgemein)}
|
||||
{#if auditHeizungGebaeudeBaujahr(aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -639,7 +639,7 @@
|
||||
dismissable: true,
|
||||
onUserDismiss: () => {
|
||||
hidden.add(AuditType.HEIZUNG_GEBAEUDE_BAUJAHR);
|
||||
gebaeude_aufnahme_allgemein = gebaeude_aufnahme_allgemein;
|
||||
aufnahme = aufnahme;
|
||||
},
|
||||
type: "warning",
|
||||
}}
|
||||
@@ -649,7 +649,7 @@
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#if auditHeizungJuengerDreiJahre(gebaeude_aufnahme_allgemein)}
|
||||
{#if auditHeizungJuengerDreiJahre(aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -719,7 +719,7 @@
|
||||
{/if}
|
||||
{/await}
|
||||
|
||||
{#if auditWohnFlaeche(gebaeude_aufnahme_allgemein)}
|
||||
{#if auditWohnFlaeche(aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -758,7 +758,7 @@
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#if auditLeerStand(gebaeude_aufnahme_allgemein)}
|
||||
{#if auditLeerStand(aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -778,7 +778,7 @@
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#if auditVerbrauchAbweichung(ausweis, gebaeude_aufnahme_allgemein).length > 0}
|
||||
{#if auditVerbrauchAbweichung(ausweis, aufnahme).length > 0}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -794,14 +794,14 @@
|
||||
>
|
||||
Die Abweichung der Verbräuche zwischen Zeitraum {auditVerbrauchAbweichung(
|
||||
ausweis,
|
||||
gebaeude_aufnahme_allgemein,
|
||||
)[0]} und {auditVerbrauchAbweichung(ausweis, gebaeude_aufnahme_allgemein)[1]} beträgt mehr
|
||||
aufnahme,
|
||||
)[0]} und {auditVerbrauchAbweichung(ausweis, aufnahme)[1]} beträgt mehr
|
||||
als 30% und sie haben keinen Leerstand angegeben. Sind sie sich sicher,
|
||||
dass das stimmt?
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#await auditEndEnergie(ausweis, gebaeude, gebaeude_aufnahme_allgemein) then result}
|
||||
{#await auditEndEnergie(ausweis, gebaeude, aufnahme) then result}
|
||||
{#if result}
|
||||
<RawNotification
|
||||
notification={{
|
||||
@@ -823,7 +823,7 @@
|
||||
{/if}
|
||||
{/await}
|
||||
|
||||
{#if auditWohnflaecheGroesserGesamtflaeche(gebaeude_aufnahme_allgemein)}
|
||||
{#if auditWohnflaecheGroesserGesamtflaeche(aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
|
||||
@@ -47,41 +47,39 @@
|
||||
VerbrauchsausweisWohnenClient,
|
||||
BenutzerClient,
|
||||
UploadedGebaeudeBild,
|
||||
ObjektClient,
|
||||
AufnahmeClient,
|
||||
} from "#components/Ausweis/types.js";
|
||||
import { verbrauchsausweisWohnenSpeichern } from "src/client/lib/verbrauchsausweisWohnenSpeichern.js";
|
||||
import { Enums } from "@ibcornelsen/database/client";
|
||||
|
||||
// TODO: Vom Server sollte ein volles Objekt kommen, dass alle Subobjekte enthält, weil es sonst zu Problemen führen kann
|
||||
// wenn gebaeude_aufnahme_allgemein oder gebaeude_stammdaten nicht existiert...
|
||||
// wenn aufnahme oder objekt nicht existiert...
|
||||
export let ausweis: VerbrauchsausweisWohnenClient;
|
||||
export let objekt: ObjektClient
|
||||
export let aufnahme: AufnahmeClient
|
||||
export let user: BenutzerClient = {} as BenutzerClient;
|
||||
|
||||
let aufnahme = ausweis.aufnahme || {};
|
||||
let objekt =
|
||||
ausweis.aufnahme?.objekt || {};
|
||||
let images: (UploadedGebaeudeBild & { base64?: string })[] =
|
||||
ausweis.aufnahme?.objekt
|
||||
?.gebaeude_bilder || [];
|
||||
export let bilder: UploadedGebaeudeBild[] = []
|
||||
|
||||
async function spaeterWeitermachen() {
|
||||
const result = await verbrauchsausweisWohnenSpeichern(
|
||||
ausweis,
|
||||
objekt,
|
||||
aufnahme,
|
||||
images,
|
||||
bilder,
|
||||
user
|
||||
);
|
||||
|
||||
if (result !== null) {
|
||||
// Falls der Nutzer zurück navigiert, sollte er wieder auf seinen Vorgang kommen.
|
||||
// Sonst müsste er alles neu eingeben...
|
||||
ausweis.uid = result.uid;
|
||||
objekt.uid = result.gebaeude_uid;
|
||||
aufnahme.uid = result.gebaeude_aufnahme_uid;
|
||||
ausweis.uid = result.uid_ausweis;
|
||||
objekt.uid = result.uid_objekt;
|
||||
aufnahme.uid = result.uid_aufnahme;
|
||||
window.history.pushState(
|
||||
{},
|
||||
"",
|
||||
`${location.pathname}?uid=${result.uid}`
|
||||
`${location.pathname}?uid=${result.uid_ausweis}`
|
||||
);
|
||||
speichernOverlayHidden = false;
|
||||
}
|
||||
@@ -126,22 +124,22 @@
|
||||
ausweis,
|
||||
objekt,
|
||||
aufnahme,
|
||||
images,
|
||||
bilder,
|
||||
user
|
||||
);
|
||||
|
||||
if (result !== null) {
|
||||
// Falls der Nutzer zurück navigiert, sollte er wieder auf seinen Vorgang kommen.
|
||||
// Sonst müsste er alles neu eingeben...
|
||||
ausweis.uid = result.uid;
|
||||
objekt.uid = result.gebaeude_uid;
|
||||
aufnahme.uid = result.gebaeude_aufnahme_uid;
|
||||
ausweis.uid = result.uid_ausweis;
|
||||
objekt.uid = result.uid_objekt;
|
||||
aufnahme.uid = result.uid_aufnahme;
|
||||
window.history.pushState(
|
||||
{},
|
||||
"",
|
||||
`${location.pathname}?uid=${result.uid}`
|
||||
`${location.pathname}?uid=${result.uid_ausweis}`
|
||||
);
|
||||
window.location.href = `/kundendaten?uid=${result.uid}`;
|
||||
window.location.href = `/kundendaten?uid=${result.uid_ausweis}`;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -160,6 +158,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
const ausweisart: Enums.Ausweisart = "VerbrauchsausweisWohnen"
|
||||
</script>
|
||||
|
||||
<Overlay bind:hidden={speichernOverlayHidden}>
|
||||
@@ -186,16 +185,16 @@
|
||||
<div id="performance-box" class="w-full box relative px-4 order-2 2xl:order-1 self-stretch grid grid-cols-1">
|
||||
<PerformanceScore
|
||||
bind:ausweis
|
||||
bind:gebaeude_aufnahme_allgemein={aufnahme}
|
||||
bind:gebaeude={objekt}
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:objekt={objekt}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="progress-box" class="w-full box relative px-4 py-3 text-center order-1 2xl:order-2 self-stretch">
|
||||
|
||||
<h1 class="text-secondary text-3xl m-0">Energiesausweis erstellen</h1>
|
||||
<h2 class="text-primary text-xl">{Energieausweis} {PRICES.VerbrauchsausweisWohnen[0]} €</h2>
|
||||
<ProgressBar progress={0} />
|
||||
<h2 class="text-primary text-xl">{ausweisart} {PRICES.VerbrauchsausweisWohnen[0]} €</h2>
|
||||
<Progressbar progress={0} />
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -211,10 +210,10 @@
|
||||
|
||||
<Bereich bereich="A" title="Prüfung der Ausweisart">
|
||||
<Ausweisart
|
||||
bind:gebaeude={objekt}
|
||||
bind:gebaeude_aufnahme_allgemein={aufnahme}
|
||||
bind:objekt={objekt}
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:ausweis
|
||||
{Energieausweis}
|
||||
{ausweisart}
|
||||
/>
|
||||
</Bereich>
|
||||
|
||||
@@ -223,7 +222,7 @@
|
||||
<Bereich
|
||||
bereich="B"
|
||||
title="Eingabe der Gebäudeadresse - Angaben zu Wohnfläche, Keller und Dachgeschoss"
|
||||
><GebaeudeDaten bind:gebaeude_aufnahme_allgemein={aufnahme} /></Bereich
|
||||
><GebaeudeDaten bind:aufnahme={aufnahme} /></Bereich
|
||||
>
|
||||
|
||||
<!-- C Eingabe von 3 zusammenhängenden Verbrauchsjahren -->
|
||||
@@ -233,7 +232,7 @@
|
||||
title="Eingabe von 3 zusammenhängenden Verbrauchsjahren"
|
||||
><Verbrauch
|
||||
bind:gebaeude={objekt}
|
||||
bind:gebaeude_aufnahme_allgemein={aufnahme}
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:ausweis
|
||||
/></Bereich
|
||||
>
|
||||
@@ -251,16 +250,16 @@
|
||||
<Bereich
|
||||
bereich="E"
|
||||
title="Eingabe von Gebäudeteil, Lüftung, Kühlung und Leerstand"
|
||||
><LueftungundLeerstand bind:gebaeude_aufnahme_allgemein={aufnahme} /></Bereich
|
||||
><LueftungundLeerstand bind:aufnahme={aufnahme} /></Bereich
|
||||
>
|
||||
|
||||
<!-- F Angaben zur Heizungsanlage -->
|
||||
|
||||
<Bereich bereich="F" title="Angaben zur Heizunganlage"
|
||||
><SanierungszustandHeizungsanlage
|
||||
bind:images
|
||||
bind:images={bilder}
|
||||
bind:gebaeude={objekt}
|
||||
bind:gebaeude_aufnahme_allgemein={aufnahme}
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:ausweis
|
||||
/></Bereich
|
||||
>
|
||||
@@ -269,9 +268,9 @@
|
||||
|
||||
<Bereich bereich="G" title="Angaben zu Fenster, Dachfenster und Türen"
|
||||
><SanierungszustandFensterTueren
|
||||
bind:images
|
||||
bind:images={bilder}
|
||||
bind:gebaeude={objekt}
|
||||
bind:gebaeude_aufnahme_allgemein={aufnahme}
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:ausweis
|
||||
/></Bereich
|
||||
>
|
||||
@@ -279,9 +278,9 @@
|
||||
|
||||
<Bereich bereich="H" title="Angaben zur Wärmedämmung"
|
||||
><SanierungszustandWaermedammung
|
||||
bind:images
|
||||
bind:images={bilder}
|
||||
bind:gebaeude={objekt}
|
||||
bind:gebaeude_aufnahme_allgemein={aufnahme}
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:ausweis
|
||||
/></Bereich
|
||||
>
|
||||
@@ -290,7 +289,7 @@
|
||||
|
||||
<Bereich bereich="I" title="Gebäudebild und Energieausweis PDF Vorschau"
|
||||
><AusweisPreviewContainer
|
||||
bind:images
|
||||
bind:images={bilder}
|
||||
bind:ausweis
|
||||
bind:gebaeude={objekt}
|
||||
/></Bereich
|
||||
@@ -299,10 +298,10 @@
|
||||
|
||||
<ButtonWeiterHilfe {spaeterWeitermachen}
|
||||
bind:ausweis
|
||||
bind:images
|
||||
bind:images={bilder}
|
||||
bind:user
|
||||
bind:gebaeude={objekt}
|
||||
bind:gebaeude_aufnahme_allgemein={aufnahme}
|
||||
bind:aufnahme={aufnahme}
|
||||
>
|
||||
</ButtonWeiterHilfe>
|
||||
|
||||
@@ -364,7 +363,7 @@
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#await auditPlzNichtErkannt(aufnahme) then result}
|
||||
{#await auditPlzNichtErkannt(objekt) then result}
|
||||
{#if result}
|
||||
<RawNotification
|
||||
notification={{
|
||||
|
||||
@@ -31,48 +31,48 @@
|
||||
import { verbrauchsausweisWohnenSpeichern } from "src/client/lib/verbrauchsausweisWohnenSpeichern.js";
|
||||
|
||||
// TODO: Vom Server sollte ein volles Objekt kommen, dass alle Subobjekte enthält, weil es sonst zu Problemen führen kann
|
||||
// wenn gebaeude_aufnahme_allgemein oder gebaeude_stammdaten nicht existiert...
|
||||
// wenn aufnahme oder objekt nicht existiert...
|
||||
export let ausweis: VerbrauchsausweisWohnenClient;
|
||||
export let user: BenutzerClient = {} as BenutzerClient;
|
||||
|
||||
let gebaeude_aufnahme_allgemein = ausweis.gebaeude_aufnahme_allgemein || {};
|
||||
let gebaeude = ausweis.gebaeude_aufnahme_allgemein?.gebaeude_stammdaten || {};
|
||||
let images: (UploadedGebaeudeBild & { base64?: string })[] = ausweis.gebaeude_aufnahme_allgemein?.gebaeude_stammdaten?.gebaeude_bilder || [];
|
||||
let aufnahme = ausweis.aufnahme || {};
|
||||
let gebaeude = ausweis.aufnahme?.objekt || {};
|
||||
let images: (UploadedGebaeudeBild & { base64?: string })[] = ausweis.aufnahme?.objekt?.gebaeude_bilder || [];
|
||||
|
||||
async function spaeterWeitermachen() {
|
||||
const result = await verbrauchsausweisWohnenSpeichern(ausweis, gebaeude, gebaeude_aufnahme_allgemein, images, user);
|
||||
const result = await verbrauchsausweisWohnenSpeichern(ausweis, gebaeude, aufnahme, images, user);
|
||||
|
||||
if (result !== null) {
|
||||
// Falls der Nutzer zurück navigiert, sollte er wieder auf seinen Vorgang kommen.
|
||||
// Sonst müsste er alles neu eingeben...
|
||||
ausweis.uid = result.uid
|
||||
gebaeude.uid = result.gebaeude_uid
|
||||
gebaeude_aufnahme_allgemein.uid = result.gebaeude_aufnahme_uid
|
||||
aufnahme.uid = result.gebaeude_aufnahme_uid
|
||||
window.history.pushState({}, "", `${location.pathname}?uid=${result.uid}`);
|
||||
speichernOverlayHidden = false;
|
||||
}
|
||||
}
|
||||
|
||||
function automatischAusfüllen() {
|
||||
gebaeude_aufnahme_allgemein.baujahr_gebaeude = [1962];
|
||||
gebaeude_aufnahme_allgemein.baujahr_heizung = [1952];
|
||||
gebaeude_aufnahme_allgemein.saniert = true;
|
||||
gebaeude_aufnahme_allgemein.einheiten = 1;
|
||||
aufnahme.baujahr_gebaeude = [1962];
|
||||
aufnahme.baujahr_heizung = [1952];
|
||||
aufnahme.saniert = true;
|
||||
aufnahme.einheiten = 1;
|
||||
ausweis.ausstellgrund = "Vermietung";
|
||||
ausweis.verbrauch_1 = 15000;
|
||||
ausweis.verbrauch_2 = 14000;
|
||||
ausweis.verbrauch_3 = 16000;
|
||||
gebaeude_aufnahme_allgemein.flaeche = 152;
|
||||
gebaeude_aufnahme_allgemein.nutzflaeche = 172;
|
||||
aufnahme.flaeche = 152;
|
||||
aufnahme.nutzflaeche = 172;
|
||||
ausweis.keller_beheizt = true;
|
||||
gebaeude_aufnahme_allgemein.brennstoff_1 = "Erdgas H";
|
||||
aufnahme.brennstoff_1 = "Erdgas H";
|
||||
ausweis.einheit_1 = "kWh";
|
||||
ausweis.anteil_warmwasser_1 = 18;
|
||||
ausweis.startdatum = moment("01.01.2019").toDate();
|
||||
gebaeude_aufnahme_allgemein.plz = "21039";
|
||||
gebaeude_aufnahme_allgemein.ort = "Hamburg";
|
||||
gebaeude_aufnahme_allgemein.adresse = "Curslacker Deich 170";
|
||||
gebaeude_aufnahme_allgemein.gebaeudeteil = "Gesamtgebäude";
|
||||
aufnahme.plz = "21039";
|
||||
aufnahme.ort = "Hamburg";
|
||||
aufnahme.adresse = "Curslacker Deich 170";
|
||||
aufnahme.gebaeudeteil = "Gesamtgebäude";
|
||||
|
||||
gebaeude = gebaeude;
|
||||
ausweis = ausweis;
|
||||
@@ -81,14 +81,14 @@
|
||||
|
||||
async function ausweisAbschicken(e: SubmitEvent) {
|
||||
if (e && e.preventDefault) e.preventDefault();
|
||||
const result = await verbrauchsausweisWohnenSpeichern(ausweis, gebaeude, gebaeude_aufnahme_allgemein, images, user);
|
||||
const result = await verbrauchsausweisWohnenSpeichern(ausweis, gebaeude, aufnahme, images, user);
|
||||
|
||||
if (result !== null) {
|
||||
// Falls der Nutzer zurück navigiert, sollte er wieder auf seinen Vorgang kommen.
|
||||
// Sonst müsste er alles neu eingeben...
|
||||
ausweis.uid = result.uid
|
||||
gebaeude.uid = result.gebaeude_uid
|
||||
gebaeude_aufnahme_allgemein.uid = result.gebaeude_aufnahme_uid
|
||||
aufnahme.uid = result.gebaeude_aufnahme_uid
|
||||
window.history.pushState({}, "", `${location.pathname}?uid=${result.uid}`);
|
||||
window.location.href = `/kundendaten?uid=${result.uid}`;
|
||||
}
|
||||
@@ -98,12 +98,12 @@
|
||||
let speichernOverlayHidden = true;
|
||||
|
||||
$: {
|
||||
if (gebaeude_aufnahme_allgemein.saniert
|
||||
&& gebaeude_aufnahme_allgemein.oberste_geschossdecke_gedaemmt === undefined
|
||||
&& gebaeude_aufnahme_allgemein.dachgeschoss_gedaemmt === undefined) {
|
||||
if (aufnahme.saniert
|
||||
&& aufnahme.oberste_geschossdecke_gedaemmt === undefined
|
||||
&& aufnahme.dachgeschoss_gedaemmt === undefined) {
|
||||
|
||||
gebaeude_aufnahme_allgemein.oberste_geschossdecke_gedaemmt = true;
|
||||
gebaeude_aufnahme_allgemein.dachgeschoss_gedaemmt = true;
|
||||
aufnahme.oberste_geschossdecke_gedaemmt = true;
|
||||
aufnahme.dachgeschoss_gedaemmt = true;
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -128,7 +128,7 @@
|
||||
|
||||
<PerformanceScore
|
||||
bind:ausweis
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:aufnahme
|
||||
bind:gebaeude
|
||||
/>
|
||||
</div>-->
|
||||
@@ -155,8 +155,8 @@ xs:grid-cols-2
|
||||
<div class="bereich-box">
|
||||
|
||||
<Ausweisart
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:objekt={gebaeude}
|
||||
bind:aufnahme={aufnahme}
|
||||
bind:ausweis
|
||||
/>
|
||||
|
||||
@@ -192,7 +192,7 @@ xs:grid-cols-2
|
||||
required
|
||||
data-msg-minlength="min. 5 Zeichen"
|
||||
data-msg-maxlength="max. 40 Zeichen"
|
||||
bind:value={gebaeude_aufnahme_allgemein.adresse}
|
||||
bind:value={aufnahme.adresse}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -201,8 +201,8 @@ xs:grid-cols-2
|
||||
<div class="PLZ">
|
||||
<Label>* PLZ</Label>
|
||||
<ZipSearch
|
||||
bind:zip={gebaeude_aufnahme_allgemein.plz}
|
||||
bind:city={gebaeude_aufnahme_allgemein.ort}
|
||||
bind:zip={aufnahme.plz}
|
||||
bind:city={aufnahme.ort}
|
||||
name="plz"
|
||||
/>
|
||||
</div>
|
||||
@@ -217,7 +217,7 @@ xs:grid-cols-2
|
||||
name="ort"
|
||||
data-test="ort"
|
||||
readonly={true}
|
||||
bind:value={gebaeude_aufnahme_allgemein.ort}
|
||||
bind:value={aufnahme.ort}
|
||||
type="text"
|
||||
/>
|
||||
</div>
|
||||
@@ -248,7 +248,7 @@ xs:grid-cols-2
|
||||
autocomplete="off"
|
||||
data-rule-minlength="2"
|
||||
data-msg-minlength="min. 2 Zeichen"
|
||||
bind:value={gebaeude_aufnahme_allgemein.flaeche}
|
||||
bind:value={aufnahme.flaeche}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -272,7 +272,7 @@ xs:grid-cols-2
|
||||
autocomplete="off"
|
||||
data-rule-minlength="2"
|
||||
data-msg-minlength="min. 2 Zeichen"
|
||||
bind:value={gebaeude_aufnahme_allgemein.nutzflaeche}
|
||||
bind:value={aufnahme.nutzflaeche}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -285,7 +285,7 @@ xs:grid-cols-2
|
||||
name="keller"
|
||||
data-test="keller"
|
||||
required
|
||||
bind:value={gebaeude_aufnahme_allgemein.keller}
|
||||
bind:value={aufnahme.keller}
|
||||
>
|
||||
<option disabled>Bitte auswählen</option>
|
||||
<option value={Enums.Heizungsstatus.NICHT_VORHANDEN}
|
||||
@@ -308,7 +308,7 @@ xs:grid-cols-2
|
||||
<select
|
||||
name="dachgeschoss"
|
||||
data-test="dachgeschoss"
|
||||
bind:value={gebaeude_aufnahme_allgemein.dachgeschoss}
|
||||
bind:value={aufnahme.dachgeschoss}
|
||||
required
|
||||
>
|
||||
<option disabled>Bitte auswählen</option>
|
||||
@@ -345,7 +345,7 @@ xs:grid-cols-2
|
||||
|
||||
<Verbrauch
|
||||
bind:gebaeude
|
||||
bind:gebaeude_aufnahme_allgemein
|
||||
bind:aufnahme
|
||||
bind:ausweis
|
||||
/>
|
||||
</div>
|
||||
@@ -486,7 +486,7 @@ xs:grid-cols-2
|
||||
</RawNotification>
|
||||
{/each}
|
||||
|
||||
{#if auditBedarfsausweisBenoetigt(ausweis, gebaeude_aufnahme_allgemein)}
|
||||
{#if auditBedarfsausweisBenoetigt(ausweis, aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Bedarfsausweis benötigt!",
|
||||
@@ -502,7 +502,7 @@ xs:grid-cols-2
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#await auditPlzNichtErkannt(gebaeude_aufnahme_allgemein) then result}
|
||||
{#await auditPlzNichtErkannt(objekt) then result}
|
||||
{#if result}
|
||||
<RawNotification
|
||||
notification={{
|
||||
@@ -520,7 +520,7 @@ xs:grid-cols-2
|
||||
{/if}
|
||||
{/await}
|
||||
|
||||
{#if auditHeizungGebaeudeBaujahr(gebaeude_aufnahme_allgemein)}
|
||||
{#if auditHeizungGebaeudeBaujahr(aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -529,7 +529,7 @@ xs:grid-cols-2
|
||||
dismissable: true,
|
||||
onUserDismiss: () => {
|
||||
hidden.add(AuditType.HEIZUNG_GEBAEUDE_BAUJAHR);
|
||||
gebaeude_aufnahme_allgemein = gebaeude_aufnahme_allgemein;
|
||||
aufnahme = aufnahme;
|
||||
},
|
||||
type: "warning",
|
||||
}}
|
||||
@@ -539,7 +539,7 @@ xs:grid-cols-2
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#if auditHeizungJuengerDreiJahre(gebaeude_aufnahme_allgemein)}
|
||||
{#if auditHeizungJuengerDreiJahre(aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -609,7 +609,7 @@ xs:grid-cols-2
|
||||
{/if}
|
||||
{/await}
|
||||
|
||||
{#if auditWohnFlaeche(gebaeude_aufnahme_allgemein)}
|
||||
{#if auditWohnFlaeche(aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -648,7 +648,7 @@ xs:grid-cols-2
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#if auditLeerStand(gebaeude_aufnahme_allgemein)}
|
||||
{#if auditLeerStand(aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -668,7 +668,7 @@ xs:grid-cols-2
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#if auditVerbrauchAbweichung(ausweis, gebaeude_aufnahme_allgemein).length > 0}
|
||||
{#if auditVerbrauchAbweichung(ausweis, aufnahme).length > 0}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -684,14 +684,14 @@ xs:grid-cols-2
|
||||
>
|
||||
Die Abweichung der Verbräuche zwischen Zeitraum {auditVerbrauchAbweichung(
|
||||
ausweis,
|
||||
gebaeude_aufnahme_allgemein,
|
||||
)[0]} und {auditVerbrauchAbweichung(ausweis, gebaeude_aufnahme_allgemein)[1]} beträgt mehr
|
||||
aufnahme,
|
||||
)[0]} und {auditVerbrauchAbweichung(ausweis, aufnahme)[1]} beträgt mehr
|
||||
als 30% und sie haben keinen Leerstand angegeben. Sind sie sich sicher,
|
||||
dass das stimmt?
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#await auditEndEnergie(ausweis, gebaeude, gebaeude_aufnahme_allgemein) then result}
|
||||
{#await auditEndEnergie(ausweis, gebaeude, aufnahme) then result}
|
||||
{#if result}
|
||||
<RawNotification
|
||||
notification={{
|
||||
@@ -713,7 +713,7 @@ xs:grid-cols-2
|
||||
{/if}
|
||||
{/await}
|
||||
|
||||
{#if auditWohnflaecheGroesserGesamtflaeche(gebaeude_aufnahme_allgemein)}
|
||||
{#if auditWohnflaecheGroesserGesamtflaeche(aufnahme)}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
|
||||
Reference in New Issue
Block a user