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
+7
View File
@@ -66,6 +66,9 @@ include(":backend:infrastructure:persistence")
// --- SECURITY ---
include(":backend:infrastructure:security")
// --- ZNS-IMPORTER ---
include(":backend:infrastructure:zns-importer")
// === BACKEND - SERVICES ===
// --- ENTRIES (Nennungen) ---
include(":backend:services:entries:entries-api")
@@ -99,11 +102,15 @@ include(":backend:services:persons:persons-service")
// --- PING (Ping Service) ---
include(":backend:services:ping:ping-service")
// --- ZNS-IMPORT (Asynchroner ZNS-Stammdaten-Import) ---
include(":backend:services:zns-import:zns-import-service")
// ==========================================================================
// CORE
// ==========================================================================
include(":core:core-domain")
include(":core:core-utils")
include(":core:zns-parser")
// ==========================================================================
// DOCUMENTATION