105 lines
4.4 KiB
Kotlin
105 lines
4.4 KiB
Kotlin
package at.mocode.test
|
|
|
|
import at.mocode.model.veranstaltung.VeranstaltungsRahmen
|
|
import at.mocode.model.veranstaltung.Turnier_OEPS
|
|
import at.mocode.model.veranstaltung.Pruefung_OEPS
|
|
import at.mocode.model.veranstaltung.Pruefung_Abteilung
|
|
import at.mocode.enums.EventStatusE
|
|
import at.mocode.enums.SparteE
|
|
import at.mocode.enums.RegelwerkTypE
|
|
import at.mocode.enums.BeginnzeitTypE
|
|
import com.benasher44.uuid.uuid4
|
|
import kotlinx.datetime.LocalDate
|
|
|
|
/**
|
|
* Test script to verify the complete event management hierarchy:
|
|
* Veranstaltungen -> Turniere -> Bewerbe -> Abteilungen
|
|
*/
|
|
fun main() {
|
|
println("[DEBUG_LOG] Testing complete event management hierarchy...")
|
|
|
|
// 1. Create Veranstaltung (Event)
|
|
val veranstaltung = VeranstaltungsRahmen(
|
|
name = "Neumarkter Pferdesporttage 2025",
|
|
eventTypIntern = "StandardWochenende",
|
|
ortName = "Reitanlage Stroblmair",
|
|
ortStrasse = "Musterstraße 123",
|
|
ortPlz = "84494",
|
|
ortOrt = "Neumarkt",
|
|
datumVonGesamt = LocalDate(2025, 6, 14),
|
|
datumBisGesamt = LocalDate(2025, 6, 15),
|
|
status = EventStatusE.IN_PLANUNG
|
|
)
|
|
println("[DEBUG_LOG] ✓ Veranstaltung created: ${veranstaltung.name}")
|
|
|
|
// 2. Create Turnier (Tournament) within the event
|
|
val turnier = Turnier_OEPS(
|
|
veranstaltungsRahmenId = veranstaltung.veranstRahmenId,
|
|
oepsTurnierNr = "25319",
|
|
titel = "CSN-C NEU CSNP-C NEU NEUMARKT/M., OÖ",
|
|
hauptsparte = SparteE.SPRINGEN,
|
|
oetoKategorieStammdatenIds = listOf(uuid4(), uuid4()), // Mock category IDs
|
|
regelwerkTyp = RegelwerkTypE.OETO,
|
|
datumVon = LocalDate(2025, 6, 14),
|
|
datumBis = LocalDate(2025, 6, 15),
|
|
statusTurnier = EventStatusE.IN_PLANUNG
|
|
)
|
|
println("[DEBUG_LOG] ✓ Turnier created: ${turnier.titel}")
|
|
|
|
// 3. Create Bewerb (Competition) within the tournament
|
|
val bewerb = Pruefung_OEPS(
|
|
turnierOepsId = turnier.turnierOepsId,
|
|
oepsBewerbNrAnzeige = 12,
|
|
nameTextUebergeordnet = "Standardspringprüfung",
|
|
sparte = SparteE.SPRINGEN,
|
|
oepsKategorieStammdatumId = uuid4(), // Mock category ID
|
|
istDotiert = true,
|
|
erfordertAbteilungsAuswahlFuerNennung = true,
|
|
standardDatum = LocalDate(2025, 6, 14),
|
|
standardBeginnzeitTyp = BeginnzeitTypE.FIX_UM,
|
|
anzahlAbteilungen = 2
|
|
)
|
|
println("[DEBUG_LOG] ✓ Bewerb created: ${bewerb.nameTextUebergeordnet} (Nr. ${bewerb.oepsBewerbNrAnzeige})")
|
|
|
|
// 4. Create Abteilungen (Divisions) within the competition
|
|
val abteilung1 = Pruefung_Abteilung(
|
|
pruefungDbId = bewerb.pruefungDbId,
|
|
abteilungsKennzeichen = "1",
|
|
bezeichnungOeffentlich = "Lizenzklasse A",
|
|
teilKritMinPferdealter = 5,
|
|
teilKritMaxPferdealter = 12,
|
|
istAktivFuerNennung = true,
|
|
platzId = null,
|
|
datum = LocalDate(2025, 6, 14)
|
|
)
|
|
|
|
val abteilung2 = Pruefung_Abteilung(
|
|
pruefungDbId = bewerb.pruefungDbId,
|
|
abteilungsKennzeichen = "2",
|
|
bezeichnungOeffentlich = "Lizenzklasse L",
|
|
teilKritMinPferdealter = 6,
|
|
teilKritMaxPferdealter = 15,
|
|
istAktivFuerNennung = true,
|
|
platzId = null,
|
|
datum = LocalDate(2025, 6, 14)
|
|
)
|
|
|
|
println("[DEBUG_LOG] ✓ Abteilung 1 created: ${abteilung1.bezeichnungOeffentlich}")
|
|
println("[DEBUG_LOG] ✓ Abteilung 2 created: ${abteilung2.bezeichnungOeffentlich}")
|
|
|
|
// 5. Verify the complete hierarchy
|
|
println("\n[DEBUG_LOG] === COMPLETE EVENT MANAGEMENT HIERARCHY ===")
|
|
println("[DEBUG_LOG] 📅 Veranstaltung: ${veranstaltung.name}")
|
|
println("[DEBUG_LOG] └── 🏆 Turnier: ${turnier.titel} (${turnier.oepsTurnierNr})")
|
|
println("[DEBUG_LOG] └── 🎯 Bewerb: ${bewerb.nameTextUebergeordnet} (Nr. ${bewerb.oepsBewerbNrAnzeige})")
|
|
println("[DEBUG_LOG] ├── 📊 Abteilung: ${abteilung1.abteilungsKennzeichen} - ${abteilung1.bezeichnungOeffentlich}")
|
|
println("[DEBUG_LOG] └── 📊 Abteilung: ${abteilung2.abteilungsKennzeichen} - ${abteilung2.bezeichnungOeffentlich}")
|
|
|
|
println("\n[DEBUG_LOG] ✅ Event management system is COMPLETE and functional!")
|
|
println("[DEBUG_LOG] All hierarchical levels implemented:")
|
|
println("[DEBUG_LOG] - ✅ Veranstaltungen (Events)")
|
|
println("[DEBUG_LOG] - ✅ Turniere (Tournaments)")
|
|
println("[DEBUG_LOG] - ✅ Bewerbe (Competitions)")
|
|
println("[DEBUG_LOG] - ✅ Abteilungen (Divisions/Classes)")
|
|
}
|