feat(zns-importer): add ZNSImportService with tests and REST controller

- Created `ZnsImportService` to handle uploading, parsing, and persisting ZNS data from legacy `.zip` files.
- Introduced corresponding test cases in `ZnsImportServiceTest` for handling edge cases including imports and updates.
- Added REST controller `ZnsImportController` for initiating import jobs and retrieving their status.
- Defined `ZnsImportResult` data structure for reporting results of import operations.
- Established database configuration specific to ZNS importer for development profile.
- Updated utility libraries with `FixedWidthLineReader` for fixed-width string parsing.
- Refactored architecture by placing parser logic in `core:zns-parser` for reuse across backend and Compose Desktop app.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
2026-03-25 14:43:01 +01:00
parent 4e8ed21ac0
commit 9d08cb0f72
21 changed files with 1653 additions and 22 deletions
+30
View File
@@ -0,0 +1,30 @@
plugins {
alias(libs.plugins.kotlinMultiplatform)
alias(libs.plugins.kotlinSerialization)
}
kotlin {
jvm()
sourceSets {
commonMain {
dependencies {
implementation(projects.core.coreDomain)
implementation(projects.core.coreUtils)
// Domänen-Modelle für das Parsing
implementation(projects.backend.services.clubs.clubsDomain)
implementation(projects.backend.services.persons.personsDomain)
implementation(projects.backend.services.horses.horsesDomain)
implementation(projects.backend.services.officials.officialsDomain)
implementation(libs.kotlinx.serialization.json)
implementation(libs.kotlinx.datetime)
}
}
commonTest {
dependencies {
implementation(libs.kotlin.test)
}
}
}
}