feat(mail-service): introduce persistence and REST support for Nennungen

- Added `NennungRepository` with methods for saving, updating status, and retrieving entries.
- Created `NennungController` to expose REST endpoints for Nennungen.
- Defined `NennungTable` schema with relevant fields and indices.
- Extended `MailPollingService` to parse incoming emails into `NennungEntity` and persist them.
- Updated `build.gradle.kts` with database dependencies and H2 configuration for local dev.
- Refined frontend layout in `OnlineNennungFormular` for improved usability and responsiveness.
This commit is contained in:
2026-04-14 16:50:24 +02:00
parent 4de44623c2
commit da3b57a91d
10 changed files with 662 additions and 257 deletions
@@ -11,6 +11,7 @@ springBoot {
dependencies {
// Interne Module
implementation(platform(projects.platform.platformBom))
implementation(projects.platform.platformDependencies)
implementation(projects.core.coreUtils)
implementation(projects.core.coreDomain)
@@ -20,7 +21,20 @@ dependencies {
implementation(libs.spring.boot.starter.validation)
implementation(libs.spring.boot.starter.actuator)
implementation(libs.spring.boot.starter.mail)
implementation(libs.spring.boot.starter.jdbc)
implementation(libs.jackson.module.kotlin)
implementation(libs.jackson.datatype.jsr310)
// Database & Exposed
implementation(libs.exposed.core)
implementation(libs.exposed.dao)
implementation(libs.exposed.jdbc)
implementation(libs.exposed.java.time)
implementation(libs.exposed.json)
implementation(libs.exposed.kotlin.datetime)
implementation(libs.h2.driver)
implementation(libs.postgresql.driver)
implementation(libs.hikari.cp)
implementation(libs.spring.cloud.starter.consul.discovery)
implementation(libs.micrometer.tracing.bridge.brave)
implementation(libs.zipkin.reporter.brave)