docs: Migrationsplan für Projekt-Restrukturierung hinzugefügt

- Detaillierter Plan zur Migration von alter zu neuer Modulstruktur
- Umfasst Überführung von shared-kernel zu core-Modulen
- Definiert Migration von Fachdomänen zu bounded contexts:
  * master-data → masterdata-Module
  * member-management → members-Module
  * horse-registry → horses-Module
  * event-management → events-Module
- Beschreibt Verlagerung von api-gateway zu infrastructure/gateway
- Strukturiert nach Domain-driven Design Prinzipien
- Berücksichtigt Clean Architecture Layering (domain, application, infrastructure, api)
This commit is contained in:
stefan
2025-07-25 13:05:42 +02:00
parent a4c7d53aa3
commit 65a0084f91
68 changed files with 13107 additions and 101 deletions
@@ -8,6 +8,8 @@ import com.benasher44.uuid.uuid4
import kotlinx.datetime.Clock
import kotlinx.datetime.Instant
import kotlinx.datetime.LocalDate
import kotlinx.datetime.TimeZone
import kotlinx.datetime.toLocalDateTime
import kotlinx.serialization.Serializable
/**
@@ -77,8 +79,12 @@ data class Member(
* Checks if the membership is currently valid.
*/
fun isMembershipValid(): Boolean {
// Simplified implementation - can be enhanced with proper date comparison
return isActive && membershipEndDate != null
if (!isActive) return false
val today = Clock.System.now().toLocalDateTime(TimeZone.currentSystemDefault()).date
return membershipEndDate?.let { endDate ->
today <= endDate
} ?: true // If no end date, membership is valid indefinitely
}
/**