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 70bee596..6d307a61 100644 --- a/src/main/java/clap/server/application/service/task/UpdateTaskService.java +++ b/src/main/java/clap/server/application/service/task/UpdateTaskService.java @@ -5,6 +5,7 @@ import clap.server.adapter.inbound.web.dto.task.request.UpdateTaskRequest; import clap.server.adapter.inbound.web.dto.task.response.UpdateTaskResponse; import clap.server.adapter.outbound.persistense.entity.notification.constant.NotificationType; +import clap.server.adapter.outbound.persistense.entity.task.constant.TaskHistoryType; import clap.server.adapter.outbound.persistense.entity.task.constant.TaskStatus; import clap.server.application.mapper.AttachmentMapper; import clap.server.application.mapper.TaskResponseMapper; @@ -19,13 +20,11 @@ import clap.server.application.port.outbound.s3.S3UploadPort; import clap.server.application.port.outbound.task.CommandAttachmentPort; import clap.server.application.port.outbound.task.LoadAttachmentPort; +import clap.server.application.port.outbound.taskhistory.CommandTaskHistoryPort; import clap.server.application.service.webhook.SendNotificationService; import clap.server.common.annotation.architecture.ApplicationService; import clap.server.domain.model.member.Member; -import clap.server.domain.model.task.Attachment; -import clap.server.domain.model.task.Category; -import clap.server.domain.model.task.Label; -import clap.server.domain.model.task.Task; +import clap.server.domain.model.task.*; import clap.server.domain.policy.attachment.FilePathPolicy; import clap.server.exception.ApplicationException; import clap.server.exception.code.TaskErrorCode; @@ -52,6 +51,7 @@ public class UpdateTaskService implements UpdateTaskUsecase, UpdateTaskStatusUse private final LoadAttachmentPort loadAttachmentPort; private final LabelService labelService; private final CommandAttachmentPort commandAttachmentPort; + private final CommandTaskHistoryPort commandTaskHistoryPort; private final S3UploadPort s3UploadPort; @Override @@ -83,7 +83,8 @@ public void updateTaskStatus(Long memberId, Long taskId, TaskStatus taskStatus) if(!task.getTaskStatus().equals(taskStatus)){ task.updateTaskStatus(taskStatus); Task updateTask = taskService.upsert(task); - + TaskHistory taskHistory = TaskHistory.createTaskHistory(TaskHistoryType.STATUS_SWITCHED, task, taskStatus.getDescription(), null,null); + commandTaskHistoryPort.save(taskHistory); publishNotification(updateTask, NotificationType.STATUS_SWITCHED, String.valueOf(updateTask.getTaskStatus())); } } @@ -98,6 +99,8 @@ public void updateTaskProcessor(Long taskId, Long userId, UpdateTaskProcessorReq Task task = taskService.findById(taskId); task.updateProcessor(processor); Task updateTask = taskService.upsert(task); + TaskHistory taskHistory = TaskHistory.createTaskHistory(TaskHistoryType.PROCESSOR_CHANGED, task, null, processor,null); + commandTaskHistoryPort.save(taskHistory); publishNotification(updateTask, NotificationType.PROCESSOR_CHANGED, updateTask.getProcessor().getNickname()); }