Felder angepasst und Tests

This commit is contained in:
Moritz Utcke
2025-03-30 20:18:30 -03:00
parent e2e576e4fe
commit c8b41458e1
34 changed files with 303 additions and 376 deletions

View File

@@ -99,13 +99,13 @@ export async function endEnergieVerbrauchVerbrauchsausweisGewerbe_2016(ausweis:
// Endenergieverbrauch
// Um den EEV auszurechnen, müssen die Verbräuche zu kWh konvertiert werden.
let brennstoff_1 = { coe: 0, energietraeger: "", einheit: "", umrechnungsfaktor: 0, primaerenergiefaktor: 0 }, brennstoff_2 = { coe: 0, energietraeger: "", einheit: "", umrechnungsfaktor: 0, primaerenergiefaktor: 0 };
if (aufnahme.brennstoff_1 && ausweis.einheit_1) {
brennstoff_1 = getHeizwertfaktor(aufnahme.brennstoff_1, ausweis.einheit_1);
if (ausweis.brennstoff_1 && ausweis.einheit_1) {
brennstoff_1 = getHeizwertfaktor(ausweis.brennstoff_1, ausweis.einheit_1);
}
if (aufnahme.brennstoff_2 && ausweis.einheit_2) {
brennstoff_2 = getHeizwertfaktor(aufnahme.brennstoff_2, ausweis.einheit_2);
if (ausweis.brennstoff_2 && ausweis.einheit_2) {
brennstoff_2 = getHeizwertfaktor(ausweis.brennstoff_2, ausweis.einheit_2);
}
let energieVerbrauchGesamt_1 = ((ausweis.verbrauch_1 || 0) + (ausweis.verbrauch_2 || 0) + (ausweis.verbrauch_3 || 0)) * brennstoff_1?.umrechnungsfaktor;

View File

@@ -64,11 +64,11 @@ export async function endEnergieVerbrauchVerbrauchsausweis_2016(
// Endenergieverbrauch
// Um den EEV auszurechnen, müssen die Verbräuche zu kWh konvertiert werden.
let brennstoff_1 = getHeizwertfaktor(
aufnahme.brennstoff_1 as string,
ausweis.brennstoff_1 as string,
ausweis.einheit_1 as string
);
let brennstoff_2 = getHeizwertfaktor(
aufnahme.brennstoff_2 as string,
ausweis.brennstoff_2 as string,
ausweis.einheit_2 as string
);

View File

@@ -1,38 +0,0 @@
import { Ausweis } from "./Ausweis/Ausweis";
import { Dachgeschoss, Lueftungskonzept } from "./Ausweis/types";
import { BitChecker } from "./BitChecker";
export class Gebaeude {
public typ: string = "";
public plz: string = "";
public ort: string = "";
public strasse: string = "";
public gebaeudeteil: string = "";
public saniert: boolean = false;
public baujahr: number[] = [];
public einheiten: number = 0;
public wohnflaeche: number = 0;
public nutzflaeche: number = 0;
public keller_beheizt: boolean = false;
public dachgeschoss_beheizt: Dachgeschoss = Dachgeschoss.UNBEHEIZT;
public lueftungskonzept: Lueftungskonzept = "Fensterlüftung";
public wird_gekuehlt: boolean = false;
public leerstand: number = 0;
public versorgungssysteme: boolean[] = BitChecker(0);
public fenster_dach: boolean[] = BitChecker(0);
public energiequelle_2_nutzung: boolean[] = BitChecker(0);
public daemmung: boolean[] = BitChecker(0);
public ausweis: Ausweis;
public uid?: string;
public constructor(initializer?: Gebaeude) {
if (initializer) {
this.typ = initializer.typ;
this.plz = initializer.plz;
this.ort = initializer.ort;
}
}
}

View File

@@ -1,8 +1,8 @@
import { AufnahmeClient, BedarfsausweisWohnenClient, ObjektClient, VerbrauchsausweisGewerbeClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
import { Enums } from "#lib/client/prisma";
import { AufnahmeClient, ObjektClient, VerbrauchsausweisGewerbeClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
import { Enums } from "#lib/client/prisma.js";
import moment from "moment";
export function getEmpfehlungen(ausweis: VerbrauchsausweisWohnenClient | VerbrauchsausweisGewerbeClient | BedarfsausweisWohnenClient, aufnahme: AufnahmeClient, objekt: ObjektClient): {
export function getEmpfehlungen(ausweis: VerbrauchsausweisWohnenClient | VerbrauchsausweisGewerbeClient, aufnahme: AufnahmeClient, objekt: ObjektClient): {
title: string,
description: string,
anlagenteil: string,
@@ -19,7 +19,6 @@ export function getEmpfehlungen(ausweis: VerbrauchsausweisWohnenClient | Verbrau
let baujahr_anlagesanlage = aufnahme.baujahr_heizung && aufnahme.baujahr_heizung[0];
let Zentralheizung = aufnahme.zentralheizung;
let photovoltaik = aufnahme.photovoltaik;
let Brennstoff = aufnahme.brennstoff_1;
let Aussenwand_gedaemmt = aufnahme.aussenwand_gedaemmt;
let Dachgeschoss = aufnahme.dachgeschoss;
let Dachgeschoss_gedaemmt = aufnahme.dachgeschoss_gedaemmt;
@@ -70,7 +69,7 @@ export function getEmpfehlungen(ausweis: VerbrauchsausweisWohnenClient | Verbrau
let Relanlagenjahr = moment().year() - 35;
if ((!Brennwertkessel && !Waermepumpe) && baujahr_anlagesanlage <= Relanlagenjahr && Brennstoff != 'Fernwärme' && Brennstoff != 'Strommix') {
if ((!Brennwertkessel && !Waermepumpe) && baujahr_anlagesanlage <= Relanlagenjahr && ausweis.brennstoff_1 != 'Fernwärme' && ausweis.brennstoff_1 != 'Strommix') {
empfehlungen.push({
"title" : "Anlagentechnik",
"description" : "Prüfen Sie, ob Sie bei einer Umrüstung auf einen regenerativen Anteil von 65% kommen. Bei energetisch sanierten Gebäuden z.B. Wärmepumpe. Bei unsanieten Gebäuden Fernwärmeanschluss.",
@@ -126,7 +125,7 @@ export function getEmpfehlungen(ausweis: VerbrauchsausweisWohnenClient | Verbrau
}
}
if ((baujahr_anlagesanlage <= (moment().year() - 30)) && (Brennstoff == "Heizöl" || Brennstoff == "Erdgas") && !Waermepumpe) {
if ((baujahr_anlagesanlage <= (moment().year() - 30)) && (ausweis.brennstoff_1 == "Heizöl" || ausweis.brennstoff_1 == "Erdgas") && !Waermepumpe) {
// Wärmepumpe
empfehlungen.push({
"title" : "Wärmeerzeuger",
@@ -137,7 +136,7 @@ export function getEmpfehlungen(ausweis: VerbrauchsausweisWohnenClient | Verbrau
});
}
if (!photovoltaik && Brennstoff == "Strommix") {
if (!photovoltaik && ausweis.brennstoff_1 == "Strommix") {
// Wärmepumpe
empfehlungen.push({
"title" : "Wärmeerzeuger",

View File

@@ -1,6 +1,6 @@
import { VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
import { faker } from "@faker-js/faker";
import { Enums } from "#lib/client/prisma.js";
import { Aufnahme, Enums, VerbrauchsausweisWohnen } from "#lib/client/prisma.js";
import moment from "moment";
export async function importVerbrauchsausweisWohnenAltesSystem(count: number = 5) {
@@ -19,7 +19,7 @@ export async function importVerbrauchsausweisWohnenAltesSystem(count: number = 5
}
export function verbrauchsausweisWohnenImportTranslate(ausweis: Record<string, any>) {
const ausweisTranslated: VerbrauchsausweisWohnenClient = {
const ausweisTranslated: VerbrauchsausweisWohnen & { aufnahme: Aufnahme } = {
aufnahme: {
rechnungen: null,
baujahr_gebaeude: [ausweis.baujahr_gebaeude],
@@ -58,7 +58,6 @@ export function verbrauchsausweisWohnenImportTranslate(ausweis: Record<string, a
aussenwand_gedaemmt: ausweis.aussenwand_gedaemmt,
aussenwand_min_12cm_gedaemmt: ausweis.aussenwand_min_12cm_gedaemmt,
bestellt: ausweis.bestellt,
boxpruefung: ausweis.boxpruefung,
brennwert_kessel: ausweis.brennwert_kessel,
dachgeschoss_gedaemmt: ausweis.dachgeschoss_gedaemmt,
dachgeschoss_min_12cm_gedaemmt: ausweis.dachgeschoss_min_12cm_gedaemmt,

View File

@@ -16,7 +16,7 @@ export async function loginClient(email: string, passwort: string): Promise<infe
}
Cookies.set(API_ACCESS_TOKEN_COOKIE_NAME, response.accessToken, options);
Cookies.set(API_REFRESH_TOKEN_COOKIE_NAME, response.refreshToken, options);
Cookies.set("uid", response.uid, options);
Cookies.set("uid", response.id, options);
return response;
} catch (e) {

View File

@@ -165,14 +165,14 @@ export async function pdfDatenblattVerbrauchsausweisGewerbe(ausweis: Verbrauchsa
</flex>
<flex direction="column" gap="4">
<text></text>
<text size="12" font="bold">${aufnahme.brennstoff_1}</text>
<text size="12" font="bold">${ausweis.brennstoff_1}</text>
<text size="12">${ausweis.verbrauch_1} ${ausweis.einheit_1}</text>
<text size="12">${ausweis.verbrauch_2} ${ausweis.einheit_1}</text>
<text size="12">${ausweis.verbrauch_3} ${ausweis.einheit_1}</text>
</flex>
<flex direction="column" gap="4">
<text size="12">zusätzliche Heizquelle</text>
<text size="12" font="bold">${aufnahme.brennstoff_2 || ""}</text>
<text size="12" font="bold">${ausweis.brennstoff_2 || ""}</text>
<text size="12">${ausweis.verbrauch_4 || ""} ${ausweis.einheit_2 || ""}</text>
<text size="12">${ausweis.verbrauch_5 || ""} ${ausweis.einheit_2 || ""}</text>
<text size="12">${ausweis.verbrauch_6 || ""} ${ausweis.einheit_2 || ""}</text>

View File

@@ -131,14 +131,14 @@ export async function pdfDatenblattVerbrauchsausweisWohnen(ausweis: Verbrauchsau
</flex>
<flex direction="column" gap="4">
<text></text>
<text size="12" font="bold">${aufnahme.brennstoff_1}</text>
<text size="12" font="bold">${ausweis.brennstoff_1}</text>
<text size="12">${ausweis.verbrauch_1} ${ausweis.einheit_1}</text>
<text size="12">${ausweis.verbrauch_2} ${ausweis.einheit_1}</text>
<text size="12">${ausweis.verbrauch_3} ${ausweis.einheit_1}</text>
</flex>
<flex direction="column" gap="4">
<text size="12">zusätzliche Heizquelle</text>
<text size="12" font="bold">${aufnahme.brennstoff_2 || ""}</text>
<text size="12" font="bold">${ausweis.brennstoff_2 || ""}</text>
<text size="12">${ausweis.verbrauch_4 || ""} ${ausweis.einheit_2 || ""}</text>
<text size="12">${ausweis.verbrauch_5 || ""} ${ausweis.einheit_2 || ""}</text>
<text size="12">${ausweis.verbrauch_6 || ""} ${ausweis.einheit_2 || ""}</text>

View File

@@ -66,7 +66,7 @@ export async function pdfVerbrauchsausweisGewerbe(ausweis: VerbrauchsausweisGewe
size: 10
})
pages[0].drawText(`${aufnahme.brennstoff_1}, ${aufnahme.brennstoff_2 || ""}`, {
pages[0].drawText(`${ausweis.brennstoff_1}, ${ausweis.brennstoff_2 || ""}`, {
x: 211,
y: height - 285,
size: 10
@@ -97,7 +97,7 @@ export async function pdfVerbrauchsausweisGewerbe(ausweis: VerbrauchsausweisGewe
})
if (ausweis.warmwasser_enthalten) {
pages[0].drawText(`${aufnahme.brennstoff_1}, ${aufnahme.brennstoff_2 || ""}`, {
pages[0].drawText(`${ausweis.brennstoff_1}, ${ausweis.brennstoff_2 || ""}`, {
x: 211,
y: height - 299,
size: 10
@@ -422,7 +422,7 @@ export async function pdfVerbrauchsausweisGewerbe(ausweis: VerbrauchsausweisGewe
addVerbrauch(
moment(ausweis.startdatum).format("MM.YYYY"),
moment(ausweis.startdatum).add(3, "years").format("MM.YYYY"),
aufnahme.brennstoff_1 || "",
ausweis.brennstoff_1 || "",
berechnungen?.brennstoff_1.primaerenergiefaktor.toString(),
Math.round(berechnungen?.energieVerbrauchGesamt_1 || 0).toString(),
"0",
@@ -436,7 +436,7 @@ export async function pdfVerbrauchsausweisGewerbe(ausweis: VerbrauchsausweisGewe
addVerbrauch(
moment(ausweis.startdatum).format("MM.YYYY"),
moment(ausweis.startdatum).add(3, "years").format("MM.YYYY"),
aufnahme.brennstoff_1 || "",
ausweis.brennstoff_1 || "",
berechnungen?.brennstoff_1.primaerenergiefaktor.toString(),
Math.round(berechnungen?.energieVerbrauchGesamt_1 || 0).toString(),
Math.round(berechnungen?.energieVerbrauchWarmwasser_1 || 0).toString(),
@@ -451,7 +451,7 @@ export async function pdfVerbrauchsausweisGewerbe(ausweis: VerbrauchsausweisGewe
addVerbrauch(
moment(ausweis.startdatum).format("MM.YYYY"),
moment(ausweis.startdatum).add(3, "years").format("MM.YYYY"),
aufnahme.brennstoff_2 || "",
ausweis.brennstoff_2 || "",
berechnungen?.brennstoff_2.primaerenergiefaktor.toString(),
Math.round(berechnungen?.energieVerbrauchGesamt_2 || 0).toString(),
Math.round(berechnungen?.energieVerbrauchWarmwasser_2 || 0).toString(),

View File

@@ -71,14 +71,14 @@ export async function pdfVerbrauchsausweisWohnen(ausweis: VerbrauchsausweisWohne
size: 10
})
pages[0].drawText(`${aufnahme.brennstoff_1}, ${aufnahme.brennstoff_2 || ""}`, {
pages[0].drawText(`${ausweis.brennstoff_1}, ${ausweis.brennstoff_2 || ""}`, {
x: 211,
y: height - 298.5,
size: 10
})
if (ausweis.warmwasser_enthalten) {
pages[0].drawText(`${aufnahme.brennstoff_1}, ${aufnahme.brennstoff_2 || ""}`, {
pages[0].drawText(`${ausweis.brennstoff_1}, ${ausweis.brennstoff_2 || ""}`, {
x: 211,
y: height - 312,
size: 10
@@ -111,7 +111,7 @@ export async function pdfVerbrauchsausweisWohnen(ausweis: VerbrauchsausweisWohne
})
if (ausweis.warmwasser_enthalten) {
pages[0].drawText(`${aufnahme.brennstoff_1}, ${aufnahme.brennstoff_2 || ""}`, {
pages[0].drawText(`${ausweis.brennstoff_1}, ${ausweis.brennstoff_2 || ""}`, {
x: 211,
y: height - 299,
size: 10
@@ -414,7 +414,7 @@ export async function pdfVerbrauchsausweisWohnen(ausweis: VerbrauchsausweisWohne
addVerbrauch(
moment(ausweis.startdatum).format("MM.YYYY"),
moment(ausweis.startdatum).add(3, "years").format("MM.YYYY"),
aufnahme.brennstoff_1 || "",
ausweis.brennstoff_1 || "",
berechnungen?.brennstoff_1.primaerenergiefaktor.toString(),
Math.round(berechnungen?.energieVerbrauchGesamt_1 || 0).toString(),
"0",
@@ -426,7 +426,7 @@ export async function pdfVerbrauchsausweisWohnen(ausweis: VerbrauchsausweisWohne
addVerbrauch(
moment(ausweis.startdatum).format("MM.YYYY"),
moment(ausweis.startdatum).add(3, "years").format("MM.YYYY"),
aufnahme.brennstoff_1 || "",
ausweis.brennstoff_1 || "",
berechnungen?.brennstoff_1.primaerenergiefaktor.toString(),
Math.round(berechnungen?.energieVerbrauchGesamt_1 || 0).toString(),
Math.round(berechnungen?.energieVerbrauchWarmwasser_1 || 0).toString(),
@@ -439,7 +439,7 @@ export async function pdfVerbrauchsausweisWohnen(ausweis: VerbrauchsausweisWohne
addVerbrauch(
moment(ausweis.startdatum).format("MM.YYYY"),
moment(ausweis.startdatum).add(3, "years").format("MM.YYYY"),
aufnahme.brennstoff_2 || "",
ausweis.brennstoff_2 || "",
berechnungen?.brennstoff_2.primaerenergiefaktor.toString(),
Math.round(berechnungen?.energieVerbrauchGesamt_2 || 0).toString(),
Math.round(berechnungen?.energieVerbrauchWarmwasser_2 || 0).toString(),