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.Table
|
||||||
import org.jetbrains.exposed.v1.core.java.javaUUID
|
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
|
import org.jetbrains.exposed.v1.datetime.timestamp
|
||||||
|
|
||||||
object BewerbTable : Table("bewerbe") {
|
object BewerbTable : Table("bewerbe") {
|
||||||
val id = javaUUID("id").autoGenerate()
|
val id = javaUUID("id").autoGenerate()
|
||||||
val turnierId = javaUUID("turnier_id")
|
val turnierId = javaUUID("turnier_id")
|
||||||
val klasse = varchar("klasse", 50)
|
val klasse = varchar("klasse", 50)
|
||||||
val hoeheCm = integer("hoehe_cm").nullable()
|
val hoeheCm = integer("hoehe_cm").nullable()
|
||||||
val bezeichnung = text("bezeichnung")
|
val bezeichnung = text("bezeichnung")
|
||||||
val createdAt = timestamp("created_at")
|
|
||||||
val updatedAt = timestamp("updated_at")
|
// 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)
|
override val primaryKey = PrimaryKey(id)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user