From 1d03ecce85ac7ba098d8c1193dc5d9283bfc8ef5 Mon Sep 17 00:00:00 2001 From: teddy Date: Mon, 12 Jan 2026 14:32:54 +0900 Subject: [PATCH] =?UTF-8?q?[KC-108]=20=EB=B6=84=EC=84=9D=EB=8F=84=EC=97=BD?= =?UTF-8?q?=20ai=20api=ED=98=B8=EC=B6=9C=20=ED=85=8C=EC=8A=A4=ED=8A=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inference/dto/InferenceSendDto.java | 1 + .../service/InferenceResultService.java | 21 +++++++++++++++---- .../postgres/core/MapSheetMngCoreService.java | 10 ++++++--- 3 files changed, 25 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceSendDto.java b/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceSendDto.java index 27102187..b5eab318 100644 --- a/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceSendDto.java +++ b/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceSendDto.java @@ -23,6 +23,7 @@ public class InferenceSendDto { @Getter @Setter @AllArgsConstructor + @NoArgsConstructor public static class PredRequestsAreas { private Integer input1_year; 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 61523f0e..bb37781c 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 @@ -13,6 +13,7 @@ import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.MapSheetNumDto; import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.MapSheetScope; import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.ResultList; import com.kamco.cd.kamcoback.inference.dto.InferenceSendDto; +import com.kamco.cd.kamcoback.inference.dto.InferenceSendDto.PredRequestsAreas; import com.kamco.cd.kamcoback.model.dto.ModelMngDto.Basic; import com.kamco.cd.kamcoback.postgres.core.InferenceResultCoreService; import com.kamco.cd.kamcoback.postgres.core.MapSheetMngCoreService; @@ -91,13 +92,25 @@ public class InferenceResultService { mapSheetNumList.add(mapSheetDto.getMapSheetNum()); } - this.getSceneInference(String.valueOf(req.getCompareYyyy()), mapSheetNumList); - this.getSceneInference(String.valueOf(req.getTargetYyyy()), mapSheetNumList); + String modelComparePath = + this.getSceneInference(String.valueOf(req.getCompareYyyy()), mapSheetNumList); + String modelTargetPath = + this.getSceneInference(String.valueOf(req.getTargetYyyy()), mapSheetNumList); + + PredRequestsAreas predRequestsAreas = new PredRequestsAreas(); + predRequestsAreas.setInput1_year(req.getCompareYyyy()); + predRequestsAreas.setInput2_year(req.getTargetYyyy()); + predRequestsAreas.setInput1_scene_path(modelComparePath); + predRequestsAreas.setInput2_scene_path(modelTargetPath); InferenceSendDto m1 = this.getModelInfo(req.getModel1Uuid()); InferenceSendDto m2 = this.getModelInfo(req.getModel2Uuid()); InferenceSendDto m3 = this.getModelInfo(req.getModel3Uuid()); + m1.setPredRequestsAreas(predRequestsAreas); + m2.setPredRequestsAreas(predRequestsAreas); + m3.setPredRequestsAreas(predRequestsAreas); + ensureAccepted(m1); // ensureAccepted(m2); // ensureAccepted(m3); @@ -183,8 +196,8 @@ public class InferenceResultService { * @param yyyy * @param mapSheetNums */ - private void getSceneInference(String yyyy, List mapSheetNums) { - mapSheetMngCoreService.getSceneInference(yyyy, mapSheetNums); + private String getSceneInference(String yyyy, List mapSheetNums) { + return mapSheetMngCoreService.getSceneInference(yyyy, mapSheetNums); } /** diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/core/MapSheetMngCoreService.java b/src/main/java/com/kamco/cd/kamcoback/postgres/core/MapSheetMngCoreService.java index 6108d6ee..9581ee1b 100644 --- a/src/main/java/com/kamco/cd/kamcoback/postgres/core/MapSheetMngCoreService.java +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/core/MapSheetMngCoreService.java @@ -201,20 +201,22 @@ public class MapSheetMngCoreService { } } - public void getSceneInference(String yyyy, List scenes) { + public String getSceneInference(String yyyy, List scenes) { + String outputPath = ""; + try { List sceneInference = mapSheetMngRepository.getSceneInference(yyyy, scenes); if (sceneInference == null || sceneInference.isEmpty()) { log.warn("No scene data found for year: {}", yyyy); - return; + return outputPath; } if (activeEnv.equals("local")) { syncRootDir = System.getProperty("user.home") + "/geojson"; } String filename = String.format("%s_%s.geojson", yyyy, activeEnv); - String outputPath = Paths.get(syncRootDir, filename).toString(); + outputPath = Paths.get(syncRootDir, filename).toString(); // 디렉토리가 없으면 생성 Files.createDirectories(Paths.get(syncRootDir)); @@ -230,5 +232,7 @@ public class MapSheetMngCoreService { log.error("Failed to create GeoJSON file for year: {}", yyyy, e); throw new RuntimeException("GeoJSON 파일 생성 실패: " + e.getMessage(), e); } + + return outputPath; } }