Files
online-energieausweis/dbml/schema.dbml
Moritz Utcke 4979a1d112 Fehler gefixt
2025-03-10 20:11:57 -03:00

721 lines
29 KiB
Plaintext

//// ------------------------------------------------------
//// THIS FILE WAS AUTOMATICALLY GENERATED (DO NOT MODIFY)
//// ------------------------------------------------------
Project "IBCornelsen Database" {
database_type: 'PostgreSQL'
Note: ''
}
Table Anteilshaber {
id Int [pk, increment]
benutzer_id Int [not null]
rolle String
privilegien BigInt
uid String [unique, not null]
benutzer benutzer [not null]
objekt_id Int [not null]
objekt Objekt [not null]
}
Table ApiRequests {
id Int [pk, increment]
date DateTime [default: `now()`, not null]
ip String [not null]
method String [not null]
path String [not null]
status Int [not null]
responseTime Float [not null]
responseSize Int [not null]
userAgent String [not null]
user_id Int
user benutzer
}
Table Aufnahme {
id Int [pk, increment]
uid String [unique, not null, note: '@zod.describe("UID der Gebäude Aufnahme")']
benutzer_id Int
benutzer benutzer
ausweisart Ausweisart [note: '@zod.describe("Art des korrespondierenden Ausweises, wie z.B. VerbrauchsausweisWohnen")']
gebaeudetyp String [note: '@zod.describe("Art des Gebäudes und seiner primären Nutzungsart")']
gebaeudeteil String [note: '@zod.describe("Betrachteter Teil des Gebäudes, z.B. Gesamtgebäude, Wohnteil, Gewerbeteil")']
baujahr_gebaeude Int[] [not null, note: '@zod.describe("Alle Jahre in denen das Gebäude konstruiert oder grundlegend verändert wurde")']
baujahr_heizung Int[] [not null, note: '@zod.describe("Alle Jahre in denen die Heizung eingebaut oder grundlegend verändert wurde")']
baujahr_klima Int[] [not null, note: '@zod.describe("Alle Jahre in denen die Klimaanlage eingebaut oder grundlegend verändert wurde")']
einheiten Int [note: '@zod.describe("Anzahl der (Wohn)Einheiten im Gebäude")']
flaeche Int [note: '@zod.describe("Wohnfläche bei Wohngebäuden, Nutzfläche bei Gewerbegebäuden")']
nutzflaeche Int [note: '@zod.describe("(energetische) Nutzfläche des Gebäudes. Bei Gewerbegebäuden entspricht Sie der Nutzfläche")']
saniert Boolean [note: '@zod.describe("Falls das Gebäude energetisch saniert ist, sollte dieser Wert auf true stehen")']
keller Heizungsstatus [note: '@zod.describe("Ob ein Keller vorhanden, beheizt oder unbeheizt ist")']
dachgeschoss Heizungsstatus [note: '@zod.describe("Ob ein Dachgeschoss vorhanden, beheizt oder unbeheizt ist")']
lueftung Lueftungskonzept [note: '@zod.describe("Art der Gebäudelüftung")']
kuehlung String [note: '@zod.describe("Art der Gebäudekühlung")']
leerstand Int [note: '@zod.describe("Prozentualer Leerstand des Gebäudes in einem durchschnittlichen Jahr")']
alternative_heizung Boolean [note: '@zod.describe("Falls der Heizungsverbrauch alternative Energieversorgungssysteme beinhaltet sollte dieser Wert auf true stehen")']
alternative_warmwasser Boolean [note: '@zod.describe("Falls der Warmwasserverbrauch alternative Energieversorgungssysteme beinhaltet sollte dieser Wert auf true stehen")']
alternative_lueftung Boolean [note: '@zod.describe("Falls die Lüftung alternative Energieversorgungssysteme beinhaltet sollte dieser Wert auf true stehen")']
alternative_kuehlung Boolean [note: '@zod.describe("Falls die Kühlung alternative Energieversorgungssysteme beinhaltet sollte dieser Wert auf true stehen")']
brennstoff_1 String [note: '@zod.describe("Genutzer Brennstoff der primären Energiequelle")']
brennstoff_2 String [note: '@zod.describe("Genutzer Brennstoff der sekundären Energiequelle")']
boxpruefung Boolean [default: false]
energieeffizienzklasse String [note: '@zod.describe("Die aus der Berechnung hervorgehende Energieeffizienzklasse des Gebäudes")']
erstellungsdatum DateTime [default: `now()`, note: '@zod.describe("Datum an dem der Kunde den Ausweis erstellt hat")']
ausstellungsdatum DateTime [note: '@zod.describe("Datum an dem der Aussteller den Ausweis ausgestellt hat")']
zentralheizung Boolean [note: '@zod.describe("Falls das Gebäude über eine Zentralbeheizung verfügt, sollte dieser Wert auf true stehen")']
solarsystem_warmwasser Boolean [note: '@zod.describe("Falls das Gebäude über ein Solarsystem für Warmwasser verfügt, sollte dieser Wert auf true stehen")']
warmwasser_rohre_gedaemmt Boolean [note: '@zod.describe("Falls die Warmwasserrohre des Gebäudes gedämmt sind, sollte dieser Wert auf true stehen")']
niedertemperatur_kessel Boolean [note: '@zod.describe("Falls das Gebäude über einen Niedertemperaturkessel verfügt, sollte dieser Wert auf true stehen")']
brennwert_kessel Boolean [note: '@zod.describe("Falls das Gebäude über einen Brennwertkessel verfügt, sollte dieser Wert auf true stehen")']
heizungsrohre_gedaemmt Boolean [note: '@zod.describe("Falls die Heizungsrohre des Gebäudes gedämmt sind, sollte dieser Wert auf true stehen")']
standard_kessel Boolean
waermepumpe Boolean [note: '@zod.describe("Falls das Gebäude über eine Wärmepumpe verfügt, sollte dieser Wert auf true stehen")']
raum_temperatur_regler Boolean [note: '@zod.describe("Falls das Gebäude über einen Raumtemperaturregler verfügt, sollte dieser Wert auf true stehen")']
photovoltaik Boolean [note: '@zod.describe("Falls das Gebäude über eine Photovoltaikanlage verfügt, sollte dieser Wert auf true stehen")']
durchlauf_erhitzer Boolean [note: '@zod.describe("Falls das Gebäude über einen Durchlauferhitzer verfügt, sollte dieser Wert auf true stehen")']
einzelofen Boolean
zirkulation Boolean [note: '@zod.describe("Falls das Gebäude über eine Zirkulationspumpe verfügt, sollte dieser Wert auf true stehen")']
einfach_verglasung Boolean [note: '@zod.describe("Falls die Fenster des Gebäudes einfach gedämmt sind, sollte dieser Wert auf true stehen")']
dreifach_verglasung Boolean [note: '@zod.describe("Falls die Fenster des Gebäudes dreifach gedämmt sind, sollte dieser Wert auf true stehen")']
fenster_teilweise_undicht Boolean [note: '@zod.describe("Falls die Fenster des Gebäudes teilweise undicht sind, sollte dieser Wert auf true stehen")']
doppel_verglasung Boolean [note: '@zod.describe("Falls die Fenster des Gebäudes doppelt gedämmt sind, sollte dieser Wert auf true stehen")']
fenster_dicht Boolean [note: '@zod.describe("Falls die Fenster des Gebäudes dicht sind, sollte dieser Wert auf true stehen")']
rolllaeden_kaesten_gedaemmt Boolean [note: '@zod.describe("Falls das Gebäude über gedämmte Rolllädenkästen verfügt, sollte dieser Wert auf true stehen")']
isolier_verglasung Boolean [note: '@zod.describe("Falls die Fenster des Gebäudes isolier Verglasung haben, sollte dieser Wert auf true stehen")']
tueren_undicht Boolean [note: '@zod.describe("Falls die Türen des Gebäudes undicht sind, sollte dieser Wert auf true stehen")']
tueren_dicht Boolean [note: '@zod.describe("Falls die Türen des Gebäudes dicht sind, sollte dieser Wert auf true stehen")']
dachgeschoss_gedaemmt Boolean [note: '@zod.describe("Falls das Dachgeschoss des Gebäudes gedämmt ist, sollte dieser Wert auf true stehen")']
keller_decke_gedaemmt Boolean [note: '@zod.describe("Falls die Kellerdecke des Gebäudes gedämmt ist, sollte dieser Wert auf true stehen")']
keller_wand_gedaemmt Boolean [note: '@zod.describe("Falls die Kellerwände des Gebäudes gedämmt sind, sollte dieser Wert auf true stehen")']
aussenwand_gedaemmt Boolean [note: '@zod.describe("Falls die Außenwände des Gebäudes gedämmt sind, sollte dieser Wert auf true stehen")']
oberste_geschossdecke_gedaemmt Boolean [note: '@zod.describe("Falls die oberste Geschossdecke des Gebäudes gedämmt ist, sollte dieser Wert auf true stehen")']
aussenwand_min_12cm_gedaemmt Boolean [note: '@zod.describe("Falls die Außenwände des Gebäudes mindestens 12cm gedämmt sind, sollte dieser Wert auf true stehen")']
dachgeschoss_min_12cm_gedaemmt Boolean [note: '@zod.describe("Falls das Dachgeschoss des Gebäudes mindestens 12cm gedämmt ist, sollte dieser Wert auf true stehen")']
oberste_geschossdecke_min_12cm_gedaemmt Boolean [note: '@zod.describe("Falls die oberste Geschossdecke des Gebäudes mindestens 12cm gedämmt ist, sollte dieser Wert auf true stehen")']
events Event [not null]
bilder Bild [not null]
unterlagen Unterlage [not null]
bedarfsausweise_wohnen BedarfsausweisWohnen [not null]
verbrauchsausweise_gewerbe VerbrauchsausweisGewerbe [not null]
verbrauchsausweise_wohnen VerbrauchsausweisWohnen [not null]
geg_nachweise_wohnen GEGNachweisWohnen [not null]
geg_nachweise_gewerbe GEGNachweisGewerbe [not null]
bedarfsausweise_gewerbe BedarfsausweisGewerbe [not null]
objekt_id Int [not null]
objekt Objekt [not null]
}
Table BedarfsausweisGewerbe {
id Int [pk, increment]
uid String [unique, not null]
benutzer_id Int [note: '@zod.describe("Die ID des Benutzers, welchem dieser Ausweis gehört")']
benutzer benutzer
aufnahme_id Int [unique, not null]
aufnahme Aufnahme [not null]
rechnung_id Int [unique]
rechnung Rechnung
geg_einpreisung_id Int [unique]
geg_einpreisung GEGEinpreisung
}
Table BedarfsausweisWohnen {
id Int [pk, increment]
uid String [unique, not null]
benutzer_id Int
ausstellgrund Ausstellgrund
registriernummer String
alternative_heizung Boolean
alternative_warmwasser Boolean
alternative_lueftung Boolean
alternative_kuehlung Boolean
anzahl_vollgeschosse Int
geschosshoehe Float
anzahl_gauben Int
breite_gauben Float
masse_a Float
masse_b Float
masse_c Float
masse_d Float
masse_e Float
masse_f Float
fensterflaeche_so_sw Float
fensterflaeche_nw_no Float
aussenwandflaeche_unbeheizt Float
dachflaeche Float
deckenflaeche Float
dach_u_wert Float
decke_u_wert Float
aussenwand_flaeche Float
aussenwand_u_wert Float
fussboden_flaeche Float
fussboden_u_wert Float
volumen Float
dicht Boolean
fenster_flaeche_1 Float
fenster_art_1 Float
fenster_flaeche_2 Float
fenster_art_2 Float
dachfenster_flaeche Float
dachfenster_art Float
haustuer_flaeche Float
haustuer_art Float
dach_bauart String
decke_bauart String
dach_daemmung Float
decke_daemmung Float
aussenwand_daemmung Float
boden_daemmung Float
aussenwand_bauart String
boden_bauart String
warmwasser_verteilung String
warmwasser_speicherung String
warmwasser_erzeugung String
heizung_zentral Boolean
heizung_verteilung String
heizung_speicherung String
waerme_erzeugung_heizung String
anteil_zusatzheizung Float
kollektor_flaeche Float
ausgestellt Boolean [default: false]
storniert Boolean [default: false, note: '@zod.describe("Falls der Ausweis storniert wurde, sollte dieser Wert auf true stehen")']
bestellt Boolean [default: false, note: '@zod.describe("Falls der Ausweis bestellt wurde, sollte dieser Wert auf true stehen")']
zurueckgestellt Boolean [default: false, note: '@zod.describe("Falls der Ausweis vom Aussteller zurückgestellt wurde, sollte dieser Wert auf true stehen")']
prueftext String [note: '@zod.describe("Durch den Kunden hinzugefügte Anmerkung zur Vorabprüfung")']
beschreibung String
kontrolldatei_angefragt Boolean [default: false, note: '@zod.describe("Ob bei der Anfrage der Registriernummer eine Kontrolldatei angefragt wurde")']
benutzer benutzer
rechnung_id Int [unique]
rechnung Rechnung
aufnahme_id Int [unique, not null, note: '@zod.describe("ID der korrespondierenden Gebäudeaufnahme")']
aufnahme Aufnahme [not null]
}
Table benutzer {
id Int [pk, increment]
uid String [unique, not null]
name String
vorname String
email String [unique, not null]
passwort String [not null]
profilbild String
plz String
ort String
adresse String
telefon String
anrede String
rolle BenutzerRolle [not null, default: 'USER']
firma String
lex_office_id String
verified Boolean [not null, default: false]
BedarfsausweisWohnen BedarfsausweisWohnen [not null]
documenttemplates documenttemplates [not null]
objekte Objekt [not null]
rechnungen Rechnung [not null]
tokens tokens [not null]
VerbrauchsausweisGewerbe VerbrauchsausweisGewerbe [not null]
VerbrauchsausweisWohnen VerbrauchsausweisWohnen [not null]
ApiRequests ApiRequests [not null]
RefreshTokens RefreshTokens [not null]
aufnahmen Aufnahme [not null]
geg_einpreisungen GEGEinpreisung [not null]
geg_nachweise_gewerbe GEGNachweisGewerbe [not null]
geg_nachweise_wohnen GEGNachweisWohnen [not null]
bedarfsausweise_gewerbe BedarfsausweisGewerbe [not null]
ErstellteTickets Tickets [not null]
BearbeiteteTickets Tickets [not null]
events Event [not null]
}
Table Bild {
id Int [pk, increment]
kategorie BilderKategorie [not null]
uid String [unique, not null]
aufnahme_id Int
aufnahme Aufnahme
}
Table Event {
id Int [pk, increment]
uid String [unique, not null]
date DateTime [default: `now()`, not null]
title String [not null]
description String
aufnahme_id Int [not null]
aufnahme Aufnahme [not null]
benutzer_id Int
benutzer benutzer
}
Table GEGEinpreisung {
id Int [pk, increment]
uid String [unique, not null]
empfaenger String
strasse String
plz String
ort String
zusatzzeile String
telefon String
email String
abweichende_versand_adresse Boolean [default: false]
versand_empfaenger String
versand_strasse String
versand_plz String
versand_ort String
versand_zusatzzeile String
status Einpreisungsstatus [not null]
geg_nachweis_wohnen GEGNachweisWohnen
geg_nachweis_gewerbe GEGNachweisGewerbe
bedarfsausweis_gewerbe BedarfsausweisGewerbe
benutzer_id Int [note: '@zod.describe("Die ID des Benutzers, der diese Einpreisung bekommt.")']
benutzer benutzer
}
Table GEGNachweisGewerbe {
id Int [pk, increment]
uid String [unique, not null]
ausstellgrund Ausstellgrund [note: '@zod.describe("Ausstellgrund wie z.B. Vermietung oder Verkauf")']
keller_beheizt Boolean [note: '@zod.describe("Falls der Keller des Gebäudes beheizt wird, sollte dieser Wert auf true stehen")']
storniert Boolean [default: false, note: '@zod.describe("Falls die Nachweisanfrage storniert wurde, sollte dieser Wert auf true stehen")']
bestellt Boolean [default: false, note: '@zod.describe("Falls der Nachweis bestellt wurde, sollte dieser Wert auf true stehen")']
zurueckgestellt Boolean [default: false, note: '@zod.describe("Falls der Nachweis vom Aussteller zurückgestellt wurde, sollte dieser Wert auf true stehen")']
beschreibung String [note: '@zod.describe("Beschreibung des Bauvorhabens")']
benutzer_id Int [note: '@zod.describe("Die ID des Benutzers, welchem dieser Ausweis gehört")']
benutzer benutzer
aufnahme_id Int [unique, not null]
aufnahme Aufnahme [not null]
rechnung_id Int [unique]
rechnung Rechnung
geg_einpreisung_id Int [unique]
geg_einpreisung GEGEinpreisung
}
Table GEGNachweisWohnen {
id Int [pk, increment]
uid String [unique, not null]
ausstellgrund Ausstellgrund [note: '@zod.describe("Ausstellgrund wie z.B. Vermietung oder Verkauf")']
keller_beheizt Boolean [note: '@zod.describe("Falls der Keller des Gebäudes beheizt wird, sollte dieser Wert auf true stehen")']
storniert Boolean [default: false, note: '@zod.describe("Falls die Nachweisanfrage storniert wurde, sollte dieser Wert auf true stehen")']
bestellt Boolean [default: false, note: '@zod.describe("Falls der Nachweis bestellt wurde, sollte dieser Wert auf true stehen")']
zurueckgestellt Boolean [default: false, note: '@zod.describe("Falls der Nachweis vom Aussteller zurückgestellt wurde, sollte dieser Wert auf true stehen")']
beschreibung String [note: '@zod.describe("Beschreibung des Bauvorhabens")']
benutzer_id Int [note: '@zod.describe("Die ID des Benutzers, welchem dieser Ausweis gehört")']
benutzer benutzer
aufnahme_id Int [unique, not null]
aufnahme Aufnahme [not null]
rechnung_id Int [unique]
rechnung Rechnung
geg_einpreisung_id Int [unique]
geg_einpreisung GEGEinpreisung
}
Table Klimafaktoren {
id Int [pk, increment]
plz String [not null]
month Int [not null]
year Int [not null]
klimafaktor Float [not null, default: 1]
indexes {
(plz, month, year) [unique]
}
}
Table Objekt {
id Int [pk, increment]
uid String [unique, not null]
benutzer_id Int
latitude Float
longitude Float
plz String [note: '@zod.describe("Postleitzahl des Gebäudes")']
ort String [note: '@zod.describe("Ort des Gebäudes")']
adresse String [note: '@zod.describe("Adresse (Straße und Hausnummer) des Gebäudes")']
erstellungsdatum DateTime [default: `now()`]
benutzer benutzer
aufnahmen Aufnahme [not null]
anteilshaber Anteilshaber [not null]
}
Table Postleitzahlen {
id Int [pk, increment]
plz String [not null]
stadt String [not null]
bundesland String [not null]
landkreis String [not null]
lat Float [not null]
lon Float [not null]
}
Table Rechnung {
id Int [pk, increment]
uid String [unique, not null]
benutzer_id Int [not null]
empfaenger String
strasse String
plz String
ort String
zusatzzeile String
telefon String
email String
abweichende_versand_adresse Boolean [default: false]
versand_empfaenger String
versand_strasse String
versand_plz String
versand_ort String
versand_zusatzzeile String
bezahlmethode Bezahlmethoden [not null]
status Rechnungsstatus [not null]
services Service[] [not null]
ausweistyp AusweisTyp [not null, default: 'Standard']
betrag Float [not null]
erstellt_am DateTime [default: `now()`, not null]
bezahlt_am DateTime
storniert_am DateTime
transaktions_referenz String [unique]
benutzer benutzer [not null]
verbrauchsausweis_wohnen VerbrauchsausweisWohnen
verbrauchsausweis_gewerbe VerbrauchsausweisGewerbe
bedarfsausweis_wohnen BedarfsausweisWohnen
bedarfsausweis_gewerbe BedarfsausweisGewerbe
geg_nachweis_gewerbe GEGNachweisGewerbe
geg_nachweis_wohnen GEGNachweisWohnen
}
Table RefreshTokens {
id Int [pk, increment]
benutzer_id Int [not null]
token String [unique, not null]
ip String [not null]
expiry DateTime [not null]
user benutzer [not null]
}
Table Tickets {
id Int [pk, increment]
uid String [unique, not null]
benutzer_id Int
created_at DateTime [default: `now()`, not null]
updated_at DateTime
deleted_at DateTime
status TicketStatus [not null, default: 'OFFEN']
titel String [not null]
beschreibung String [not null]
metadata Json
email String [not null]
bearbeiter_id Int
prioritaet Int [default: 0]
benutzer benutzer
bearbeiter benutzer
}
Table Unterlage {
id Int [pk, increment]
uid String [unique, not null]
name String
kategorie String
mime String
aufnahme_id Int
aufnahme Aufnahme
}
Table VerbrauchsausweisGewerbe {
id Int [pk, increment]
uid String [unique, not null]
benutzer_id Int
ausstellgrund Ausstellgrund
registriernummer String
zusaetzliche_heizquelle Boolean
brennstoff_1 String
einheit_1 String
brennstoff_2 String
einheit_2 String
startdatum DateTime
verbrauch_1 Int
verbrauch_2 Int
verbrauch_3 Int
verbrauch_4 Int
verbrauch_5 Int
verbrauch_6 Int
strom_1 Int
strom_2 Int
strom_3 Int
stromverbrauch_enthaelt_heizung Boolean
stromverbrauch_enthaelt_warmwasser Boolean
stromverbrauch_enthaelt_lueftung Boolean
stromverbrauch_enthaelt_beleuchtung Boolean
stromverbrauch_enthaelt_kuehlung Boolean
stromverbrauch_enthaelt_sonstige String
kuehlung_enthalten Boolean
anteil_kuehlung_1 Float
anteil_kuehlung_2 Float
keller_beheizt Boolean
alternative_heizung Boolean
alternative_warmwasser Boolean
alternative_lueftung Boolean
alternative_kuehlung Boolean
warmwasser_enthalten Boolean
warmwasser_anteil_bekannt Boolean [note: '@zod.describe("Falls der Warmwasser Anteil am Verbrauch bekannt ist, sollte dieser Wert auf true stehen")']
anteil_warmwasser_1 Float
anteil_warmwasser_2 Float
ausgestellt Boolean [default: false]
storniert Boolean [default: false, note: '@zod.describe("Falls der Ausweis storniert wurde, sollte dieser Wert auf true stehen")']
bestellt Boolean [default: false, note: '@zod.describe("Falls der Ausweis bestellt wurde, sollte dieser Wert auf true stehen")']
zurueckgestellt Boolean [default: false, note: '@zod.describe("Falls der Ausweis vom Aussteller zurückgestellt wurde, sollte dieser Wert auf true stehen")']
prueftext String [note: '@zod.describe("Durch den Kunden hinzugefügte Anmerkung zur Vorabprüfung")']
beschreibung String
kontrolldatei_angefragt Boolean [default: false, note: '@zod.describe("Ob bei der Anfrage der Registriernummer eine Kontrolldatei angefragt wurde")']
created_at DateTime [default: `now()`, not null]
updated_at DateTime [not null]
benutzer benutzer
rechnung_id Int [unique]
rechnung Rechnung
aufnahme_id Int [unique, not null, note: '@zod.describe("ID der korrespondierenden Gebäudeaufnahme")']
aufnahme Aufnahme [not null]
}
Table VerbrauchsausweisWohnen {
id Int [pk, increment]
uid String [unique, not null, note: '@zod.describe("UID des Ausweises")']
benutzer_id Int [note: '@zod.describe("Die ID des Benutzers, welchem dieser Ausweis gehört")']
ausstellgrund Ausstellgrund [note: '@zod.describe("Ausstellgrund wie z.B. Vermietung oder Verkauf")']
registriernummer String [note: '@zod.describe("Die Registriernummer des Ausweises")']
zusaetzliche_heizquelle Boolean [note: '@zod.describe("Falls eine sekundäre Heizquelle existiert, sollte dieser Wert auf true stehen")']
einheit_1 String [note: '@zod.describe("Einheit des Energieträgers der primären Heizquelle")']
einheit_2 String [note: '@zod.describe("Einheit des Energieträgers der sekundären Heizquelle")']
startdatum DateTime
verbrauch_1 Int [note: '@zod.describe("Energieverbrauch der primären Heizquelle im ersten der drei Verbrauchsjahre")']
verbrauch_2 Int [note: '@zod.describe("Energieverbrauch der primären Heizquelle im zweiten der drei Verbrauchsjahre")']
verbrauch_3 Int [note: '@zod.describe("Energieverbrauch der primären Heizquelle im letzten der drei Verbrauchsjahre")']
verbrauch_4 Int [note: '@zod.describe("Energieverbrauch der sekund̈́ären Heizquelle im ersten der drei Verbrauchsjahre")']
verbrauch_5 Int [note: '@zod.describe("Energieverbrauch der sekund̈́ären Heizquelle im zweiten der drei Verbrauchsjahre")']
verbrauch_6 Int [note: '@zod.describe("Energieverbrauch der sekund̈́ären Heizquelle im letzten der drei Verbrauchsjahre")']
warmwasser_enthalten Boolean [note: '@zod.describe("Falls Warmwasser im Verbrauchswert enthalten ist, sollte dieser Wert auf true stehen")']
warmwasser_anteil_bekannt Boolean [note: '@zod.describe("Falls der Warmwasser Anteil am Verbrauch bekannt ist, sollte dieser Wert auf true stehen")']
keller_beheizt Boolean [note: '@zod.describe("Falls der Keller des Gebäudes beheizt wird, sollte dieser Wert auf true stehen")']
faktorKeller Float [note: '@zod.describe("Der Faktor mit dem die Wohnfläche erhöht wird wenn die beheizte Gesamtfläche (energetische Nutzfläche) unbekannt ist.")']
alternative_heizung Boolean [note: '@zod.describe("Falls der Heizungsverbrauch alternative Energieversorgungssysteme beinhaltet, sollte dieser Wert auf true stehen.")']
alternative_warmwasser Boolean [note: '@zod.describe("Falls der Warmwasserverbrauch alternative Energieversorgungssysteme (z.B. Solarsystem, Wärmepumpe, etc.) beinhaltet, sollte dieser Wert auf true stehen.")']
alternative_lueftung Boolean [note: '@zod.describe("Falls die Lüftung alternative Energieversorgungssysteme beinhaltet sollte dieser Wert auf true stehen.")']
alternative_kuehlung Boolean [note: '@zod.describe("Falls die Kühlung alternative Energieversorgungssysteme beinhaltet sollte dieser Wert auf true stehen.")']
anteil_warmwasser_1 Float [note: '@zod.describe("Anteil des Warmwassers am Gesamtverbrauch der primären Energiequelle in Prozent")']
anteil_warmwasser_2 Float [note: '@zod.describe("Anteil des Warmwassers am Gesamtverbrauch der sekundären Energiequelle in Prozent")']
ausgestellt Boolean [default: false]
storniert Boolean [default: false, note: '@zod.describe("Falls der Ausweis storniert wurde, sollte dieser Wert auf true stehen")']
bestellt Boolean [default: false, note: '@zod.describe("Falls der Ausweis bestellt wurde, sollte dieser Wert auf true stehen")']
zurueckgestellt Boolean [default: false, note: '@zod.describe("Falls der Ausweis vom Aussteller zurückgestellt wurde, sollte dieser Wert auf true stehen")']
prueftext String [note: '@zod.describe("Durch den Kunden hinzugefügte Anmerkung zur Vorabprüfung")']
beschreibung String
kontrolldatei_angefragt Boolean [default: false, note: '@zod.describe("Ob bei der Anfrage der Registriernummer eine Kontrolldatei angefragt wurde")']
created_at DateTime [default: `now()`, not null]
updated_at DateTime [not null]
benutzer benutzer
rechnung_id Int [unique]
rechnung Rechnung
aufnahme_id Int [unique, not null, note: '@zod.describe("ID der korrespondierenden Gebäudeaufnahme")']
aufnahme Aufnahme [not null]
}
Table documenttemplates {
id Int [pk, increment]
name String [not null]
shortdescription String [not null]
longdescription String [not null]
user_id Int [not null]
is_private Boolean [not null, default: true]
documenttype Int [not null]
filename String [not null]
created_at DateTime [default: `now()`, not null]
updated_at DateTime [default: `now()`, not null]
benutzer benutzer [not null]
documenttypes documenttypes [not null]
}
Table documenttypes {
id Int [pk, increment]
name String [not null]
shortdescription String [not null]
longdescription String [not null]
documenttemplates documenttemplates [not null]
}
Table tokens {
id Int [pk, increment]
token String [not null]
user_id Int [not null]
date_created DateTime [default: `now()`, not null]
last_used DateTime [default: `now()`, not null]
times_used Int [not null, default: 0]
permissions Int [not null, default: 0]
benutzer benutzer [not null]
}
Enum Heizungsstatus {
BEHEIZT
UNBEHEIZT
NICHT_VORHANDEN
}
Enum Lueftungskonzept {
Fensterlueftung
Schachtlueftung
LueftungsanlageMitWaermerueckgewinnung
LueftungsanlageOhneWaermerueckgewinnung
}
Enum BenutzerRolle {
USER
ADMIN
}
Enum BilderKategorie {
Heizung
Fenster
Gebaeude
Daemmung
}
Enum Einpreisungsstatus {
open
canceled
pending
expired
}
Enum Bezahlmethoden {
paypal
giropay
sofort
creditcard
rechnung
}
Enum Rechnungsstatus {
open
canceled
pending
authorized
expired
failed
paid
}
Enum AusweisTyp {
Standard
Beratung
Offline
}
Enum TicketStatus {
OFFEN
IN_BEARBEITUNG
IN_WARTESCHLEIFE
GESCHLOSSEN
GELOEST
}
Enum UnterlagenKategorie {
Grundriss
Sonstiges
}
Enum Ausstellgrund {
Neubau
Vermietung
Verkauf
Modernisierung
Sonstiges
}
Enum Ausweisart {
VerbrauchsausweisWohnen
VerbrauchsausweisGewerbe
BedarfsausweisWohnen
BedarfsausweisGewerbe
GEGNachweisWohnen
GEGNachweisBedarfsausweis
GEGNachweisGewerbe
}
Enum Service {
Telefonberatung
Aushang
Qualitaetsdruck
SameDay
}
Ref: Anteilshaber.benutzer_id - benutzer.id [delete: No Action]
Ref: Anteilshaber.objekt_id > Objekt.id [delete: No Action]
Ref: ApiRequests.user_id > benutzer.id [delete: No Action]
Ref: Aufnahme.benutzer_id > benutzer.id [delete: No Action]
Ref: Aufnahme.objekt_id > Objekt.id [delete: No Action]
Ref: BedarfsausweisGewerbe.benutzer_id > benutzer.id [delete: No Action]
Ref: BedarfsausweisGewerbe.aufnahme_id > Aufnahme.id [delete: No Action]
Ref: BedarfsausweisGewerbe.rechnung_id - Rechnung.id [delete: No Action]
Ref: BedarfsausweisGewerbe.geg_einpreisung_id - GEGEinpreisung.id [delete: No Action]
Ref: BedarfsausweisWohnen.benutzer_id > benutzer.id [delete: No Action]
Ref: BedarfsausweisWohnen.rechnung_id - Rechnung.id [delete: No Action]
Ref: BedarfsausweisWohnen.aufnahme_id > Aufnahme.id [delete: No Action]
Ref: Bild.aufnahme_id > Aufnahme.id [delete: No Action]
Ref: Event.aufnahme_id > Aufnahme.id [delete: No Action]
Ref: Event.benutzer_id > benutzer.id [delete: No Action]
Ref: GEGEinpreisung.benutzer_id > benutzer.id [delete: No Action]
Ref: GEGNachweisGewerbe.benutzer_id > benutzer.id [delete: No Action]
Ref: GEGNachweisGewerbe.aufnahme_id > Aufnahme.id [delete: No Action]
Ref: GEGNachweisGewerbe.rechnung_id - Rechnung.id [delete: No Action]
Ref: GEGNachweisGewerbe.geg_einpreisung_id - GEGEinpreisung.id [delete: No Action]
Ref: GEGNachweisWohnen.benutzer_id > benutzer.id [delete: No Action]
Ref: GEGNachweisWohnen.aufnahme_id > Aufnahme.id [delete: No Action]
Ref: GEGNachweisWohnen.rechnung_id - Rechnung.id [delete: No Action]
Ref: GEGNachweisWohnen.geg_einpreisung_id - GEGEinpreisung.id [delete: No Action]
Ref: Objekt.benutzer_id > benutzer.id
Ref: Rechnung.benutzer_id > benutzer.id [delete: No Action]
Ref: RefreshTokens.benutzer_id > benutzer.id [delete: Cascade]
Ref: Tickets.benutzer_id > benutzer.id
Ref: Tickets.bearbeiter_id > benutzer.id
Ref: Unterlage.aufnahme_id > Aufnahme.id [delete: No Action]
Ref: VerbrauchsausweisGewerbe.benutzer_id > benutzer.id [delete: No Action]
Ref: VerbrauchsausweisGewerbe.rechnung_id - Rechnung.id [delete: No Action]
Ref: VerbrauchsausweisGewerbe.aufnahme_id > Aufnahme.id [delete: No Action]
Ref: VerbrauchsausweisWohnen.benutzer_id > benutzer.id [delete: No Action]
Ref: VerbrauchsausweisWohnen.rechnung_id - Rechnung.id [delete: No Action]
Ref: VerbrauchsausweisWohnen.aufnahme_id > Aufnahme.id [delete: No Action]
Ref: documenttemplates.user_id > benutzer.id [delete: Cascade]
Ref: documenttemplates.documenttype > documenttypes.id [delete: Cascade]
Ref: tokens.user_id > benutzer.id [delete: No Action]