From a285cc88eda7e855a6c3c2c10f9f187c68c813c9 Mon Sep 17 00:00:00 2001 From: teddy Date: Wed, 7 Jan 2026 18:26:54 +0900 Subject: [PATCH] =?UTF-8?q?=EC=B6=94=EB=A1=A0=EA=B4=80=EB=A6=AC=20?= =?UTF-8?q?=EB=AA=A9=EB=A1=9D=20=EC=9E=91=EC=97=85=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InferenceResultMngApiController.java | 12 +++ .../inference/dto/InferenceResultMngDto.java | 46 ++++++++++ .../service/InferenceResultMngService.java | 10 +++ .../core/InferenceResultMngCoreService.java | 8 ++ .../postgres/entity/MapSheetLearnEntity.java | 84 +++++++++++++++++++ .../InferenceResultMngRepository.java | 7 ++ .../InferenceResultMngRepositoryCustom.java | 3 + .../InferenceResultMngRepositoryImpl.java | 6 ++ 8 files changed, 176 insertions(+) create mode 100644 src/main/java/com/kamco/cd/kamcoback/inference/InferenceResultMngApiController.java create mode 100644 src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceResultMngDto.java create mode 100644 src/main/java/com/kamco/cd/kamcoback/inference/service/InferenceResultMngService.java create mode 100644 src/main/java/com/kamco/cd/kamcoback/postgres/core/InferenceResultMngCoreService.java create mode 100644 src/main/java/com/kamco/cd/kamcoback/postgres/entity/MapSheetLearnEntity.java create mode 100644 src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepository.java create mode 100644 src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepositoryCustom.java create mode 100644 src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepositoryImpl.java diff --git a/src/main/java/com/kamco/cd/kamcoback/inference/InferenceResultMngApiController.java b/src/main/java/com/kamco/cd/kamcoback/inference/InferenceResultMngApiController.java new file mode 100644 index 00000000..143b77f6 --- /dev/null +++ b/src/main/java/com/kamco/cd/kamcoback/inference/InferenceResultMngApiController.java @@ -0,0 +1,12 @@ +package com.kamco.cd.kamcoback.inference; + +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@Tag(name = "추론관리", description = "어드민 홈 > 추론관리 > 분석결과") +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/inference") +public class InferenceResultMngApiController {} diff --git a/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceResultMngDto.java b/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceResultMngDto.java new file mode 100644 index 00000000..9cb66320 --- /dev/null +++ b/src/main/java/com/kamco/cd/kamcoback/inference/dto/InferenceResultMngDto.java @@ -0,0 +1,46 @@ +package com.kamco.cd.kamcoback.inference.dto; + +import com.kamco.cd.kamcoback.common.utils.enums.EnumType; +import lombok.AllArgsConstructor; +import lombok.Getter; + +public class InferenceResultMngDto { + + @Getter + @AllArgsConstructor + public enum DetectOption implements EnumType { + ALL("전체"), + PART("부분"), + ; + private final String desc; + + @Override + public String getId() { + return name(); + } + + @Override + public String getText() { + return desc; + } + } + + @Getter + @AllArgsConstructor + public enum MapSheetScope implements EnumType { + EXCL("추론제외"), + PREV("이전 년도 도엽 사용"), + ; + private final String desc; + + @Override + public String getId() { + return name(); + } + + @Override + public String getText() { + return desc; + } + } +} diff --git a/src/main/java/com/kamco/cd/kamcoback/inference/service/InferenceResultMngService.java b/src/main/java/com/kamco/cd/kamcoback/inference/service/InferenceResultMngService.java new file mode 100644 index 00000000..efe66da3 --- /dev/null +++ b/src/main/java/com/kamco/cd/kamcoback/inference/service/InferenceResultMngService.java @@ -0,0 +1,10 @@ +package com.kamco.cd.kamcoback.inference.service; + +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +@RequiredArgsConstructor +@Transactional(readOnly = true) +public class InferenceResultMngService {} diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/core/InferenceResultMngCoreService.java b/src/main/java/com/kamco/cd/kamcoback/postgres/core/InferenceResultMngCoreService.java new file mode 100644 index 00000000..5235fb06 --- /dev/null +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/core/InferenceResultMngCoreService.java @@ -0,0 +1,8 @@ +package com.kamco.cd.kamcoback.postgres.core; + +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +public class InferenceResultMngCoreService {} diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/entity/MapSheetLearnEntity.java b/src/main/java/com/kamco/cd/kamcoback/postgres/entity/MapSheetLearnEntity.java new file mode 100644 index 00000000..1393d011 --- /dev/null +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/entity/MapSheetLearnEntity.java @@ -0,0 +1,84 @@ +package com.kamco.cd.kamcoback.postgres.entity; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.SequenceGenerator; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Size; +import java.time.ZonedDateTime; +import java.util.UUID; +import lombok.Getter; +import lombok.Setter; +import org.hibernate.annotations.ColumnDefault; + +@Getter +@Setter +@Entity +@Table(name = "tb_map_sheet_learn") +public class MapSheetLearnEntity { + + @Id + @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "tb_map_sheet_learn_id_gen") + @SequenceGenerator( + name = "tb_map_sheet_learn_id_gen", + sequenceName = "tb_map_sheet_learn_uid", + allocationSize = 1) + @Column(name = "id", nullable = false) + private Long id; + + @ColumnDefault("gen_random_uuid()") + @Column(name = "uuid") + private UUID uuid = UUID.randomUUID(); + + @Column(name = "m1_model_uid") + private Long m1ModelUid; + + @Column(name = "m2_model_uid") + private Long m2ModelUid; + + @Column(name = "m3_model_uid") + private Long m3ModelUid; + + @Column(name = "compare_yyyy") + private Integer compareYyyy; + + @Column(name = "target_yyyy") + private Integer targetYyyy; + + @Size(max = 20) + @Column(name = "detect_option", length = 20) + private String detectOption; + + @Size(max = 20) + @Column(name = "map_sheet_scope", length = 20) + private String mapSheetScope; + + @Column(name = "detecting_cnt") + private Long detectingCnt; + + @Column(name = "elapsed_time") + private ZonedDateTime elapsedTime; + + @Column(name = "apply_yn") + private Boolean applyYn; + + @Column(name = "apply_dttm") + private ZonedDateTime applyDttm; + + @ColumnDefault("now()") + @Column(name = "created_dttm") + private ZonedDateTime createdDttm = ZonedDateTime.now(); + + @Column(name = "created_uid") + private Long createdUid; + + @ColumnDefault("now()") + @Column(name = "updated_dttm") + private ZonedDateTime updatedDttm; + + @Column(name = "updated_uid") + private Long updatedUid; +} diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepository.java b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepository.java new file mode 100644 index 00000000..d54bbad3 --- /dev/null +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepository.java @@ -0,0 +1,7 @@ +package com.kamco.cd.kamcoback.postgres.repository.Inference; + +import com.kamco.cd.kamcoback.postgres.entity.MapSheetLearnEntity; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface InferenceResultMngRepository + extends JpaRepository, InferenceResultMngRepositoryCustom {} diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepositoryCustom.java b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepositoryCustom.java new file mode 100644 index 00000000..58628324 --- /dev/null +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepositoryCustom.java @@ -0,0 +1,3 @@ +package com.kamco.cd.kamcoback.postgres.repository.Inference; + +public interface InferenceResultMngRepositoryCustom {} diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepositoryImpl.java b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepositoryImpl.java new file mode 100644 index 00000000..cfae309e --- /dev/null +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/Inference/InferenceResultMngRepositoryImpl.java @@ -0,0 +1,6 @@ +package com.kamco.cd.kamcoback.postgres.repository.Inference; + +import org.springframework.stereotype.Repository; + +@Repository +public class InferenceResultMngRepositoryImpl implements InferenceResultMngRepositoryCustom {}