Skip to content

Commit 0d22dc0

Browse files
authored
Merge pull request #647 from bettercodepaul/swt2#2186
fix: verständliche Fehlermeldung bei voller Veranstaltung (swt2#2186)
2 parents 29578a8 + 7da2c28 commit 0d22dc0

2 files changed

Lines changed: 8 additions & 6 deletions

File tree

  • bogenliga
    • bogenliga-application/src/main/java/de/bogenliga/application/services/v1/dsbmannschaft/service
    • bogenliga-common/src/main/java/de/bogenliga/application/common/errorhandling

bogenliga/bogenliga-application/src/main/java/de/bogenliga/application/services/v1/dsbmannschaft/service/DsbMannschaftService.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public class DsbMannschaftService implements ServiceFacade {
4747
private static final String PRECONDITION_MSG_DSBMANNSCHAFT_VEREIN_ID_NEGATIVE = "DsbMannschaft Vereins Id must not be negative";
4848
private static final String PRECONDITION_MSG_DSBMANNSCHAFT_NUMMER_NEGATIVE = "DsbMannschaft Nummer must not be negative";
4949
private static final String PRECONDITION_MSG_DSBMANNSCHAFT_BENUTZER_ID_NEGATIVE = "DsbMannschaft Benutzer Id must not be negative";
50-
private static final String PRECONDITION_MSG_DSBMANNSCHAFT_VERANSTALTUNG_FULL = "DsbMannschaft Veranstaltung has already reached its maximum capacity";
50+
private static final String ERROR_MSG_VERANSTALTUNG_FULL = "Die Veranstaltung hat ihre maximale Kapazität erreicht. Es kann keine weitere Mannschaft hinzugefügt werden.";
5151
private static final String PRECONDITION_MSG_ID_NEGATIVE = "ID must not be negative.";
5252
private static final String PRECONDITION_MSG_WRONG_YEAR = "Year has to be a valid year.";
5353
private static final String PRECONDITION_MSG_VERANSTALTUNG_SIZE_NEGATIV = "DsbMannschaft Veranstaltung size can not be negativ";
@@ -361,9 +361,9 @@ public DsbMannschaftDTO create(@RequestBody final DsbMannschaftDTO dsbMannschaft
361361
}
362362

363363

364-
Preconditions.checkArgument(actualMannschaftInVeranstaltungCount.size() < veranstaltungsgroesse
365-
366-
, PRECONDITION_MSG_DSBMANNSCHAFT_VERANSTALTUNG_FULL);
364+
if (actualMannschaftInVeranstaltungCount.size() >= veranstaltungsgroesse) {
365+
throw new BusinessException(ErrorCode.VERANSTALTUNG_MAX_CAPACITY_ERROR, ERROR_MSG_VERANSTALTUNG_FULL);
366+
}
367367
}
368368
LOG.debug("Receive 'create' request with verein id '{}', nummer '{}', benutzer id '{}', veranstaltung id '{}',",
369369

@@ -642,8 +642,9 @@ public DsbMannschaftDTO update(@RequestBody final DsbMannschaftDTO dsbMannschaft
642642
if(veranstaltungDO != null) {
643643
veranstaltungsgroesse = veranstaltungDO.getVeranstaltungGroesse();
644644
}
645-
Preconditions.checkArgument(mannschaftenInZielveranstaltung.size() < veranstaltungsgroesse
646-
, PRECONDITION_MSG_DSBMANNSCHAFT_VERANSTALTUNG_FULL);
645+
if (mannschaftenInZielveranstaltung.size() >= veranstaltungsgroesse) {
646+
throw new BusinessException(ErrorCode.VERANSTALTUNG_MAX_CAPACITY_ERROR, ERROR_MSG_VERANSTALTUNG_FULL);
647+
}
647648
}
648649

649650

bogenliga/bogenliga-common/src/main/java/de/bogenliga/application/common/errorhandling/ErrorCode.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ public enum ErrorCode {
2828
// precondition checks
2929
INVALID_ARGUMENT_ERROR(ErrorCategory.BUSINESS, "INVALID_ARGUMENT_ERROR"),
3030
MATCH_INKONSISTENTE_SCHUETZEN(ErrorCategory.BUSINESS, "MATCH_INKONSISTENTE_SCHUETZEN"),
31+
VERANSTALTUNG_MAX_CAPACITY_ERROR(ErrorCategory.BUSINESS, "VERANSTALTUNG_MAX_CAPACITY_ERROR"),
3132
// database
3233
ENTITY_NOT_FOUND_ERROR(ErrorCategory.BUSINESS, "ENTITY_NOT_FOUND_ERROR"),
3334
ENTITY_CONFLICT_ERROR(ErrorCategory.BUSINESS, "ENTITY_CONFLICT_ERROR"),

0 commit comments

Comments
 (0)