### feat: erweitere ZNS und SQLDelight-Integration
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Has been cancelled
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Has been cancelled
- **SQLDelight:** Füge neue Queries (`countVereine`, `maxUpdated...`) zur SQLite-Datenbank hinzu und aktualisiere `DesktopMasterdataRepository`. - **ZNS-Sync:** Passe `ZnsImportState` an, um Pferde- und Funktionärsdaten zu unterstützen. - **Cloud-Sync:** Entferne redundante Auth-Header und setze Limits für Massensynchronisation auf 50.000 Datensätze. - **Masterdata-Service:** Stabilisiere Consul Health-Checks und implementiere Limit-Beschränkungen auf Controller-Ebene.
This commit is contained in:
+12
-6
@@ -12,6 +12,8 @@ data class ZnsImportState(
|
||||
val isFinished: Boolean = false,
|
||||
val remoteResults: List<ZnsRemoteVerein> = emptyList(),
|
||||
val remoteReiterResults: List<ZnsRemoteReiter> = emptyList(),
|
||||
val remoteHorseResults: List<ZnsRemotePferd> = emptyList(),
|
||||
val remoteFunktionaerResults: List<ZnsRemoteFunktionaer> = emptyList(),
|
||||
val isSearching: Boolean = false,
|
||||
val lastSyncVersion: String? = null,
|
||||
val isSyncing: Boolean = false,
|
||||
@@ -59,17 +61,21 @@ interface ZnsImportProvider {
|
||||
fun onFileSelected(path: String)
|
||||
fun startImport(mode: String = "FULL")
|
||||
fun searchRemote(query: String)
|
||||
fun syncFromCloud(onResult: (
|
||||
List<ZnsRemoteVerein>,
|
||||
List<ZnsRemoteReiter>,
|
||||
List<ZnsRemotePferd>,
|
||||
List<ZnsRemoteFunktionaer>
|
||||
) -> Unit)
|
||||
fun syncFromCloud(
|
||||
onResult: (
|
||||
List<ZnsRemoteVerein>,
|
||||
List<ZnsRemoteReiter>,
|
||||
List<ZnsRemotePferd>,
|
||||
List<ZnsRemoteFunktionaer>
|
||||
) -> Unit
|
||||
)
|
||||
|
||||
fun addSyncResults(
|
||||
vereine: List<ZnsRemoteVerein>,
|
||||
reiter: List<ZnsRemoteReiter>,
|
||||
pferde: List<ZnsRemotePferd>,
|
||||
funktionaere: List<ZnsRemoteFunktionaer>
|
||||
)
|
||||
|
||||
fun reset()
|
||||
}
|
||||
|
||||
+24
@@ -151,3 +151,27 @@ DELETE FROM LocalPferd;
|
||||
|
||||
deleteAllFunktionaere:
|
||||
DELETE FROM LocalFunktionaer;
|
||||
|
||||
countVereine:
|
||||
SELECT COUNT(*) FROM LocalVerein;
|
||||
|
||||
countReiter:
|
||||
SELECT COUNT(*) FROM LocalReiter;
|
||||
|
||||
countPferde:
|
||||
SELECT COUNT(*) FROM LocalPferd;
|
||||
|
||||
countFunktionaere:
|
||||
SELECT COUNT(*) FROM LocalFunktionaer;
|
||||
|
||||
maxUpdatedVerein:
|
||||
SELECT MAX(last_updated) FROM LocalVerein;
|
||||
|
||||
maxUpdatedReiter:
|
||||
SELECT MAX(last_updated) FROM LocalReiter;
|
||||
|
||||
maxUpdatedPferd:
|
||||
SELECT MAX(last_updated) FROM LocalPferd;
|
||||
|
||||
maxUpdatedFunktionaer:
|
||||
SELECT MAX(last_updated) FROM LocalFunktionaer;
|
||||
|
||||
Reference in New Issue
Block a user