From 9a06955e32b190097cc493d29f6a91c9a0034a0d Mon Sep 17 00:00:00 2001 From: teddy Date: Fri, 28 Nov 2025 17:29:09 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B6=84=EC=84=9D=EA=B2=B0=EA=B3=BC=20?= =?UTF-8?q?=EC=83=81=EC=84=B8=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inference/dto/InferenceResultDto.java | 43 +++---------------- .../service/InferenceResultService.java | 20 ++++++++- .../core/InferenceResultCoreService.java | 11 +++++ .../InferenceResultRepositoryCustom.java | 3 ++ .../InferenceResultRepositoryImpl.java | 12 ++++++ 5 files changed, 51 insertions(+), 38 deletions(-) diff --git a/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceResultDto.java b/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceResultDto.java index ee1506e3..98c80c31 100644 --- a/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceResultDto.java +++ b/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceResultDto.java @@ -148,47 +148,12 @@ public class InferenceResultDto { @Getter public static class Dashboard { - Integer compareYyyy; - Integer targetYyyy; - Long mapSheetNum; - String classBeforeName; String classAfterName; - Long classBeforeCnt; Long classAfterCnt; - @JsonFormatDttm ZonedDateTime createdDttm; - Long createdUid; - @JsonFormatDttm ZonedDateTime updatedDttm; - Long updatedUid; - Long refMapSheetNum; - Long dataUid; - public Dashboard( - Integer compareYyyy, - Integer targetYyyy, - Long mapSheetNum, - String classBeforeName, - String classAfterName, - Long classBeforeCnt, - Long classAfterCnt, - ZonedDateTime createdDttm, - Long createdUid, - ZonedDateTime updatedDttm, - Long updatedUid, - Long refMapSheetNum, - Long dataUid) { - this.compareYyyy = compareYyyy; - this.targetYyyy = targetYyyy; - this.mapSheetNum = mapSheetNum; - this.classBeforeName = classBeforeName; + public Dashboard(String classAfterName, Long classAfterCnt) { this.classAfterName = classAfterName; - this.classBeforeCnt = classBeforeCnt; this.classAfterCnt = classAfterCnt; - this.createdDttm = createdDttm; - this.createdUid = createdUid; - this.updatedDttm = updatedDttm; - this.updatedUid = updatedUid; - this.refMapSheetNum = refMapSheetNum; - this.dataUid = dataUid; } } @@ -196,9 +161,13 @@ public class InferenceResultDto { public static class Detail { AnalResSummary summary; + List dashboard; + Long totalCnt; - public Detail(AnalResSummary summary) { + public Detail(AnalResSummary summary, List dashboard, Long totalCnt) { this.summary = summary; + this.dashboard = dashboard; + this.totalCnt = totalCnt; } } diff --git a/src/main/java/com/kamco/cd/kamcoback/inference/service/InferenceResultService.java b/src/main/java/com/kamco/cd/kamcoback/inference/service/InferenceResultService.java index 2494a080..76490500 100644 --- a/src/main/java/com/kamco/cd/kamcoback/inference/service/InferenceResultService.java +++ b/src/main/java/com/kamco/cd/kamcoback/inference/service/InferenceResultService.java @@ -1,6 +1,7 @@ package com.kamco.cd.kamcoback.inference.service; import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto; +import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.Dashboard; import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.Detail; import com.kamco.cd.kamcoback.postgres.core.InferenceResultCoreService; import java.util.List; @@ -37,6 +38,16 @@ public class InferenceResultService { return inferenceResultCoreService.getInferenceResultSummary(id); } + /** + * 분석결과 상세 class name별 탐지 개수 + * + * @param id + * @return + */ + public List getDashboard(Long id) { + return inferenceResultCoreService.getDashboard(id); + } + /** * 분석결과 상세 목록 * @@ -57,7 +68,14 @@ public class InferenceResultService { public Detail getDetail(Long id) { // summary InferenceResultDto.AnalResSummary summary = this.getInferenceResultSummary(id); - return new Detail(summary); + + // Dashboard + List dashboards = this.getDashboard(id); + + // 전체 탐지건수 + Long totalCnt = dashboards.stream().mapToLong(Dashboard::getClassAfterCnt).sum(); + + return new Detail(summary, dashboards, totalCnt); } /** diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/core/InferenceResultCoreService.java b/src/main/java/com/kamco/cd/kamcoback/postgres/core/InferenceResultCoreService.java index 18ed6596..bbf1ea90 100644 --- a/src/main/java/com/kamco/cd/kamcoback/postgres/core/InferenceResultCoreService.java +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/core/InferenceResultCoreService.java @@ -1,6 +1,7 @@ package com.kamco.cd.kamcoback.postgres.core; import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto; +import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.Dashboard; import com.kamco.cd.kamcoback.postgres.repository.Inference.InferenceResultRepository; import jakarta.persistence.EntityNotFoundException; import java.util.List; @@ -39,6 +40,16 @@ public class InferenceResultCoreService { return summary; } + /** + * 분석결과 상세 class name별 탐지 개수 + * + * @param id + * @return + */ + public List getDashboard(Long id) { + return inferenceResultRepository.getDashboard(id); + } + /** * 분석결과 상세 목록 * diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultRepositoryCustom.java b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultRepositoryCustom.java index 11abfda5..629d4ef9 100644 --- a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultRepositoryCustom.java +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultRepositoryCustom.java @@ -1,6 +1,7 @@ package com.kamco.cd.kamcoback.postgres.repository.Inference; import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto; +import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.Dashboard; import java.util.List; import java.util.Optional; import org.springframework.data.domain.Page; @@ -16,4 +17,6 @@ public interface InferenceResultRepositoryCustom { Long id, InferenceResultDto.SearchGeoReq searchGeoReq); List getSheets(Long id); + + List getDashboard(Long id); } diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultRepositoryImpl.java b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultRepositoryImpl.java index 9c142efa..d0dcc62f 100644 --- a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultRepositoryImpl.java +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultRepositoryImpl.java @@ -1,6 +1,7 @@ package com.kamco.cd.kamcoback.postgres.repository.Inference; import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto; +import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.Dashboard; import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.SearchGeoReq; import com.kamco.cd.kamcoback.postgres.entity.QMapSheetAnalDataEntity; import com.kamco.cd.kamcoback.postgres.entity.QMapSheetAnalDataGeomEntity; @@ -134,6 +135,17 @@ public class InferenceResultRepositoryImpl implements InferenceResultRepositoryC return content; } + /** + * 분석결과 상세 class name별 탐지 개수 + * + * @param id + * @return + */ + @Override + public List getDashboard(Long id) { + return null; + } + /** * 분석결과 상세 목록 *