diff --git a/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignment.java b/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignment.java index a9206934d7..953480581d 100644 --- a/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignment.java +++ b/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignment.java @@ -33,7 +33,7 @@ public class ReviewAssignment { @Schema(description = "The id of the review assignment", required = true) private UUID id; - public ReviewAssignment(UUID revieweeId, UUID reviewerId, UUID reviewPeriodId, Boolean approved) { + public ReviewAssignment(UUID revieweeId, @Nullable UUID reviewerId, UUID reviewPeriodId, Boolean approved) { this.revieweeId = revieweeId; this.reviewerId = reviewerId; this.reviewPeriodId = reviewPeriodId; @@ -46,10 +46,10 @@ public ReviewAssignment(UUID revieweeId, UUID reviewerId, UUID reviewPeriodId, B @Schema(required = true, description = "The ID of the employee being reviewed") private UUID revieweeId; - @NotBlank + @Nullable @Column(name = "reviewer_id") @TypeDef(type = DataType.STRING) - @Schema(required = true, description = "The ID of the employee conducting the review") + @Schema(description = "The ID of the employee conducting the review") private UUID reviewerId; @NotBlank diff --git a/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentController.java b/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentController.java index a17a7cd4b9..ed83c31214 100644 --- a/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentController.java +++ b/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentController.java @@ -71,7 +71,7 @@ public Mono> createReviewAssignment(@Body @Valid */ @Post("/{reviewPeriodId}") @RequiredPermission(Permission.CAN_CREATE_REVIEW_ASSIGNMENTS) - public Mono>> createReviewAssignment(@NotNull UUID reviewPeriodId, @Body @Valid List assignments) { + public Mono>> createReviewAssignment(@NotNull UUID reviewPeriodId, @Body List<@Valid ReviewAssignmentDTO> assignments) { return Mono.fromCallable(() -> reviewAssignmentServices.saveAll(reviewPeriodId, assignments.stream().map(ReviewAssignmentDTO::convertToEntity).collect(Collectors.toList()), diff --git a/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentDTO.java b/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentDTO.java index 460ad96ece..dda21dba1a 100644 --- a/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentDTO.java +++ b/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentDTO.java @@ -20,8 +20,8 @@ public class ReviewAssignmentDTO { @Schema(required = true, description = "The ID of the employee being reviewed") private UUID revieweeId; - @NotBlank - @Schema(required = true, description = "The ID of the employee conducting the review") + @Nullable + @Schema(description = "The ID of the employee conducting the review") private UUID reviewerId; @NotBlank diff --git a/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentServicesImpl.java b/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentServicesImpl.java index 20ba4bb998..ea49db439f 100644 --- a/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentServicesImpl.java +++ b/server/src/main/java/com/objectcomputing/checkins/services/reviews/ReviewAssignmentServicesImpl.java @@ -52,7 +52,7 @@ public List saveAll(UUID reviewPeriodId, List newAssignments = new ArrayList<>(); - if (reviewAssignments != null) { + if (reviewAssignments != null && !reviewAssignments.isEmpty()) { for (ReviewAssignment reviewAssignment : reviewAssignments) { if (reviewAssignment.getId() != null) { throw new BadArgException(String.format("Found unexpected id %s for review assignment. New entities must not contain an id.",