chore: entferne nicht genutzte NennungsMaske-Komponente, extrahiere AktionsButtonLeiste in separaten Komponentenordner
This commit is contained in:
+98
@@ -0,0 +1,98 @@
|
||||
package at.mocode.desktop.repository
|
||||
|
||||
import at.mocode.desktop.data.Funktionaer
|
||||
import at.mocode.desktop.data.Pferd
|
||||
import at.mocode.desktop.data.Reiter
|
||||
import at.mocode.desktop.data.Store
|
||||
import at.mocode.desktop.data.Verein
|
||||
import at.mocode.frontend.core.domain.repository.MasterdataRepository
|
||||
import at.mocode.frontend.core.domain.zns.ZnsRemoteFunktionaer
|
||||
import at.mocode.frontend.core.domain.zns.ZnsRemotePferd
|
||||
import at.mocode.frontend.core.domain.zns.ZnsRemoteReiter
|
||||
import at.mocode.frontend.core.domain.zns.ZnsRemoteVerein
|
||||
|
||||
class DesktopMasterdataRepository : MasterdataRepository {
|
||||
|
||||
override fun saveVereine(vereine: List<ZnsRemoteVerein>) {
|
||||
println("[Repository] Speichere ${vereine.size} Vereine")
|
||||
vereine.forEach { remote ->
|
||||
val id = remote.id.toLongOrNull() ?: return@forEach
|
||||
val existingIdx = Store.vereine.indexOfFirst { it.id == id }
|
||||
val verein = Verein(
|
||||
id = id,
|
||||
name = remote.name,
|
||||
oepsNummer = remote.oepsNummer,
|
||||
ort = remote.ort,
|
||||
bundesland = remote.bundesland,
|
||||
istVeranstalter = true // In der Meldestelle sind importierte ZNS-Vereine meist potenzielle Veranstalter
|
||||
)
|
||||
if (existingIdx >= 0) {
|
||||
Store.vereine[existingIdx] = verein
|
||||
} else {
|
||||
Store.vereine.add(verein)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun saveReiter(reiter: List<ZnsRemoteReiter>) {
|
||||
println("[Repository] Speichere ${reiter.size} Reiter")
|
||||
reiter.forEach { remote ->
|
||||
val id = remote.id.toLongOrNull() ?: return@forEach
|
||||
val existingIdx = Store.reiter.indexOfFirst { it.id == id }
|
||||
val entry = Reiter(
|
||||
id = id,
|
||||
vorname = remote.vorname,
|
||||
nachname = remote.nachname,
|
||||
satznummer = remote.satznummer,
|
||||
oepsNummer = remote.satznummer, // Oft identisch oder Mapping nötig
|
||||
lizenzKlasse = remote.lizenzKlasse,
|
||||
nation = "AUT" // Default für ZNS Import
|
||||
)
|
||||
if (existingIdx >= 0) {
|
||||
Store.reiter[existingIdx] = entry
|
||||
} else {
|
||||
Store.reiter.add(entry)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun savePferde(pferde: List<ZnsRemotePferd>) {
|
||||
println("[Repository] Speichere ${pferde.size} Pferde")
|
||||
pferde.forEach { remote ->
|
||||
val id = remote.id.toLongOrNull() ?: return@forEach
|
||||
val existingIdx = Store.pferde.indexOfFirst { it.id == id }
|
||||
val entry = Pferd(
|
||||
id = id,
|
||||
name = remote.name,
|
||||
geschlecht = remote.geschlecht,
|
||||
lebensnummer = remote.lebensnummer,
|
||||
oepsNummer = remote.kopfnummer
|
||||
)
|
||||
if (existingIdx >= 0) {
|
||||
Store.pferde[existingIdx] = entry
|
||||
} else {
|
||||
Store.pferde.add(entry)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun saveFunktionaere(funktionaere: List<ZnsRemoteFunktionaer>) {
|
||||
println("[Repository] Speichere ${funktionaere.size} Funktionäre")
|
||||
funktionaere.forEach { remote ->
|
||||
val id = remote.id.toLongOrNull() ?: return@forEach
|
||||
val existingIdx = Store.funktionaere.indexOfFirst { it.id == id }
|
||||
val namen = remote.name?.split(" ") ?: listOf("Unbekannt")
|
||||
val entry = Funktionaer(
|
||||
id = id,
|
||||
vorname = namen.firstOrNull() ?: "",
|
||||
nachname = namen.drop(1).joinToString(" "),
|
||||
rollen = remote.qualifikationen
|
||||
)
|
||||
if (existingIdx >= 0) {
|
||||
Store.funktionaere[existingIdx] = entry
|
||||
} else {
|
||||
Store.funktionaere.add(entry)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user