diff --git a/src/main/java/clap/server/adapter/inbound/web/dto/task/request/ApprovalTaskRequest.java b/src/main/java/clap/server/adapter/inbound/web/dto/task/request/ApprovalTaskRequest.java index f2af58fb..09d72c54 100644 --- a/src/main/java/clap/server/adapter/inbound/web/dto/task/request/ApprovalTaskRequest.java +++ b/src/main/java/clap/server/adapter/inbound/web/dto/task/request/ApprovalTaskRequest.java @@ -12,7 +12,7 @@ public record ApprovalTaskRequest( Long categoryId, @NotNull - @Schema(description = "처리자 ID", + @Schema(description = "담당자 ID", example = "2") Long processorId, diff --git a/src/main/java/clap/server/adapter/inbound/web/dto/task/request/FilterTaskListRequest.java b/src/main/java/clap/server/adapter/inbound/web/dto/task/request/FilterTaskListRequest.java index b09d3048..eb7f3527 100644 --- a/src/main/java/clap/server/adapter/inbound/web/dto/task/request/FilterTaskListRequest.java +++ b/src/main/java/clap/server/adapter/inbound/web/dto/task/request/FilterTaskListRequest.java @@ -24,7 +24,7 @@ public record FilterTaskListRequest( @NotNull String title, - @Schema(description = "요청자/처리자 닉네임", example = "atom.park") + @Schema(description = "요청자/담당자 닉네임", example = "atom.park") @NotNull String nickName, diff --git a/src/main/java/clap/server/adapter/inbound/web/dto/task/request/FilterTeamStatusRequest.java b/src/main/java/clap/server/adapter/inbound/web/dto/task/request/FilterTeamStatusRequest.java index f7e366d6..91524ffc 100644 --- a/src/main/java/clap/server/adapter/inbound/web/dto/task/request/FilterTeamStatusRequest.java +++ b/src/main/java/clap/server/adapter/inbound/web/dto/task/request/FilterTeamStatusRequest.java @@ -12,10 +12,11 @@ public record FilterTeamStatusRequest( SortBy sortBy, @Schema(description = "1차 카테고리 ID 목록", example = "[10, 20, 30]") - @NotBlank + @NotNull List mainCategoryIds, @Schema(description = "2차 카테고리 ID 목록", example = "[1, 2, 3]") + @NotNull List categoryIds, @Schema(description = "작업 타이틀 검색", example = "타이틀1") diff --git a/src/main/java/clap/server/adapter/inbound/web/dto/task/request/UpdateTaskStatusRequest.java b/src/main/java/clap/server/adapter/inbound/web/dto/task/request/UpdateTaskStatusRequest.java new file mode 100644 index 00000000..3a742ca5 --- /dev/null +++ b/src/main/java/clap/server/adapter/inbound/web/dto/task/request/UpdateTaskStatusRequest.java @@ -0,0 +1,10 @@ +package clap.server.adapter.inbound.web.dto.task.request; + +import clap.server.adapter.outbound.persistense.entity.task.constant.TaskStatus; +import jakarta.validation.constraints.NotNull; + +public record UpdateTaskStatusRequest( + @NotNull + TaskStatus taskStatus +) { +} diff --git a/src/main/java/clap/server/adapter/inbound/web/task/ChangeTaskController.java b/src/main/java/clap/server/adapter/inbound/web/task/ChangeTaskController.java index 82b3bf21..723c919a 100644 --- a/src/main/java/clap/server/adapter/inbound/web/task/ChangeTaskController.java +++ b/src/main/java/clap/server/adapter/inbound/web/task/ChangeTaskController.java @@ -4,9 +4,9 @@ import clap.server.adapter.inbound.web.dto.task.request.ApprovalTaskRequest; import clap.server.adapter.inbound.web.dto.task.request.UpdateTaskLabelRequest; import clap.server.adapter.inbound.web.dto.task.request.UpdateTaskProcessorRequest; +import clap.server.adapter.inbound.web.dto.task.request.UpdateTaskStatusRequest; import clap.server.adapter.inbound.web.dto.task.response.ApprovalTaskResponse; import clap.server.adapter.outbound.persistense.entity.log.constant.LogStatus; -import clap.server.adapter.outbound.persistense.entity.task.constant.TaskStatus; import clap.server.application.port.inbound.task.ApprovalTaskUsecase; import clap.server.application.port.inbound.task.UpdateTaskLabelUsecase; import clap.server.application.port.inbound.task.UpdateTaskProcessorUsecase; @@ -36,6 +36,7 @@ public class ChangeTaskController { private final UpdateTaskProcessorUsecase updateTaskProcessorUsecase; private final UpdateTaskLabelUsecase updateTaskLabelUsecase; private final ApprovalTaskUsecase approvalTaskUsecase; + @LogType(LogStatus.STATUS_CHANGED) @Operation(summary = "작업 상태 변경") @Secured("ROLE_MANAGER") @@ -45,13 +46,13 @@ public void updateTaskState( @AuthenticationPrincipal SecurityUserDetails userInfo, @Parameter(description = "변경하고 싶은 작업 상태", schema = @Schema(allowableValues = {"IN_PROGRESS", "IN_REVIEWING", "COMPLETED"})) - @RequestBody TaskStatus taskStatus) { + @RequestBody @Valid UpdateTaskStatusRequest request) { - updateTaskStatusUsecase.updateTaskStatus(userInfo.getUserId(), taskId, taskStatus); + updateTaskStatusUsecase.updateTaskStatus(userInfo.getUserId(), taskId, request.taskStatus()); } @LogType(LogStatus.ASSIGNER_CHANGED) - @Operation(summary = "작업 처리자 변경") + @Operation(summary = "작업 담당자 변경") @Secured({"ROLE_MANAGER"}) @PatchMapping("/{taskId}/processor") public void updateTaskProcessor( @@ -70,6 +71,7 @@ public void updateTaskLabel( @Valid @RequestBody UpdateTaskLabelRequest updateTaskLabelRequest) { updateTaskLabelUsecase.updateTaskLabel(taskId, userInfo.getUserId(), updateTaskLabelRequest); } + @LogType(LogStatus.REQUEST_APPROVED) @Operation(summary = "작업 승인") @Secured({"ROLE_MANAGER"}) diff --git a/src/main/java/clap/server/adapter/outbound/persistense/entity/log/constant/LogStatus.java b/src/main/java/clap/server/adapter/outbound/persistense/entity/log/constant/LogStatus.java index 85d283c6..849cb05b 100644 --- a/src/main/java/clap/server/adapter/outbound/persistense/entity/log/constant/LogStatus.java +++ b/src/main/java/clap/server/adapter/outbound/persistense/entity/log/constant/LogStatus.java @@ -12,7 +12,7 @@ public enum LogStatus { REQUEST_UPDATED("요청 수정"), REQUEST_CANCELLED("요청 취소"), REQUEST_APPROVED("요청 승인"), - ASSIGNER_CHANGED("처리자 변경"), + ASSIGNER_CHANGED("담당자 변경"), COMMENT_ADDED("댓글 추가"), COMMENT_UPDATED("댓글 수정"), STATUS_CHANGED("작업 상태 변경"), diff --git a/src/main/java/clap/server/adapter/outbound/persistense/entity/notification/constant/NotificationType.java b/src/main/java/clap/server/adapter/outbound/persistense/entity/notification/constant/NotificationType.java index 955db493..efa40218 100644 --- a/src/main/java/clap/server/adapter/outbound/persistense/entity/notification/constant/NotificationType.java +++ b/src/main/java/clap/server/adapter/outbound/persistense/entity/notification/constant/NotificationType.java @@ -9,8 +9,8 @@ public enum NotificationType { COMMENT("댓글"), TASK_REQUESTED("작업 요청"), STATUS_SWITCHED("상태 전환"), - PROCESSOR_ASSIGNED("처리자 할당"), - PROCESSOR_CHANGED("처리자 변경"), + PROCESSOR_ASSIGNED("담당자 할당"), + PROCESSOR_CHANGED("담당자 변경"), INVITATION("회원가입 초대"); private final String description; diff --git a/src/main/java/clap/server/adapter/outbound/persistense/entity/task/constant/TaskHistoryType.java b/src/main/java/clap/server/adapter/outbound/persistense/entity/task/constant/TaskHistoryType.java index 3b7861a9..360eb05c 100644 --- a/src/main/java/clap/server/adapter/outbound/persistense/entity/task/constant/TaskHistoryType.java +++ b/src/main/java/clap/server/adapter/outbound/persistense/entity/task/constant/TaskHistoryType.java @@ -9,8 +9,8 @@ public enum TaskHistoryType { COMMENT("댓글"), COMMENT_FILE("댓글 첨부파일"), STATUS_SWITCHED("상태 전환"), - PROCESSOR_ASSIGNED("처리자 할당"), - PROCESSOR_CHANGED("처리자 변경"), + PROCESSOR_ASSIGNED("담당자 할당"), + PROCESSOR_CHANGED("담당자 변경"), TASK_TERMINATED("작업 종료됨"); private final String description;