diff --git a/server/src/main/java/de/uftos/entities/StudentGroup.java b/server/src/main/java/de/uftos/entities/StudentGroup.java index a8938f1a1..b6323f51a 100644 --- a/server/src/main/java/de/uftos/entities/StudentGroup.java +++ b/server/src/main/java/de/uftos/entities/StudentGroup.java @@ -9,6 +9,8 @@ import jakarta.persistence.JoinTable; import jakarta.persistence.ManyToMany; import jakarta.persistence.OneToMany; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import java.util.List; import java.util.Objects; import lombok.Data; @@ -25,19 +27,24 @@ public class StudentGroup { @Id @GeneratedValue(strategy = GenerationType.UUID) + @NotEmpty private String id; + @NotEmpty private String name; + @NotNull @ManyToMany @JoinTable(name = "students_student_groups", joinColumns = @JoinColumn(name = "student_groups_id"), inverseJoinColumns = @JoinColumn(name = "students_id")) private List students; + @NotNull @ManyToMany(mappedBy = "studentGroups") private List grades; + @NotNull @ManyToMany @JoinTable(name = "student_groups_tags", joinColumns = @JoinColumn(name = "student_groups_id"), diff --git a/uftos-openapi-specs.json b/uftos-openapi-specs.json index c5fb4137a..c306789e9 100644 --- a/uftos-openapi-specs.json +++ b/uftos-openapi-specs.json @@ -3214,6 +3214,7 @@ } }, "StudentGroup" : { + "required" : [ "grades", "id", "name", "students", "tags" ], "type" : "object", "properties" : { "grades" : { diff --git a/web/src/lib/sdk/fetch-client.ts b/web/src/lib/sdk/fetch-client.ts index c6fe23fb4..6b8c0f219 100644 --- a/web/src/lib/sdk/fetch-client.ts +++ b/web/src/lib/sdk/fetch-client.ts @@ -235,11 +235,11 @@ export type Student = { tags: Tag[]; }; export type StudentGroup = { - grades?: Grade[]; - id?: string; - name?: string; - students?: Student[]; - tags?: Tag[]; + grades: Grade[]; + id: string; + name: string; + students: Student[]; + tags: Tag[]; }; export type Lesson = { id: string;