- **Parser Implementation:** - Introduced `ZnsBewerbParser` to parse n2-XXXXX.dat files and map B-Satz lines to the `ZnsBewerb` domain model. - Added test coverage for parsing B-Satz lines and edge cases in `ZnsParserTest`. - **Frontend Integration:** - Integrated ZNS import functionality into the `BewerbeTabContent` for uploading and previewing Bewerb data before import. - Enhanced `BewerbViewModel` with state and intents for managing ZNS import, preview dialogs, and import confirmation. - Supported start list generation and added modal for previewing generated start lists. - **Domain Services:** - Implemented `StartlistenService` to generate and calculate start times for start lists with respect to participant preferences. - Added extensive test coverage in `StartlistenServiceTest` to validate sorting, preferences, and time calculations. - **UI Enhancements:** - Updated `Bewerbe` tab layout with search, filtering, and action buttons for ZNS import and start list generation. - Introduced dialogs for ZNS import previews and start list previews.
37 lines
1.3 KiB
Plaintext
37 lines
1.3 KiB
Plaintext
/**
|
|
* Feature-Modul: Turnier-Verwaltung (Desktop-only)
|
|
* Kapselt alle Screens und Tabs für Turnier-Detail, -Neuanlage und alle Turnier-Tabs
|
|
* (Stammdaten, Organisation, Bewerbe, Artikel, Abrechnung, Nennungen, Startlisten, Ergebnislisten).
|
|
*/
|
|
plugins {
|
|
alias(libs.plugins.kotlinMultiplatform)
|
|
alias(libs.plugins.composeMultiplatform)
|
|
alias(libs.plugins.composeCompiler)
|
|
}
|
|
group = "at.mocode.clients"
|
|
version = "1.0.0"
|
|
kotlin {
|
|
jvm()
|
|
sourceSets {
|
|
jvmMain.dependencies {
|
|
implementation(projects.frontend.core.designSystem)
|
|
implementation(projects.frontend.core.domain)
|
|
implementation(projects.frontend.core.network)
|
|
implementation(projects.frontend.core.navigation)
|
|
implementation(project(":core:zns-parser"))
|
|
implementation(compose.desktop.currentOs)
|
|
implementation(compose.foundation)
|
|
implementation(compose.runtime)
|
|
implementation(compose.material3)
|
|
implementation(compose.ui)
|
|
implementation(compose.materialIconsExtended)
|
|
implementation(libs.bundles.kmp.common)
|
|
implementation(libs.koin.core)
|
|
implementation(libs.koin.compose)
|
|
implementation(libs.koin.compose.viewmodel)
|
|
// Ktor client for repository implementation
|
|
implementation(libs.ktor.client.core)
|
|
}
|
|
}
|
|
}
|