Files
meldestelle/server/src/main/kotlin/at/mocode/tables/domaene/DomPferdTable.kt
T

51 lines
2.4 KiB
Kotlin

package at.mocode.tables.domaene
import at.mocode.enums.DatenQuelleE
import at.mocode.enums.PferdeGeschlechtE
import at.mocode.tables.stammdaten.PersonenTable
import at.mocode.tables.stammdaten.VereineTable
import org.jetbrains.exposed.sql.Table
import org.jetbrains.exposed.sql.kotlin.datetime.timestamp
object DomPferdTable : Table("dom_pferde") {
val pferdId = uuid("pferd_id")
val oepsSatzNrPferd = varchar("oeps_satz_nr_pferd", 15).uniqueIndex().nullable()
val oepsKopfNr = varchar("oeps_kopf_nr", 10).nullable()
val name = varchar("name", 255)
val lebensnummer = varchar("lebensnummer", 20).nullable()
val feiPassNr = varchar("fei_pass_nr", 20).nullable()
val geburtsjahr = integer("geburtsjahr").nullable()
val geschlecht = enumerationByName("geschlecht", 20, PferdeGeschlechtE::class).nullable()
val farbe = varchar("farbe", 50).nullable()
val rasse = varchar("rasse", 100).nullable()
val abstammungVaterName = varchar("abstammung_vater_name", 255).nullable()
val abstammungMutterName = varchar("abstammung_mutter_name", 255).nullable()
val abstammungMutterVaterName = varchar("abstammung_mutter_vater_name", 255).nullable()
val abstammungZusatzInfo = text("abstammung_zusatz_info").nullable()
val besitzerPersonId = uuid("besitzer_person_id").references(PersonenTable.id).nullable()
val verantwortlichePersonId = uuid("verantwortliche_person_id").references(PersonenTable.id).nullable()
val heimatVereinId = uuid("heimat_verein_id").references(VereineTable.id).nullable()
val letzteZahlungPferdegebuehrJahrOeps = integer("letzte_zahlung_pferdegebuehr_jahr_oeps").nullable()
val stockmassCm = integer("stockmass_cm").nullable()
val datenQuelle = enumerationByName("daten_quelle", 20, DatenQuelleE::class).default(DatenQuelleE.MANUELL)
val istAktiv = bool("ist_aktiv").default(true)
val notizenIntern = text("notizen_intern").nullable()
val createdAt = timestamp("created_at")
val updatedAt = timestamp("updated_at")
override val primaryKey = PrimaryKey(pferdId)
init {
index(false, name)
index(false, oepsSatzNrPferd)
index(false, lebensnummer)
index(false, besitzerPersonId)
index(false, verantwortlichePersonId)
index(false, heimatVereinId)
index(false, rasse)
index(false, geburtsjahr)
index(false, istAktiv)
index(false, datenQuelle)
}
}