51 lines
2.4 KiB
Kotlin
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)
|
|
}
|
|
}
|