Document and implement CSN-C-NEU mandatory division rules: Add TURNIER_KLASSEN.md detailing forced divisions by license categories; establish uniform labels and keys (e.g., LZF_ONLY and R1_PLUS); draft optional youth division rules. Extend validation in Validierungsregeln.md. Implement FEI-ID resolver and mapping endpoint in Masterdata service.
This commit is contained in:
+29
@@ -0,0 +1,29 @@
|
||||
package at.mocode.masterdata.domain.service
|
||||
|
||||
/**
|
||||
* Auflösung von FEI-IDs: akzeptiert numerische IDs (Pass‑Through) und Legacy‑Referenzcodes
|
||||
* und liefert – wenn bekannt – die zugehörige numerische FEI‑ID zurück.
|
||||
*/
|
||||
interface FeiIdResolver {
|
||||
|
||||
/**
|
||||
* Löst eine eingegebene FEI‑Kennung auf.
|
||||
*
|
||||
* @param input Benutzer-/Importeingabe (numerisch 7–8 Stellen oder Legacy‑Code 3Z+2B+2Z)
|
||||
* @return [FeiIdResolution] mit normalisierter numerischer ID, oder null wenn unbekannt/ungültig
|
||||
*/
|
||||
fun resolve(input: String): FeiIdResolution?
|
||||
}
|
||||
|
||||
/**
|
||||
* Ergebnis der FEI‑ID Auflösung.
|
||||
*
|
||||
* @property normalizedNumericId Numerische FEI‑ID (7–8 Ziffern) als String
|
||||
* @property sourceFormat "NUMERIC" | "LEGACY_CODE"
|
||||
* @property wasMapped true, wenn aus Legacy nach numerisch gemappt wurde
|
||||
*/
|
||||
data class FeiIdResolution(
|
||||
val normalizedNumericId: String,
|
||||
val sourceFormat: String,
|
||||
val wasMapped: Boolean
|
||||
)
|
||||
Reference in New Issue
Block a user