Merge remote-tracking branch 'origin/UMBE' into UMBE
This commit is contained in:
@@ -2,9 +2,9 @@
|
||||
import HelpLabel from "../HelpLabel.svelte";
|
||||
import moment from "moment";
|
||||
import Label from "../Label.svelte";
|
||||
import fuelList from "./brennstoffListe";
|
||||
import { auditVerbrauchAbweichung } from "../Verbrauchsausweis/audits/VerbrauchAbweichung";
|
||||
import { GebaeudeAufnahmeClient, GebaeudeClient, VerbrauchsausweisWohnenClient } from "./types";
|
||||
import fuelList from "./brennstoffListe.js";
|
||||
import { auditVerbrauchAbweichung } from "../Verbrauchsausweis/audits/VerbrauchAbweichung.js";
|
||||
import { GebaeudeAufnahmeClient, GebaeudeClient, VerbrauchsausweisWohnenClient } from "./types.js";
|
||||
|
||||
export let gebaeude: GebaeudeClient;
|
||||
export let gebaeude_aufnahme_allgemein: GebaeudeAufnahmeClient;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { GebaeudeAufnahmeClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types";
|
||||
import { GebaeudeAufnahmeClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
|
||||
|
||||
export function auditBedarfsausweisBenoetigt(ausweis: VerbrauchsausweisWohnenClient, gebaeude: GebaeudeAufnahmeClient): boolean {
|
||||
if (ausweis.ausstellgrund == "Neubau" || ausweis.ausstellgrund == "Modernisierung") {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { GebaeudeClient, VerbrauchsausweisWohnenClient, GebaeudeAufnahmeClient } from "#components/Ausweis/types";
|
||||
import { AuditType, hidden } from "./hidden";
|
||||
import { endEnergieVerbrauchVerbrauchsausweis_2016 } from "#lib/Berechnungen/VerbrauchsausweisWohnen/VerbrauchsausweisWohnen_2016";
|
||||
import { getKlimafaktoren } from "#lib/Klimafaktoren";
|
||||
import { GebaeudeClient, VerbrauchsausweisWohnenClient, GebaeudeAufnahmeClient } from "#components/Ausweis/types.js";
|
||||
import { AuditType, hidden } from "./hidden.js";
|
||||
import { endEnergieVerbrauchVerbrauchsausweis_2016 } from "#lib/Berechnungen/VerbrauchsausweisWohnen/VerbrauchsausweisWohnen_2016.js";
|
||||
import { getKlimafaktoren } from "#lib/Klimafaktoren.js";
|
||||
|
||||
export async function auditEndEnergie(ausweis: VerbrauchsausweisWohnenClient, gebaeude: GebaeudeClient, gebaeude_aufnahme_allgemein: GebaeudeAufnahmeClient): Promise<boolean> {
|
||||
if (hidden.has(AuditType.END_ENERGIE)) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types";
|
||||
import { AuditType, hidden } from "../audits/hidden";
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types.js";
|
||||
import { AuditType, hidden } from "../audits/hidden.js";
|
||||
|
||||
export function auditHeizungGebaeudeBaujahr(gebaeude: GebaeudeAufnahmeClient): boolean {
|
||||
if ((gebaeude.baujahr_heizung && gebaeude.baujahr_heizung.length > 0) && (gebaeude.baujahr_gebaeude && gebaeude.baujahr_gebaeude.length > 0)) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types";
|
||||
import { AuditType, hidden } from "../audits/hidden";
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types.js";
|
||||
import { AuditType, hidden } from "../audits/hidden.js";
|
||||
|
||||
export function auditHeizungJuengerDreiJahre(gebaeude: GebaeudeAufnahmeClient): boolean {
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { GebaeudeClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types";
|
||||
import { AuditType, hidden } from "./hidden";
|
||||
import { getKlimafaktoren } from "#lib/Klimafaktoren";
|
||||
import { GebaeudeClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
|
||||
import { AuditType, hidden } from "./hidden.js";
|
||||
import { getKlimafaktoren } from "#lib/Klimafaktoren.js";
|
||||
|
||||
export async function auditKlimaFaktoren(ausweis: VerbrauchsausweisWohnenClient, gebaeude: GebaeudeClient): Promise<boolean> {
|
||||
if (hidden.has(AuditType.KLIMA_FAKTOREN)) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types";
|
||||
import { AuditType, hidden } from "./hidden";
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types.js";
|
||||
import { AuditType, hidden } from "./hidden.js";
|
||||
|
||||
export function auditLeerStand(gebaeude: GebaeudeAufnahmeClient): boolean {
|
||||
if (gebaeude.leerstand && !hidden.has(AuditType.LEER_STAND)) {
|
||||
|
||||
@@ -1,23 +1,29 @@
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types";
|
||||
import { client } from "src/trpc";
|
||||
import { memoize } from "src/lib/Memoization";
|
||||
import { AuditType, hidden } from "../audits/hidden";
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types.js";
|
||||
import { client } from "src/trpc.js";
|
||||
import { memoize } from "src/lib/Memoization.js";
|
||||
import { AuditType, hidden } from "../audits/hidden.js";
|
||||
|
||||
export const auditPlzNichtErkannt = memoize(async (gebaeude: GebaeudeAufnahmeClient) => {
|
||||
if (gebaeude.plz) {
|
||||
if (gebaeude.plz.length == 5) {
|
||||
try {
|
||||
const result = await client.v1.postleitzahlen.query({ plz: gebaeude.plz, limit: 1 });
|
||||
|
||||
if (result.length > 0) {
|
||||
return false;
|
||||
}
|
||||
} catch (e) {
|
||||
if (!hidden.has(AuditType.PLZ_NICHT_ERKANNT)){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return false
|
||||
});
|
||||
export const auditPlzNichtErkannt = memoize(
|
||||
async (gebaeude: GebaeudeAufnahmeClient) => {
|
||||
if (gebaeude.plz) {
|
||||
if (gebaeude.plz.length == 5) {
|
||||
try {
|
||||
const result = await client.v1.postleitzahlen.query({
|
||||
plz: gebaeude.plz,
|
||||
limit: 1,
|
||||
});
|
||||
|
||||
if (result.length > 0) {
|
||||
return false;
|
||||
}
|
||||
} catch (e) {
|
||||
if (!hidden.has(AuditType.PLZ_NICHT_ERKANNT)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { GebaeudeClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types";
|
||||
import { AuditType, hidden } from "./hidden";
|
||||
import { GebaeudeAufnahmeClient, GebaeudeClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
|
||||
import { AuditType, hidden } from "./hidden.js";
|
||||
|
||||
export function auditVerbrauchAbweichung(ausweis: VerbrauchsausweisWohnenClient, gebaeude: GebaeudeClient): number[] {
|
||||
export function auditVerbrauchAbweichung(ausweis: VerbrauchsausweisWohnenClient, gebaeude: GebaeudeAufnahmeClient): number[] {
|
||||
if (gebaeude.leerstand && (gebaeude.leerstand > 0)) {
|
||||
return [];
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { VerbrauchsausweisWohnenClient } from "#components/Ausweis/types";
|
||||
import { AuditType, hidden } from "./hidden";
|
||||
import { VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
|
||||
import { AuditType, hidden } from "./hidden.js";
|
||||
|
||||
export function auditWarmWasser(ausweis: VerbrauchsausweisWohnenClient): boolean {
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types";
|
||||
import { AuditType, hidden } from "./hidden";
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types.js";
|
||||
import { AuditType, hidden } from "./hidden.js";
|
||||
|
||||
export function auditWohnFlaeche(gebaeude: GebaeudeAufnahmeClient ): boolean {
|
||||
if (gebaeude.einheiten && gebaeude.flaeche ) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types";
|
||||
import { AuditType, hidden } from "../audits/hidden";
|
||||
import { GebaeudeAufnahmeClient } from "#components/Ausweis/types.js";
|
||||
import { AuditType, hidden } from "../audits/hidden.js";
|
||||
|
||||
export function auditWohnflaecheGroesserGesamtflaeche(gebaeude: GebaeudeAufnahmeClient ): boolean {
|
||||
if (gebaeude.flaeche && gebaeude.nutzflaeche){
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { GebaeudeClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types";
|
||||
import { AuditType, hidden } from "./hidden";
|
||||
import { GebaeudeClient, VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
|
||||
import { AuditType, hidden } from "./hidden.js";
|
||||
|
||||
export function auditZeitraumAktuell(ausweis: VerbrauchsausweisWohnenClient, gebaeude: GebaeudeClient): boolean {
|
||||
if (hidden.has(AuditType.ZEITRAUM_AKTUELL)) {
|
||||
|
||||
@@ -9,7 +9,6 @@ export enum AuditType {
|
||||
WOHN_FLAECHE,
|
||||
WARM_WASSER,
|
||||
LEER_STAND,
|
||||
PLZ_NICHT_ERKANNT,
|
||||
END_ENERGIE,
|
||||
WOHNFLAECHE_GROESSER_GESAMTFLAECHE
|
||||
}
|
||||
@@ -8,8 +8,5 @@ import Preistabelle from "#sidebarCards/card-price-info.svelte";
|
||||
|
||||
|
||||
<Navigation client:load />
|
||||
|
||||
<Preistabelle client:load />
|
||||
|
||||
|
||||
</div>
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
import i18next from "i18next";
|
||||
|
||||
import "../style/global.scss";
|
||||
import "#style/global.css";
|
||||
import "../../svelte-dialogs.config"
|
||||
import "svelte-ripple-action/ripple.css"
|
||||
import ThemeController from "#components/ThemeController.svelte";
|
||||
@@ -38,7 +38,7 @@ const schema = JSON.stringify({
|
||||
},
|
||||
});
|
||||
|
||||
const lightTheme = Astro.cookies.get("theme").value === "light";
|
||||
const lightTheme = Astro.cookies.get("theme")?.value === "light";
|
||||
---
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
import i18next from "i18next";
|
||||
|
||||
import "../style/UMBE_global.css";
|
||||
import "../style/global.scss";
|
||||
import "#style/global.css";
|
||||
import "../../svelte-dialogs.config"
|
||||
import Footer from "../components/Footer.astro";
|
||||
import Header from "../components/Header.astro";
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
import i18next from "i18next";
|
||||
|
||||
import "../style/global.scss";
|
||||
import "#style/global.css";
|
||||
import "../../svelte-dialogs.config"
|
||||
import "svelte-ripple-action/ripple.css"
|
||||
import DashboardSidebar from "../components/Dashboard/DashboardSidebar.svelte"
|
||||
@@ -50,7 +50,7 @@ const schema = JSON.stringify({
|
||||
},
|
||||
});
|
||||
|
||||
let lightTheme = Astro.cookies.get("theme").value === "light";
|
||||
let lightTheme = Astro.cookies.get("theme")?.value === "light";
|
||||
---
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { VerbrauchsausweisWohnenClient } from "#components/Ausweis/types";
|
||||
import { getKlimafaktoren } from "#lib/Klimafaktoren";
|
||||
import { getHeizwertfaktor } from "#lib/server/Heizwertfaktor";
|
||||
import { VerbrauchsausweisWohnenClient } from "#components/Ausweis/types.js";
|
||||
import { getKlimafaktoren } from "#lib/Klimafaktoren.js";
|
||||
import { getHeizwertfaktor } from "#lib/server/Heizwertfaktor.js";
|
||||
import { Enums } from "@ibcornelsen/database/client";
|
||||
import moment from "moment";
|
||||
|
||||
|
||||
@@ -1,6 +1,12 @@
|
||||
import type { GebaeudeStammdaten, VerbrauchsausweisWohnen } from "@ibcornelsen/database/client";
|
||||
import { endEnergieVerbrauchVerbrauchsausweis_2016 } from "./VerbrauchsausweisWohnen/VerbrauchsausweisWohnen_2016";
|
||||
import { endEnergieVerbrauchVerbrauchsausweis_2016 } from "./VerbrauchsausweisWohnen/VerbrauchsausweisWohnen_2016.js";
|
||||
|
||||
export async function endEnergieVerbrauch(ausweis: VerbrauchsausweisWohnen & { gebaeude_stammdaten: GebaeudeStammdaten }): Promise<number> {
|
||||
return (await endEnergieVerbrauchVerbrauchsausweis_2016(ausweis)).endEnergieVerbrauchGesamt;
|
||||
const result = await endEnergieVerbrauchVerbrauchsausweis_2016(ausweis);
|
||||
|
||||
if (!result) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return result.endEnergieVerbrauchGesamt;
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
import moment from "moment";
|
||||
import { memoize } from "./Memoization";
|
||||
import { client } from "src/trpc";
|
||||
import { memoize } from "./Memoization.js";
|
||||
import { client } from "src/trpc.js";
|
||||
|
||||
export const getKlimafaktoren = memoize(async (date: Date, plz: string) => {
|
||||
if (!plz || !date) {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import fuelList from "#components/Ausweis/brennstoffListe";
|
||||
import fuelList from "#components/Ausweis/brennstoffListe.js";
|
||||
|
||||
export const getHeizwertfaktor = function(energietraeger: string, einheit: string): {
|
||||
coe: number,
|
||||
|
||||
@@ -619,11 +619,7 @@
|
||||
message: "Plausibilitätsprüfung",
|
||||
timeout: 0,
|
||||
uid: "PLZ_NICHT_ERKANNT",
|
||||
dismissable: true,
|
||||
onUserDismiss: () => {
|
||||
hidden.add(AuditType.PLZ_NICHT_ERKANNT);
|
||||
gebaeude = gebaeude;
|
||||
},
|
||||
dismissable: false,
|
||||
type: "warning",
|
||||
}}
|
||||
>
|
||||
@@ -639,7 +635,7 @@
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
timeout: 0,
|
||||
uid: "HEIZUNG_VOR_GEBAEUDE",
|
||||
uid: "HEIZUNG_GEBAEUDE_BAUJAHR",
|
||||
dismissable: true,
|
||||
onUserDismiss: () => {
|
||||
hidden.add(AuditType.HEIZUNG_GEBAEUDE_BAUJAHR);
|
||||
@@ -782,7 +778,7 @@
|
||||
</RawNotification>
|
||||
{/if}
|
||||
|
||||
{#if auditVerbrauchAbweichung(ausweis, gebaeude).length > 0}
|
||||
{#if auditVerbrauchAbweichung(ausweis, gebaeude_aufnahme_allgemein).length > 0}
|
||||
<RawNotification
|
||||
notification={{
|
||||
message: "Plausibilitätsprüfung",
|
||||
@@ -798,8 +794,8 @@
|
||||
>
|
||||
Die Abweichung der Verbräuche zwischen Zeitraum {auditVerbrauchAbweichung(
|
||||
ausweis,
|
||||
gebaeude,
|
||||
)[0]} und {auditVerbrauchAbweichung(ausweis, gebaeude)[1]} beträgt mehr
|
||||
gebaeude_aufnahme_allgemein,
|
||||
)[0]} und {auditVerbrauchAbweichung(ausweis, gebaeude_aufnahme_allgemein)[1]} beträgt mehr
|
||||
als 30% und sie haben keinen Leerstand angegeben. Sind sie sich sicher,
|
||||
dass das stimmt?
|
||||
</RawNotification>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
import ThemeController from "../components/ThemeController.svelte";
|
||||
import moment from "moment"
|
||||
|
||||
const lightTheme = Astro.cookies.get("theme").value === "light";
|
||||
const lightTheme = Astro.cookies.get("theme")?.value === "light";
|
||||
---
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
@@ -6,11 +6,7 @@ import BannerPrice from "#content/banner-saeule.svelte";
|
||||
|
||||
<Layout title="Energieausweis online erstellen - Online Energieausweis">
|
||||
<h1>Energieausweis online erstellen</h1>
|
||||
|
||||
<BannerPrice client:load />
|
||||
|
||||
|
||||
|
||||
</Layout>
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user