Skip to content

Commit

Permalink
getFeldSparte() aus API wieder entfernt
Browse files Browse the repository at this point in the history
  • Loading branch information
oboehm committed Apr 30, 2024
1 parent 7a892ec commit 9c8a85b
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 40 deletions.
20 changes: 3 additions & 17 deletions lib/src/main/java/gdv/xport/satz/Datensatz.java
Original file line number Diff line number Diff line change
Expand Up @@ -302,7 +302,7 @@ public boolean hasWagnisart() {
* @since 18.04.2018
*/
public boolean hasKrankenFolgeNr() {
return this.getSatzart() == 220 && this.getFeldSparte().get().toInt() == 20
return this.getSatzart() == 220 && this.getSparte() == 20
&& (this.hasFeld(Bezeichner.FOLGE_NR_ZUR_LAUFENDEN_PERSONEN_NR_UNTER_NR_LAUFENDE_NR_TARIF)
|| this.hasFeld(Bezeichner.FOLGE_NR_ZUR_LAUFENDEN_PERSONEN_NR_UNTER_NR_BZW_LAUFENDEN_NR_TARIF));
}
Expand All @@ -315,8 +315,7 @@ public boolean hasKrankenFolgeNr() {
* @since 30.06.2021
*/
public boolean hasBausparenArt() {
Optional<NumFeld> feldSparte = this.getFeldSparte();
return this.getSatzart() == 220 && feldSparte.isPresent() && feldSparte.get().toInt() == 580
return this.getSatzart() == 220 && hasSparte() && getSparte() == 580
&& (this.hasFeld(Bezeichner.ART_580));
}

Expand Down Expand Up @@ -346,10 +345,7 @@ public boolean hasArt() {
* Gets the sparte feld.
*
* @return die Sparte als Feld
* @deprecated seit 7.1 durch getFeldSparte() ersetzt
* // TODO: mit v9 entsorgen
*/
@Deprecated
@JsonIgnore
public NumFeld getSparteFeld() {
return getFeldSparte().get();
Expand All @@ -366,17 +362,7 @@ public boolean hasSparte() {
return getFeldSparte().isPresent();
}

/**
* Diese Methode dient als Ersatz fuer die getSparte()- und hasSparte()-
* Implementierung, die durch den Mehrdeutigkeit von "Sparte" in die Irre
* fuehren koennen.
*
* @return Optional.empty() fuer Vor- und Nachsatz, ansonsten Sparte-Feld
* an Byte-Adresse 11
* @since 7.1
*/
@JsonIgnore
public Optional<NumFeld> getFeldSparte() {
private Optional<NumFeld> getFeldSparte() {
ByteAdresse adresseSparte = ByteAdresse.of(11);
if (hasFeld(adresseSparte)) {
Feld feld = getFeld(adresseSparte);
Expand Down
25 changes: 5 additions & 20 deletions lib/src/main/java/gdv/xport/satz/Satz.java
Original file line number Diff line number Diff line change
Expand Up @@ -724,19 +724,18 @@ public SatzTyp getSatzTyp() {
if (StringUtils.isNotEmpty(this.gdvSatzartName)) {
return SatzTyp.of(this.gdvSatzartName);
} else {
Optional<NumFeld> sparte = getFeldSparte();
if (sparte.isPresent()) {
if (hasSparte()) {
if (this.hasWagnisart() && this.getWagnisart().matches("\\d")) {
return SatzTyp.of(this.getSatzart(), sparte.get().toInt(),
return SatzTyp.of(this.getSatzart(), getSparte(),
Integer.parseInt(this.getWagnisart()));
} else if (this.hasKrankenFolgeNr() && this.getKrankenFolgeNr().matches("\\d")) {
return SatzTyp.of(this.getSatzart(), sparte.get().toInt(),
return SatzTyp.of(this.getSatzart(), getSparte(),
Integer.parseInt(this.getKrankenFolgeNr()));
} else if (this.hasBausparenArt() && this.getBausparenArt().matches("\\d")) {
return SatzTyp.of(this.getSatzart(), sparte.get().toInt(),
return SatzTyp.of(this.getSatzart(), getSparte(),
Integer.parseInt(this.getBausparenArt()));
} else {
return SatzTyp.of(this.getSatzart(), sparte.get().toInt());
return SatzTyp.of(this.getSatzart(), getSparte());
}
} else {
return SatzTyp.of(this.getSatzart());
Expand Down Expand Up @@ -832,20 +831,6 @@ public int getSparte() {
this.toShortString() + " hat kein Feld \"Sparte\" an Pos 11 in den Kopfdaten!");
}

/**
* Diese Methode dient als Ersatz fuer die getSparte()- und hasSparte()-
* Implementierung, die durch den Mehrdeutigkeit von "Sparte" in die Irre
* fuehren koennen.
*
* @return Optional.empty() fuer Vor- und Nachsatz, ansonsten Sparte-Feld
* an Byte-Adresse 11
* @since 7.1
*/
@JsonIgnore
public Optional<NumFeld> getFeldSparte() {
return Optional.empty();
}

/**
* Liefert den Inhalt des Wagnisart-Felds. Vorher sollte allerdings mittels
* {@link #hasWagnisart()} geprueft werden, ob der Satz ein Wagnisart-Feld
Expand Down
4 changes: 2 additions & 2 deletions lib/src/test/java/gdv/xport/satz/SatzTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -562,8 +562,8 @@ public void testHasSparteAsProdukt() {
assertEquals(580, bausparen.getSparte());
assertEquals(satzTyp, bausparen.getSatzTyp());
for (Teildatensatz tds : bausparen.getTeildatensaetze()) {
assertTrue(tds.getFeldSparte().isPresent());
assertEquals(580, tds.getFeldSparte().get().toInt());
assertTrue(tds.hasSparte());
assertEquals(580, tds.getSparte());
assertEquals(satzTyp, tds.getSatzTyp());
}
}
Expand Down
2 changes: 1 addition & 1 deletion lib/src/test/java/gdv/xport/satz/xml/SatzXmlTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ public void testGetSatzart() {
*/
@Test
public void testGetSparte() {
NumFeld sparte = satz100.getFeldSparte().get();
NumFeld sparte = satz100.getSparteFeld();
assertEquals(3, sparte.getAnzahlBytes());
assertEquals(11, sparte.getByteAdresse());
assertEquals("Sparte", sparte.getBezeichnung());
Expand Down

0 comments on commit 9c8a85b

Please sign in to comment.