c1fadac944
- **Entries-Service Updates:** - Implemented automatic booking of fees (entry fees and late fees) during entry submission using `TeilnehmerKontoService`. - Enhanced `Bewerb` entity with financial fields (`nenngeldCent`, `nachnenngebuehrCent`). - Added Flyway migration to update `bewerbe` table with new financial fields. - Updated `EntriesServiceApplication` to include billing package scanning for integration. - **Billing-Service Enhancements:** - Adjusted `TeilnehmerKontoService` to support fetching accounts by event and person. - Improved database configuration to handle missing JDBC URLs during tests. - **Tests:** - Added integration tests to validate fee booking logic for entries, including late fee scenarios. - Introduced H2 database setup for test isolation. - **Misc:** - Updated tenant-aware transactions to support H2 and PostgreSQL dialects. - Adjusted log and error handling for robust integration between services.
63 lines
2.5 KiB
Kotlin
63 lines
2.5 KiB
Kotlin
plugins {
|
|
alias(libs.plugins.kotlinJvm)
|
|
alias(libs.plugins.kotlinSpring)
|
|
alias(libs.plugins.kotlinJpa)
|
|
alias(libs.plugins.spring.boot)
|
|
alias(libs.plugins.spring.dependencyManagement)
|
|
}
|
|
|
|
springBoot {
|
|
mainClass.set("at.mocode.entries.service.EntriesServiceApplicationKt")
|
|
}
|
|
|
|
dependencies {
|
|
implementation(platform(projects.platform.platformBom))
|
|
implementation(projects.platform.platformDependencies)
|
|
implementation(projects.backend.services.entries.entriesApi)
|
|
implementation(projects.backend.services.entries.entriesDomain)
|
|
implementation(projects.backend.services.billing.billingDomain)
|
|
implementation(projects.backend.services.billing.billingService)
|
|
implementation(projects.core.coreUtils)
|
|
implementation(projects.core.coreDomain)
|
|
implementation(projects.backend.infrastructure.monitoring.monitoringClient)
|
|
implementation(projects.backend.infrastructure.security)
|
|
|
|
// Standard dependencies for a secure microservice (centralized bundle)
|
|
implementation(libs.bundles.spring.boot.secure.service)
|
|
// Common service extras
|
|
implementation(libs.spring.boot.starter.validation)
|
|
// JSON + Web: ensure Spring Web (incl. HttpMessageConverters) is on classpath
|
|
implementation("org.springframework.boot:spring-boot-starter-web")
|
|
implementation(libs.spring.boot.starter.json)
|
|
implementation(libs.postgresql.driver)
|
|
|
|
// KORREKTUR: Jackson Bundle aufgelöst, da Accessor fehlschlägt
|
|
implementation(libs.jackson.module.kotlin)
|
|
implementation(libs.jackson.datatype.jsr310)
|
|
|
|
implementation(libs.kotlin.reflect)
|
|
implementation(libs.caffeine)
|
|
// spring-web is included via spring-boot-starter-web above; keep explicit add if alias resolves elsewhere
|
|
// JDBC for JdbcTemplate-based TenantRegistry
|
|
implementation("org.springframework.boot:spring-boot-starter-jdbc")
|
|
|
|
// Resilience Dependencies (manuell aufgelöst)
|
|
implementation(libs.resilience4j.spring.boot3)
|
|
implementation(libs.resilience4j.reactor)
|
|
implementation(libs.spring.boot.starter.aop)
|
|
|
|
implementation(libs.springdoc.openapi.starter.webmvc.ui)
|
|
// Exposed ORM für Datenbankzugriff
|
|
implementation(libs.exposed.core)
|
|
implementation(libs.exposed.jdbc)
|
|
implementation(libs.exposed.kotlin.datetime)
|
|
// Flyway runtime (provided by BOM, ensure availability in this module)
|
|
implementation(libs.flyway.core)
|
|
implementation(libs.flyway.postgresql)
|
|
|
|
testImplementation(projects.platform.platformTesting)
|
|
testImplementation(libs.bundles.testing.jvm)
|
|
testImplementation(libs.spring.boot.starter.test)
|
|
testImplementation("com.h2database:h2")
|
|
}
|