diff --git a/src/main/angular/src/app/api/tools/Numbers/Numbers.ts b/src/main/angular/src/app/api/tools/Numbers/Numbers.ts
index 6b16336..5fa9f89 100644
--- a/src/main/angular/src/app/api/tools/Numbers/Numbers.ts
+++ b/src/main/angular/src/app/api/tools/Numbers/Numbers.ts
@@ -1,5 +1,5 @@
import {Group} from "../../group/Group";
-import {validateDate, validateNumber, validateString} from "../../common/validators";
+import {validateDate, validateNumberOrNull, validateString} from "../../common/validators";
export class Numbers {
@@ -7,7 +7,7 @@ export class Numbers {
readonly uuid: string,
readonly group: Group,
readonly date: Date,
- readonly number: number,
+ readonly number: number | null,
) {
// -
}
@@ -17,7 +17,7 @@ export class Numbers {
validateString(json['uuid']),
Group.fromJson(json['group']),
validateDate(json['date']),
- validateNumber(json['number']),
+ validateNumberOrNull(json['number']),
);
}
diff --git a/src/main/angular/src/app/pages/group/group/group.component.html b/src/main/angular/src/app/pages/group/group/group.component.html
index bacbae2..37d7d9c 100644
--- a/src/main/angular/src/app/pages/group/group/group.component.html
+++ b/src/main/angular/src/app/pages/group/group/group.component.html
@@ -59,7 +59,7 @@
| {{ numbers.date | relative:now }} |
- {{ numbers.number }} |
+ {{ numbers.number || '-' }} |
diff --git a/src/main/angular/src/app/pages/tools/numbers/numbers.component.html b/src/main/angular/src/app/pages/tools/numbers/numbers.component.html
index 190fb1e..504ed6d 100644
--- a/src/main/angular/src/app/pages/tools/numbers/numbers.component.html
+++ b/src/main/angular/src/app/pages/tools/numbers/numbers.component.html
@@ -14,7 +14,7 @@
- {{ numbers.number }}
+ {{ numbers.number || '-' }}
diff --git a/src/main/java/de/ph87/tools/tools/numbers/Numbers.java b/src/main/java/de/ph87/tools/tools/numbers/Numbers.java
index 96af1e6..db57446 100644
--- a/src/main/java/de/ph87/tools/tools/numbers/Numbers.java
+++ b/src/main/java/de/ph87/tools/tools/numbers/Numbers.java
@@ -5,6 +5,7 @@ import de.ph87.tools.tools.numbers.uuid.NumbersAbstract;
import de.ph87.tools.tools.numbers.uuid.NumbersUuid;
import de.ph87.tools.user.User;
import de.ph87.tools.user.reference.UserReference;
+import jakarta.annotation.Nullable;
import jakarta.persistence.*;
import lombok.*;
@@ -53,14 +54,15 @@ public class Numbers extends NumbersAbstract {
this.users = users;
}
- public int getNumberForUser(@NonNull final User user) {
+ @Nullable
+ public Integer getNumberForUser(@NonNull final User user) {
for (int userReferenceIndex = 0; userReferenceIndex < users.size(); userReferenceIndex++) {
final UserReference userReference = users.get(userReferenceIndex);
if (userReference.getUser() != null && userReference.getUser().equals(user)) {
return userReferenceIndex + 1;
}
}
- throw new RuntimeException();
+ return null;
}
public boolean containsUser(@NonNull final User user) {
diff --git a/src/main/java/de/ph87/tools/tools/numbers/NumbersDto.java b/src/main/java/de/ph87/tools/tools/numbers/NumbersDto.java
index 5dcd20d..495d762 100644
--- a/src/main/java/de/ph87/tools/tools/numbers/NumbersDto.java
+++ b/src/main/java/de/ph87/tools/tools/numbers/NumbersDto.java
@@ -5,6 +5,7 @@ import de.ph87.tools.common.uuid.UuidSerializer;
import de.ph87.tools.group.GroupDto;
import de.ph87.tools.tools.numbers.uuid.NumbersAbstract;
import de.ph87.tools.tools.numbers.uuid.NumbersUuid;
+import jakarta.annotation.Nullable;
import lombok.Getter;
import lombok.NonNull;
import lombok.ToString;
@@ -25,9 +26,10 @@ public class NumbersDto extends NumbersAbstract {
@NonNull
private final ZonedDateTime date;
- private final int number;
+ @Nullable
+ private final Integer number;
- public NumbersDto(@NonNull final Numbers numbers, @NonNull final GroupDto group, final int number) {
+ public NumbersDto(@NonNull final Numbers numbers, @NonNull final GroupDto group, @Nullable final Integer number) {
this.uuid = numbers.getUuid();
this.date = numbers.getDate();
this.group = group;
diff --git a/src/main/java/de/ph87/tools/tools/numbers/NumbersService.java b/src/main/java/de/ph87/tools/tools/numbers/NumbersService.java
index 17197cf..abd5d11 100644
--- a/src/main/java/de/ph87/tools/tools/numbers/NumbersService.java
+++ b/src/main/java/de/ph87/tools/tools/numbers/NumbersService.java
@@ -71,7 +71,7 @@ public class NumbersService {
@NonNull
public NumbersDto toDto(@NonNull final Numbers numbers, @NonNull final User user) {
final GroupDto group = groupService.toDto(numbers.getGroup());
- final int number = numbers.getNumberForUser(user);
+ final Integer number = numbers.getNumberForUser(user);
return new NumbersDto(numbers, group, number);
}