From 3912262f4bb855237b799bd0078539c752a2b6aa Mon Sep 17 00:00:00 2001 From: Jens Cornelsen <79703163+IB-Cornelsen@users.noreply.github.com> Date: Tue, 15 Apr 2025 16:05:24 +0200 Subject: [PATCH] fix pdf Verbrauchsausweis gewerbe --- src/lib/pdf/pdfVerbrauchsausweisGewerbe.ts | 143 +++++++++++++++++---- 1 file changed, 121 insertions(+), 22 deletions(-) diff --git a/src/lib/pdf/pdfVerbrauchsausweisGewerbe.ts b/src/lib/pdf/pdfVerbrauchsausweisGewerbe.ts index 264f5c37..d97b83fc 100644 --- a/src/lib/pdf/pdfVerbrauchsausweisGewerbe.ts +++ b/src/lib/pdf/pdfVerbrauchsausweisGewerbe.ts @@ -4,7 +4,6 @@ import { Enums } from "#lib/server/prisma.js"; import * as fs from "fs" import moment from "moment"; import { PDFDocument, PDFFont, PDFImage, PDFPage, StandardFonts } from "pdf-lib"; -import { addCheckMark } from "./utils/checkbox.js"; import { addText } from "./utils/text.js"; import { addAnsichtsausweisLabel, addDatumGEG, addRegistriernummer } from "./utils/helpers.js"; import { getS3File } from "#lib/s3.js"; @@ -112,30 +111,80 @@ export async function pdfVerbrauchsausweisGewerbe(ausweis: VerbrauchsausweisGewe if (aufnahme.lueftung === Enums.Lueftungskonzept.Fensterlueftung) { - addCheckMark(pages[0], 213, height - 334) + pages[0].drawText("x", { + x: 214, + y: height - 342, + size: 10, + font: bold + }) } else if (aufnahme.lueftung === Enums.Lueftungskonzept.Schachtlueftung) { - addCheckMark(pages[0], 213, height - 345) + pages[0].drawText("x", { + x: 214, + y: height - 353, + size: 10, + font: bold + }) } else if (aufnahme.lueftung === Enums.Lueftungskonzept.LueftungsanlageMitWaermerueckgewinnung) { - addCheckMark(pages[0], 355, height - 334) + pages[0].drawText("x", { + x: 356, + y: height - 342, + size: 10, + font: bold + }) } else if (aufnahme.lueftung === Enums.Lueftungskonzept.LueftungsanlageOhneWaermerueckgewinnung) { - addCheckMark(pages[0], 355, height - 345) + pages[0].drawText("x", { + x: 356, + y: height - 353, + size: 10, + font: bold + }) } // Kühlung if (aufnahme.kuehlung) { - addCheckMark(pages[0], 213, height - 362.5) + pages[0].drawText("x", { + x: 214, + y: height - 370.5, + size: 10, + font: bold + }) } else { - addCheckMark(pages[0], 355, height - 373.5) + pages[0].drawText("x", { + x: 356, + y: height - 381.5, + size: 10, + font: bold + }) } if (ausweis.ausstellgrund === Enums.Ausstellgrund.Neubau) { - addCheckMark(pages[0], 213, height - 406) + pages[0].drawText("x", { + x: 214, + y: height - 414, + size: 10, + font: bold + }) } else if (ausweis.ausstellgrund === Enums.Ausstellgrund.Vermietung) { - addCheckMark(pages[0], 213, height - 417) + pages[0].drawText("x", { + x: 214, + y: height - 425, + size: 10, + font: bold + }) } else if (ausweis.ausstellgrund === Enums.Ausstellgrund.Modernisierung) { - addCheckMark(pages[0], 344.5, height - 406) + pages[0].drawText("x", { + x: 345.5, + y: height - 414, + size: 10, + font: bold + }) } else if (ausweis.ausstellgrund === Enums.Ausstellgrund.Sonstiges) { - addCheckMark(pages[0], 463, height - 417) + pages[0].drawText("x", { + x: 464, + y: height - 425, + size: 10, + font: bold + }) } // Aushangpflicht // addCheckMark(pages[0], 463, height - 406) @@ -161,11 +210,21 @@ export async function pdfVerbrauchsausweisGewerbe(ausweis: VerbrauchsausweisGewe } } - // Checkmark Angabe energetische Qualität des Gebäudes. - addCheckMark(pages[0], 40, height - 550) + // Checkmark Verbrauchsausweis. + pages[0].drawText("x", { + x: 41, + y: height - 558, + size: 10, + font: bold + }) // Datenerhebung durch Eigentümer - addCheckMark(pages[0], 295, height - 580) + pages[0].drawText("x", { + x: 296, + y: height - 588, + size: 10, + font: bold + }) // Ausstellungsdatum pages[0].drawText(moment().format("DD.MM.YYYY"), { @@ -425,35 +484,75 @@ export async function pdfVerbrauchsausweisGewerbe(ausweis: VerbrauchsausweisGewe addEnergieverbrauchSkalaPfeile(pages[2]) if (ausweis.warmwasser_enthalten) { - addCheckMark(pages[2], 41, height - 293) + pages[0].drawText("x", { + x: 42, + y: height - 301, + size: 10, + font: bold + }) } if (ausweis.kuehlung_enthalten) { - addCheckMark(pages[2], 41, height - 305) + pages[0].drawText("x", { + x: 42, + y: height - 313, + size: 10, + font: bold + }) } if (ausweis.stromverbrauch_enthaelt_heizung) { - addCheckMark(pages[2], 41, height - 456) + pages[0].drawText("x", { + x: 42, + y: height - 464, + size: 10, + font: bold + }) } if (ausweis.stromverbrauch_enthaelt_warmwasser) { - addCheckMark(pages[2], 131, height - 456) + pages[0].drawText("x", { + x: 132, + y: height - 464, + size: 10, + font: bold + }) } if (ausweis.stromverbrauch_enthaelt_lueftung) { - addCheckMark(pages[2], 218, height - 456) + pages[0].drawText("x", { + x: 219, + y: height - 464, + size: 10, + font: bold + }) } if (ausweis.stromverbrauch_enthaelt_beleuchtung) { - addCheckMark(pages[2], 281, height - 456) + pages[0].drawText("x", { + x: 282, + y: height - 464, + size: 10, + font: bold + }) } if (ausweis.stromverbrauch_enthaelt_kuehlung) { - addCheckMark(pages[2], 422, height - 456) + pages[0].drawText("x", { + x: 423, + y: height - 464, + size: 10, + font: bold + }) } if (ausweis.stromverbrauch_enthaelt_sonstige) { - addCheckMark(pages[2], 492, height - 456) + pages[0].drawText("x", { + x: 493, + y: height - 464, + size: 10, + font: bold + }) } addText(pages[2], berechnungen?.primaerEnergieVerbrauchGesamt.toString() || "", 475, height - 637, 10, font)