
model BedarfsausweisWohnen {
  id                            Int                @id @default(autoincrement())
  uid                           String             @unique @default(dbgenerated("'baw-' || gen_random_uuid()"))
  benutzer_id                   Int?
  ausstellgrund						Ausstellgrund?
  registriernummer              String?            @db.VarChar

	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?            @db.VarChar
  decke_bauart                  String?            @db.VarChar
  dach_daemmung                 Float?
  decke_daemmung                Float?
  aussenwand_daemmung           Float?
  boden_daemmung                Float?
  aussenwand_bauart             String?            @db.VarChar
  boden_bauart                  String?            @db.VarChar
  warmwasser_verteilung         String?            @db.VarChar
  warmwasser_speicherung        String?            @db.VarChar
  warmwasser_erzeugung          String?            @db.VarChar
  heizung_zentral               Boolean?
  heizung_verteilung            String?            @db.VarChar
  heizung_speicherung           String?            @db.VarChar
  waerme_erzeugung_heizung      String?            @db.VarChar
  anteil_zusatzheizung          Float?
  kollektor_flaeche             Float?

	ausgestellt Boolean? @default(false)
		/// @zod.describe("Falls der Ausweis storniert wurde, sollte dieser Wert auf true stehen")
	storniert Boolean? @default(false)
	/// @zod.describe("Falls der Ausweis bestellt wurde, sollte dieser Wert auf true stehen")
	bestellt					Boolean?  @default(false)
	/// @zod.describe("Falls der Ausweis vom Aussteller zurückgestellt wurde, sollte dieser Wert auf true stehen")
	zurueckgestellt Boolean?  @default(false)
	/// @zod.describe("Durch den Kunden hinzugefügte Anmerkung zur Vorabprüfung")
	prueftext String? @db.VarChar(1000)

	beschreibung String? @db.Text

	/// @zod.describe("Ob bei der Anfrage der Registriernummer eine Kontrolldatei angefragt wurde")
	kontrolldatei_angefragt Boolean? @default(false)

  benutzer                      Benutzer?           @relation(fields: [benutzer_id], references: [id], onDelete: NoAction, onUpdate: NoAction)

		rechnung_id Int? @unique
	rechnung Rechnung? @relation(fields: [rechnung_id], references: [id], onDelete: NoAction, onUpdate: NoAction)

	/// @zod.describe("ID der korrespondierenden Gebäudeaufnahme")
	aufnahme_id        Int @unique
  aufnahme           Aufnahme @relation(fields: [aufnahme_id], references: [id], onDelete: NoAction, onUpdate: NoAction)
}
