diff --git a/src/main/java/clap/server/adapter/inbound/web/task/ManagementTaskController.java b/src/main/java/clap/server/adapter/inbound/web/task/ManagementTaskController.java index a8caae72..76f42dfd 100644 --- a/src/main/java/clap/server/adapter/inbound/web/task/ManagementTaskController.java +++ b/src/main/java/clap/server/adapter/inbound/web/task/ManagementTaskController.java @@ -34,7 +34,7 @@ public class ManagementTaskController { @Secured({"ROLE_MANAGER", "ROLE_USER"}) public ResponseEntity createTask( @RequestPart(name = "taskInfo") @Valid CreateTaskRequest createTaskRequest, - @RequestPart(name = "attachment", required = false) @NotNull List attachments, + @RequestPart(name = "attachment", required = false) List attachments, @AuthenticationPrincipal SecurityUserDetails userInfo ){ return ResponseEntity.ok(createTaskUsecase.createTask(userInfo.getUserId(), createTaskRequest, attachments)); @@ -46,7 +46,7 @@ public ResponseEntity createTask( public ResponseEntity updateTask( @PathVariable @NotNull Long taskId, @RequestPart(name = "taskInfo") @Valid UpdateTaskRequest updateTaskRequest, - @RequestPart(name = "attachment", required = false) @NotNull List attachments, + @RequestPart(name = "attachment", required = false) List attachments, @AuthenticationPrincipal SecurityUserDetails userInfo){ return ResponseEntity.ok(updateTaskUsecase.updateTask(userInfo.getUserId(), taskId, updateTaskRequest, attachments)); } diff --git a/src/main/java/clap/server/application/service/task/CreateTaskService.java b/src/main/java/clap/server/application/service/task/CreateTaskService.java index 4f6296d3..7c77a0dd 100644 --- a/src/main/java/clap/server/application/service/task/CreateTaskService.java +++ b/src/main/java/clap/server/application/service/task/CreateTaskService.java @@ -55,7 +55,10 @@ public CreateTaskResponse createTask(Long requesterId, CreateTaskRequest createT savedTask.setInitialProcessorOrder(); commandTaskPort.save(savedTask); - saveAttachments(files, savedTask); + if (files != null) { + saveAttachments(files, savedTask); + } + publishNotification(savedTask); return TaskMapper.toCreateTaskResponse(savedTask); } @@ -66,7 +69,7 @@ private void saveAttachments(List files, Task task) { commandAttachmentPort.saveAll(attachments); } - private void publishNotification(Task task){ + private void publishNotification(Task task) { List reviewers = memberService.findReviewers(); // 검토자들 각각에 대한 알림 생성 후 event 발행 @@ -90,5 +93,4 @@ private void publishNotification(Task task){ } - } \ No newline at end of file diff --git a/src/main/java/clap/server/application/service/task/UpdateTaskService.java b/src/main/java/clap/server/application/service/task/UpdateTaskService.java index 9e770156..e3aceb36 100644 --- a/src/main/java/clap/server/application/service/task/UpdateTaskService.java +++ b/src/main/java/clap/server/application/service/task/UpdateTaskService.java @@ -122,9 +122,11 @@ private void updateAttachments(List attachmentIdsToDelete, List attachmentsToDelete = validateAndGetAttachments(attachmentIdsToDelete, task); attachmentsToDelete.forEach(Attachment::softDelete); - List fileUrls = s3UploadAdapter.uploadFiles(FilePathConstants.TASK_IMAGE, files); - List attachments = AttachmentMapper.toTaskAttachments(task, files, fileUrls); - commandAttachmentPort.saveAll(attachments); + if(files != null) { + List fileUrls = s3UploadAdapter.uploadFiles(FilePathConstants.TASK_IMAGE, files); + List attachments = AttachmentMapper.toTaskAttachments(task, files, fileUrls); + commandAttachmentPort.saveAll(attachments); + } } private List validateAndGetAttachments(List attachmentIdsToDelete, Task task) {