Skip to content

Commit a40eb15

Browse files
committed
CLAP-47 Clenup : 작업 데이터 스케쥴러로 엘라스틱서치에 저장하는 코드 헥사고날에 맞게 수정
<footer> - 관련: #10
1 parent d967a2b commit a40eb15

File tree

8 files changed

+19
-45
lines changed

8 files changed

+19
-45
lines changed

src/main/java/clap/server/adapter/outbound/infrastructure/elastic/TaskDocumentAdapter.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import clap.server.adapter.outbound.infrastructure.elastic.repository.TaskElasticRepository;
55
import clap.server.application.port.outbound.task.TaskDocumentPort;
66
import clap.server.common.annotation.architecture.InfrastructureAdapter;
7+
import clap.server.domain.model.task.Task;
78
import co.elastic.clients.elasticsearch._types.aggregations.AggregationBuilders;
89
import co.elastic.clients.elasticsearch._types.aggregations.MultiBucketBase;
910
import lombok.RequiredArgsConstructor;
@@ -24,8 +25,8 @@ public class TaskDocumentAdapter implements TaskDocumentPort {
2425
private final ElasticsearchOperations elasticsearchOperations;
2526

2627
@Override
27-
public void saveStatistics(List<TaskDocument> statistics) {
28-
taskElasticRepository.saveAll(statistics);
28+
public void saveStatistics(List<Task> statistics) {
29+
taskElasticRepository.saveAll(statistics.stream().map(TaskDocument::new).toList());
2930
}
3031

3132
@Override

src/main/java/clap/server/adapter/outbound/infrastructure/elastic/document/TaskDocument.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package clap.server.adapter.outbound.infrastructure.elastic.document;
22

3-
import clap.server.adapter.outbound.persistense.entity.task.TaskEntity;
3+
import clap.server.domain.model.task.Task;
44
import jakarta.persistence.Id;
55
import lombok.Getter;
66
import org.springframework.data.elasticsearch.annotations.Document;
@@ -28,13 +28,13 @@ public class TaskDocument {
2828
@Field(name="created_at")
2929
private LocalDate createdAt;
3030

31-
public TaskDocument(TaskEntity taskEntity) {
31+
public TaskDocument(Task taskEntity) {
3232
this.id = taskEntity.getTaskId();
3333
this.taskCode = taskEntity.getTaskCode();
3434
this.mainCategory = taskEntity.getCategory().getMainCategory().getName();
3535
this.subCategory = taskEntity.getCategory().getName();
3636
this.status = taskEntity.getTaskStatus().name().toLowerCase();
37-
this.processor = taskEntity.getProcessor().getNickname();
37+
this.processor = taskEntity.getProcessor().getMemberInfo().getNickname();
3838
this.createdAt = taskEntity.getCreatedAt().toLocalDate();
3939
}
4040
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package clap.server.adapter.outbound.infrastructure.elastic.repository;
22

3-
import clap.server.adapter.outbound.infrastructure.elastic.entity.ElasticTask;
3+
import clap.server.adapter.outbound.infrastructure.elastic.document.TaskDocument;
44
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
55

6-
public interface TaskElasticRepository extends ElasticsearchRepository<ElasticTask, Long> {
6+
public interface TaskElasticRepository extends ElasticsearchRepository<TaskDocument, Long> {
77
}

src/main/java/clap/server/adapter/outbound/persistense/TaskPersistenceAdapter.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,13 @@
99
import clap.server.application.port.outbound.task.CommandTaskPort;
1010
import clap.server.application.port.outbound.task.LoadTaskPort;
1111
import clap.server.common.annotation.architecture.PersistenceAdapter;
12-
1312
import clap.server.domain.model.task.Task;
1413
import lombok.RequiredArgsConstructor;
1514
import org.springframework.data.domain.Page;
1615
import org.springframework.data.domain.Pageable;
1716

17+
import java.time.LocalDateTime;
18+
import java.util.List;
1819
import java.util.Optional;
1920

2021

@@ -42,4 +43,10 @@ public Page<FindTaskListResponse> findAllByRequesterId(Long requesterId, Pageabl
4243
.map(taskPersistenceMapper::toDomain);
4344
return taskList.map(TaskMapper::toFindTaskListResponse);
4445
}
46+
47+
@Override
48+
public List<Task> findYesterdayTaskByDate(LocalDateTime now) {
49+
return taskRepository.findYesterdayTaskByUpdatedAtIsBetween(now.minusDays(1), now)
50+
.stream().map(taskPersistenceMapper::toDomain).toList();
51+
}
4552
}

src/main/java/clap/server/adapter/outbound/persistense/TaskPersistentAdapter.java

Lines changed: 0 additions & 29 deletions
This file was deleted.

src/main/java/clap/server/application/StatisticsIndexingService.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package clap.server.application;
22

3-
import clap.server.adapter.outbound.infrastructure.elastic.document.TaskDocument;
43
import clap.server.application.port.outbound.task.LoadTaskPort;
54
import clap.server.application.port.outbound.task.TaskDocumentPort;
65
import clap.server.common.annotation.architecture.ApplicationService;
@@ -19,7 +18,6 @@ public class StatisticsIndexingService {
1918
public void IndexStatistics() {
2019
taskDocumentPort.saveStatistics(
2120
loadTaskPort.findYesterdayTaskByDate(LocalDateTime.now().withNano(0))
22-
.stream().map(TaskDocument::new).toList()
2321
);
2422
}
2523
}

src/main/java/clap/server/application/port/outbound/task/LoadTaskPort.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
package clap.server.application.port.outbound.task;
22

3-
import clap.server.adapter.outbound.persistense.entity.task.TaskEntity;
4-
import org.springframework.data.redis.stream.Task;
5-
63
import clap.server.adapter.inbound.web.dto.task.FindTaskListRequest;
74
import clap.server.adapter.inbound.web.dto.task.FindTaskListResponse;
85
import clap.server.domain.model.task.Task;
@@ -16,7 +13,7 @@
1613
public interface LoadTaskPort {
1714
Optional<Task> findById(Long id);
1815

19-
List<TaskEntity> findYesterdayTaskByDate(LocalDateTime now);
16+
List<Task> findYesterdayTaskByDate(LocalDateTime now);
2017

2118
Page<FindTaskListResponse> findAllByRequesterId(Long requesterId, Pageable pageable, FindTaskListRequest findTaskListRequest);
2219

src/main/java/clap/server/application/port/outbound/task/TaskDocumentPort.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
package clap.server.application.port.outbound.task;
22

3-
import clap.server.adapter.outbound.infrastructure.elastic.document.TaskDocument;
3+
import clap.server.domain.model.task.Task;
44

55
import java.util.List;
66
import java.util.Map;
77

88
public interface TaskDocumentPort {
9-
void saveStatistics(List<TaskDocument> statistics);
9+
void saveStatistics(List<Task> statistics);
1010

1111
Map<String, Long> findPeriodTaskRequestByPeriod(String period);
1212

0 commit comments

Comments
 (0)