Extend Bewerb table and add BewerbRichterEinsatz table: introduce new properties, indexes, and mappings to support richer domain model and scheduling capabilities.
This commit is contained in:
+18
@@ -0,0 +1,18 @@
|
||||
package at.mocode.entries.service.persistence
|
||||
|
||||
import org.jetbrains.exposed.v1.core.Table
|
||||
import org.jetbrains.exposed.v1.core.java.javaUUID
|
||||
|
||||
object BewerbRichterEinsatzTable : Table("bewerb_richter_einsaetze") {
|
||||
val id = javaUUID("id").autoGenerate()
|
||||
val bewerbId = javaUUID("bewerb_id").references(BewerbTable.id)
|
||||
val funktionaerId = javaUUID("funktionaer_id")
|
||||
val position = varchar("position", 100)
|
||||
|
||||
override val primaryKey = PrimaryKey(id)
|
||||
|
||||
init {
|
||||
index(false, bewerbId)
|
||||
index(false, funktionaerId)
|
||||
}
|
||||
}
|
||||
+35
-7
@@ -2,16 +2,44 @@ package at.mocode.entries.service.persistence
|
||||
|
||||
import org.jetbrains.exposed.v1.core.Table
|
||||
import org.jetbrains.exposed.v1.core.java.javaUUID
|
||||
import org.jetbrains.exposed.v1.datetime.date
|
||||
import org.jetbrains.exposed.v1.datetime.time
|
||||
import org.jetbrains.exposed.v1.datetime.timestamp
|
||||
|
||||
object BewerbTable : Table("bewerbe") {
|
||||
val id = javaUUID("id").autoGenerate()
|
||||
val turnierId = javaUUID("turnier_id")
|
||||
val klasse = varchar("klasse", 50)
|
||||
val hoeheCm = integer("hoehe_cm").nullable()
|
||||
val bezeichnung = text("bezeichnung")
|
||||
val createdAt = timestamp("created_at")
|
||||
val updatedAt = timestamp("updated_at")
|
||||
val id = javaUUID("id").autoGenerate()
|
||||
val turnierId = javaUUID("turnier_id")
|
||||
val klasse = varchar("klasse", 50)
|
||||
val hoeheCm = integer("hoehe_cm").nullable()
|
||||
val bezeichnung = text("bezeichnung")
|
||||
|
||||
// Abteilungs-Konfiguration
|
||||
val teilungsTyp = varchar("teilungs_typ", 50).nullable()
|
||||
|
||||
// Text & Details
|
||||
val beschreibung = text("beschreibung").nullable()
|
||||
val aufgabe = varchar("aufgabe", 100).nullable()
|
||||
val aufgabenNummer = varchar("aufgaben_nummer", 50).nullable()
|
||||
val paraGrade = varchar("para_grade", 50).nullable()
|
||||
|
||||
// Ort & Funktionäre
|
||||
val austragungsplatzId = javaUUID("austragungsplatz_id").nullable()
|
||||
|
||||
// Zeitplan
|
||||
val geplantesDatum = date("geplantes_datum").nullable()
|
||||
val beginnZeitTyp = varchar("beginn_zeit_typ", 20).nullable()
|
||||
val beginnZeit = time("beginn_zeit").nullable()
|
||||
val reitdauerMinuten = integer("reitdauer_minuten").nullable()
|
||||
val umbauMinuten = integer("umbau_minuten").nullable()
|
||||
val besichtigungMinuten = integer("besichtigung_minuten").nullable()
|
||||
val stechenGeplant = bool("stechen_geplant").default(false)
|
||||
|
||||
// Finanzen
|
||||
val startgeldCent = long("startgeld_cent").nullable()
|
||||
val geldpreisAusbezahlt = bool("geldpreis_ausbezahlt").default(false)
|
||||
|
||||
val createdAt = timestamp("created_at")
|
||||
val updatedAt = timestamp("updated_at")
|
||||
|
||||
override val primaryKey = PrimaryKey(id)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user