DEFINE TABLE Aufnahme SCHEMAFULL;

DEFINE FIELD benutzer ON TABLE Aufnahme TYPE record<Benutzer>;
-- @zod.describe("Art des Gebäudes und seiner primären Nutzungsart")
DEFINE FIELD gebaeudetyp ON TABLE Aufnahme TYPE string;
-- @zod.describe("Betrachteter Teil des Gebäudes, z.B. Gesamtgebäude, Wohnteil, Gewerbeteil")
DEFINE FIELD gebaeudeteil ON TABLE Aufnahme TYPE string;
-- @zod.describe("Alle Jahre in denen das Gebäude konstruiert oder grundlegend verändert wurde")
DEFINE FIELD baujahr_gebaeude ON TABLE Aufnahme TYPE array<int>;
-- @zod.describe("Alle Jahre in denen die Heizung eingebaut oder grundlegend verändert wurde")
DEFINE FIELD baujahr_heizung ON TABLE Aufnahme TYPE array<int>;
-- @zod.describe("Alle Jahre in denen die Klimaanlage eingebaut oder grundlegend verändert wurde")
DEFINE FIELD baujahr_klima ON TABLE Aufnahme TYPE array<int>;
-- @zod.describe("Anzahl der (Wohn)Einheiten im Gebäude")
DEFINE FIELD einheiten ON TABLE Aufnahme TYPE option<int>;
-- @zod.describe("Wohnfläche bei Wohngebäuden, Nutzfläche bei Gewerbegebäuden")
DEFINE FIELD flaeche ON TABLE Aufnahme TYPE option<int>;
-- @zod.describe("(energetische) Nutzfläche des Gebäudes. Bei Gewerbegebäuden entspricht Sie der Nutzfläche")
DEFINE FIELD nutzflaeche ON TABLE Aufnahme TYPE option<int>;
-- @zod.describe("Falls das Gebäude energetisch saniert ist, sollte dieser Wert auf true stehen")
DEFINE FIELD saniert ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Ob ein Keller vorhanden, beheizt oder unbeheizt ist")
DEFINE FIELD keller ON TABLE Aufnahme TYPE "BEHEIZT" | "UNBEHEIZT" | "NICHT_VORHANDEN";
-- @zod.describe("Ob ein Dachgeschoss vorhanden, beheizt oder unbeheizt ist")
DEFINE FIELD dachgeschoss ON TABLE Aufnahme TYPE "BEHEIZT" | "UNBEHEIZT" | "NICHT_VORHANDEN";
-- @zod.describe("Art der Gebäudelüftung")
DEFINE FIELD lueftung ON TABLE Aufnahme TYPE "Fensterlueftung" | "Schachtlueftung" | "LueftungsanlageMitWaermerueckgewinnung" | "LueftungsanlageOhneWaermerueckgewinnung";
-- @zod.describe("Art der Gebäudekühlung")
DEFINE FIELD kuehlung ON TABLE Aufnahme TYPE option<string>;
-- @zod.describe("Prozentualer Leerstand des Gebäudes in einem durchschnittlichen Jahr")
DEFINE FIELD leerstand ON TABLE Aufnahme TYPE option<int>;

-- @zod.describe("Falls der Heizungsverbrauch alternative Energieversorgungssysteme beinhaltet sollte dieser Wert auf true stehen")
DEFINE FIELD alternative_heizung ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls der Warmwasserverbrauch alternative Energieversorgungssysteme beinhaltet sollte dieser Wert auf true stehen")
DEFINE FIELD alternative_warmwasser ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Lüftung alternative Energieversorgungssysteme beinhaltet sollte dieser Wert auf true stehen")
DEFINE FIELD alternative_lueftung ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Kühlung alternative Energieversorgungssysteme beinhaltet sollte dieser Wert auf true stehen")
DEFINE FIELD alternative_kuehlung ON TABLE Aufnahme TYPE option<bool>;

-- @zod.describe("Datum an dem der Kunde die Aufnahme erstellt hat")
DEFINE FIELD erstellungsdatum ON TABLE Aufnahme TYPE datetime DEFAULT time::now();

