diff --git a/.env.example b/.env.example index f3ac0a4e..9b07f8ce 100644 --- a/.env.example +++ b/.env.example @@ -120,6 +120,13 @@ MAILPIT_IMAGE=axllent/mailpit:v1.29 MAILPIT_WEB_PORT=8025:8025 MAILPIT_SMTP_PORT=1025:1025 +# --- SPRING MAIL CONFIG (Lokal / Mailpit) --- +# Für lokale Entwicklung mit Mailpit (Docker Compose) +SPRING_MAIL_HOST=mailpit +SPRING_MAIL_PORT=1025 +SPRING_MAIL_PROPERTIES_MAIL_SMTP_AUTH=false +SPRING_MAIL_PROPERTIES_MAIL_SMTP_STARTTLS_ENABLE=false + # --- PGADMIN --- PGADMIN_IMAGE=dpage/pgadmin4:8 PGADMIN_EMAIL=meldestelle@mo-code.at @@ -149,6 +156,8 @@ GATEWAY_DEBUG_PORT=5005:5005 GATEWAY_SERVER_PORT=8081 GATEWAY_SPRING_PROFILES_ACTIVE=docker GATEWAY_DEBUG=true +GATEWAY_SERVICE_NAME=api-gateway +GATEWAY_CONSUL_PREFER_IP=true # --- PING-SERVICE --- PING_SPRING_PROFILES_ACTIVE=docker @@ -160,9 +169,9 @@ PING_SERVICE_NAME=ping-service PING_CONSUL_PREFER_IP=true # --- MAIL-SERVICE --- -MAIL_PORT=8083:8085 +MAIL_PORT=8083:8083 MAIL_DEBUG_PORT=5014:5014 -MAIL_SERVER_PORT=8085 +MAIL_SERVER_PORT=8083 MAIL_SPRING_PROFILES_ACTIVE=docker MAIL_DEBUG=true MAIL_SERVICE_NAME=mail-service @@ -234,6 +243,8 @@ SERIES_DEBUG_PORT=5011:5011 SERIES_SERVER_PORT=8089 SERIES_SPRING_PROFILES_ACTIVE=docker SERIES_DEBUG=true +SERIES_SERVICE_NAME=series-service +SERIES_CONSUL_PREFER_IP=true # --- WEB-APP --- WEB_APP_PORT=4000:4000 diff --git a/.gitignore b/.gitignore deleted file mode 100644 index dfad3ae1..00000000 --- a/.gitignore +++ /dev/null @@ -1,74 +0,0 @@ -# --- General --- -.gradle/ -**/build/ -**/out/ -.kotlin/ -kotlin-js-store/ - -# --- Environments --- -#.env -config/env/.env.local -.env.development.local -.env.test.local -.env.production.local -.env.local - -# --- IDEs --- -# IntelliJ -.idea/ -*.iml -*.ipr -*.iws - -# VS Code -.vscode/* -!.vscode/settings.json -!.vscode/tasks.json -!.vscode/launch.json -!.vscode/extensions.json -!.vscode/snippets - -# Fleet -.fleet/ -!.fleet/receipt.json - -# --- Dependencies & Build --- -node_modules/ -**/node_modules/ -package-lock.json -yarn.lock -pnpm-lock.yaml - -# --- OS Files --- -.DS_Store -Thumbs.db -*.swp -*~ -.nfs* - -# --- Logs --- -_backup/logs/ -**/*.log -*.log.gz - -# --- Languages & Runtimes --- -# Java/Kotlin -*.class -.attach_pid* - -# Python -.venv/ -venv/ -ENV/ -*.pyc -__pycache__/ - -# --- Quality & Documentation --- -build/diagrams/ -.eslintcache -.stylelintcache -.phpunit.result.cache -.dataSources/ -dataSources.local.xml -/_backup/ -.env diff --git a/backend/services/entries/entries-service/src/main/kotlin/at/mocode/entries/service/bewerbe/BewerbService.kt b/backend/services/entries/entries-service/src/main/kotlin/at/mocode/entries/service/bewerbe/BewerbService.kt index c41d3bf0..77314960 100644 --- a/backend/services/entries/entries-service/src/main/kotlin/at/mocode/entries/service/bewerbe/BewerbService.kt +++ b/backend/services/entries/entries-service/src/main/kotlin/at/mocode/entries/service/bewerbe/BewerbService.kt @@ -72,7 +72,9 @@ class BewerbService( pausenBezeichnung = req.pausenBezeichnung, // Finanzen startgeldCent = req.startgeldCent, - geldpreisAusbezahlt = req.geldpreisAusbezahlt + geldpreisAusbezahlt = req.geldpreisAusbezahlt, + znsNummer = req.znsNummer, + znsAbteilung = req.znsAbteilung ) return repo.create(b) } @@ -163,6 +165,8 @@ class BewerbService( // Finanzen startgeldCent = req.startgeldCent, geldpreisAusbezahlt = req.geldpreisAusbezahlt, + znsNummer = req.znsNummer, + znsAbteilung = req.znsAbteilung ) return repo.update(updated) } diff --git a/dc-backend.yaml b/dc-backend.yaml index ac51cdc6..f80bb148 100644 --- a/dc-backend.yaml +++ b/dc-backend.yaml @@ -61,7 +61,7 @@ services: PING_SERVICE_URL: "http://ping-service:8082" MASTERDATA_SERVICE_URL: "http://masterdata-service:8086" EVENTS_SERVICE_URL: "http://events-service:8085" - MAIL_SERVICE_URL: "http://mail-service:8085" + MAIL_SERVICE_URL: "http://mail-service:8083" ZNS_IMPORT_SERVICE_URL: "http://zns-import-service:8095" RESULTS_SERVICE_URL: "http://results-service:8088" BILLING_SERVICE_URL: "http://billing-service:8087" @@ -559,12 +559,12 @@ services: container_name: "${PROJECT_NAME:-meldestelle}-mail-service" restart: unless-stopped ports: - - "${MAIL_PORT:-8083:8085}" + - "${MAIL_PORT:-8083:8083}" - "${MAIL_DEBUG_PORT:-5014:5014}" environment: SPRING_PROFILES_ACTIVE: "${MAIL_SPRING_PROFILES_ACTIVE:-docker}" DEBUG: "${MAIL_DEBUG:-true}" - SERVER_PORT: "${MAIL_SERVER_PORT:-8085}" + SERVER_PORT: "${MAIL_SERVER_PORT:-8083}" # --- KEYCLOAK --- SPRING_SECURITY_OAUTH2_RESOURCESERVER_JWT_ISSUER_URI: "${KC_ISSUER_URI:-http://keycloak:8080/realms/meldestelle}" @@ -601,7 +601,7 @@ services: condition: "service_healthy" healthcheck: - test: [ "CMD", "curl", "-f", "http://localhost:8085/actuator/health/readiness" ] + test: [ "CMD", "wget", "--spider", "-q", "http://localhost:8083/actuator/health/readiness" ] interval: 15s timeout: 5s retries: 5 @@ -724,7 +724,13 @@ services: # --- CONSUL --- SPRING_CLOUD_CONSUL_HOST: "${CONSUL_HOST:-consul}" - SPRING_CLOUD_CONSUL_PORT: "${CONSUL_PORT:-8500}" + SPRING_CLOUD_CONSUL_PORT: "${CONSUL_HTTP_PORT:-8500}" + SPRING_CLOUD_CONSUL_DISCOVERY_SERVICE_NAME: "${SERIES_SERVICE_NAME:-series-service}" + SPRING_CLOUD_CONSUL_DISCOVERY_PREFER_IP_ADDRESS: "${SERIES_CONSUL_PREFER_IP:-true}" + + # --- ZIPKIN --- + MANAGEMENT_ZIPKIN_TRACING_ENDPOINT: "${ZIPKIN_ENDPOINT:-http://zipkin:9411/api/v2/spans}" + MANAGEMENT_TRACING_SAMPLING_PROBABILITY: "${ZIPKIN_SAMPLING_PROBABILITY:-1.0}" depends_on: postgres: diff --git a/frontend/features/nennung-feature/src/commonMain/kotlin/at/mocode/frontend/features/nennung/di/NennungModule.kt b/frontend/features/nennung-feature/src/commonMain/kotlin/at/mocode/frontend/features/nennung/di/NennungModule.kt index 4bebd389..8ccb2ecc 100644 --- a/frontend/features/nennung-feature/src/commonMain/kotlin/at/mocode/frontend/features/nennung/di/NennungModule.kt +++ b/frontend/features/nennung-feature/src/commonMain/kotlin/at/mocode/frontend/features/nennung/di/NennungModule.kt @@ -2,11 +2,12 @@ package at.mocode.frontend.features.nennung.di import at.mocode.frontend.features.nennung.domain.NennungRemoteRepository import at.mocode.frontend.features.nennung.presentation.NennungViewModel -import io.ktor.client.HttpClient +import io.ktor.client.* import org.koin.core.module.dsl.viewModel +import org.koin.core.qualifier.named import org.koin.dsl.module val nennungFeatureModule = module { - single { NennungRemoteRepository(get()) } + single { NennungRemoteRepository(get(named("apiClient"))) } viewModel { NennungViewModel() } }