-- @zod.describe("Falls das Gebäude über eine Zentralbeheizung verfügt, sollte dieser Wert auf true stehen")
DEFINE FIELD zentralheizung ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Gebäude über ein Solarsystem für Warmwasser verfügt, sollte dieser Wert auf true stehen")
DEFINE FIELD solarsystem_warmwasser ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Warmwasserrohre des Gebäudes gedämmt sind, sollte dieser Wert auf true stehen")
DEFINE FIELD warmwasser_rohre_gedaemmt ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Gebäude über einen Niedertemperaturkessel verfügt, sollte dieser Wert auf true stehen")
DEFINE FIELD niedertemperatur_kessel ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Gebäude über einen Brennwertkessel verfügt, sollte dieser Wert auf true stehen")
DEFINE FIELD brennwert_kessel ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Heizungsrohre des Gebäudes gedämmt sind, sollte dieser Wert auf true stehen")
DEFINE FIELD heizungsrohre_gedaemmt ON TABLE Aufnahme TYPE option<bool>;
DEFINE FIELD standard_kessel ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Gebäude über eine Wärmepumpe verfügt, sollte dieser Wert auf true stehen")
DEFINE FIELD waermepumpe ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Gebäude über einen Raumtemperaturregler verfügt, sollte dieser Wert auf true stehen")
DEFINE FIELD raum_temperatur_regler ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Gebäude über eine Photovoltaikanlage verfügt, sollte dieser Wert auf true stehen")
DEFINE FIELD photovoltaik ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Gebäude über einen Durchlauferhitzer verfügt, sollte dieser Wert auf true stehen")
DEFINE FIELD durchlauf_erhitzer ON TABLE Aufnahme TYPE option<bool>;
DEFINE FIELD einzelofen ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Gebäude über eine Zirkulationspumpe verfügt, sollte dieser Wert auf true stehen")
DEFINE FIELD zirkulation ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Fenster des Gebäudes einfach gedämmt sind, sollte dieser Wert auf true stehen")
DEFINE FIELD einfach_verglasung ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Fenster des Gebäudes dreifach gedämmt sind, sollte dieser Wert auf true stehen")
DEFINE FIELD dreifach_verglasung ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Fenster des Gebäudes teilweise undicht sind, sollte dieser Wert auf true stehen")
DEFINE FIELD fenster_teilweise_undicht ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Fenster des Gebäudes doppelt gedämmt sind, sollte dieser Wert auf true stehen")
DEFINE FIELD doppel_verglasung ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Fenster des Gebäudes dicht sind, sollte dieser Wert auf true stehen")
DEFINE FIELD fenster_dicht ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Gebäude über gedämmte Rolllädenkästen verfügt, sollte dieser Wert auf true stehen")
DEFINE FIELD rolllaeden_kaesten_gedaemmt ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Fenster des Gebäudes isolier Verglasung haben, sollte dieser Wert auf true stehen")
DEFINE FIELD isolier_verglasung ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Türen des Gebäudes undicht sind, sollte dieser Wert auf true stehen")
DEFINE FIELD tueren_undicht ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Türen des Gebäudes dicht sind, sollte dieser Wert auf true stehen")
DEFINE FIELD tueren_dicht ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Dachgeschoss des Gebäudes gedämmt ist, sollte dieser Wert auf true stehen")
DEFINE FIELD dachgeschoss_gedaemmt ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Kellerdecke des Gebäudes gedämmt ist, sollte dieser Wert auf true stehen")
DEFINE FIELD keller_decke_gedaemmt ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Kellerwände des Gebäudes gedämmt sind, sollte dieser Wert auf true stehen")
DEFINE FIELD keller_wand_gedaemmt ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Außenwände des Gebäudes gedämmt sind, sollte dieser Wert auf true stehen")
DEFINE FIELD aussenwand_gedaemmt ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die oberste Geschossdecke des Gebäudes gedämmt ist, sollte dieser Wert auf true stehen")
DEFINE FIELD oberste_geschossdecke_gedaemmt ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die Außenwände des Gebäudes mindestens 12cm gedämmt sind, sollte dieser Wert auf true stehen")
DEFINE FIELD aussenwand_min_12cm_gedaemmt ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls das Dachgeschoss des Gebäudes mindestens 12cm gedämmt ist, sollte dieser Wert auf true stehen")
DEFINE FIELD dachgeschoss_min_12cm_gedaemmt ON TABLE Aufnahme TYPE option<bool>;
-- @zod.describe("Falls die oberste Geschossdecke des Gebäudes mindestens 12cm gedämmt ist, sollte dieser Wert auf true stehen")
DEFINE FIELD oberste_geschossdecke_min_12cm_gedaemmt ON TABLE Aufnahme TYPE option<bool>;

DEFINE FIELD events ON TABLE Aufnahme TYPE array<record<Event>>;
DEFINE FIELD bilder ON TABLE Aufnahme TYPE array<record<Bild>>;
DEFINE FIELD unterlagen ON TABLE Aufnahme TYPE array<record<Unterlage>>;



