Merge pull request 'feat/infer_dev_260107' (#177) from feat/infer_dev_260107 into develop

Reviewed-on: https://kamco.gitea.gs.dabeeo.com/dabeeo/kamco-dabeeo-backoffice/pulls/177
This commit is contained in:
2026-01-12 09:43:48 +09:00
4 changed files with 57 additions and 39 deletions

View File

@@ -19,7 +19,9 @@ import org.springframework.data.domain.Pageable;
public class InferenceResultDto { public class InferenceResultDto {
/** 목록조회 dto */ /**
* 목록조회 dto
*/
@Getter @Getter
@Setter @Setter
@AllArgsConstructor @AllArgsConstructor
@@ -31,14 +33,20 @@ public class InferenceResultDto {
private String status; private String status;
private String mapSheetCnt; private String mapSheetCnt;
private Long detectingCnt; private Long detectingCnt;
@JsonFormatDttm private ZonedDateTime startTime; @JsonFormatDttm
@JsonFormatDttm private ZonedDateTime endTime; private ZonedDateTime startTime;
@JsonFormatDttm private ZonedDateTime elapsedTime; @JsonFormatDttm
private ZonedDateTime endTime;
@JsonFormatDttm
private ZonedDateTime elapsedTime;
private Boolean applyYn; private Boolean applyYn;
@JsonFormatDttm private ZonedDateTime applyDttm; @JsonFormatDttm
private ZonedDateTime applyDttm;
} }
/** 목록조회 검색 조건 dto */ /**
* 목록조회 검색 조건 dto
*/
@Getter @Getter
@Setter @Setter
@NoArgsConstructor @NoArgsConstructor
@@ -60,7 +68,9 @@ public class InferenceResultDto {
} }
} }
/** 탐지 데이터 옵션 dto */ /**
* 탐지 데이터 옵션 dto
*/
@Getter @Getter
@AllArgsConstructor @AllArgsConstructor
public enum MapSheetScope implements EnumType { public enum MapSheetScope implements EnumType {
@@ -81,7 +91,9 @@ public class InferenceResultDto {
} }
} }
/** 분석대상 도엽 enum */ /**
* 분석대상 도엽 enum
*/
@Getter @Getter
@AllArgsConstructor @AllArgsConstructor
public enum DetectOption implements EnumType { public enum DetectOption implements EnumType {
@@ -101,7 +113,9 @@ public class InferenceResultDto {
} }
} }
/** 변화탐지 실행 정보 저장 요청 정보 */ /**
* 변화탐지 실행 정보 저장 요청 정보
*/
@Getter @Getter
@Setter @Setter
@NoArgsConstructor @NoArgsConstructor
@@ -112,17 +126,17 @@ public class InferenceResultDto {
@NotBlank @NotBlank
private String title; private String title;
@Schema(description = "M1", example = "2") @Schema(description = "M1", example = "785a845b-1b16-46c5-bf12-6c3258523c2a")
@NotNull @NotNull
private Long model1Uuid; private UUID model1Uuid;
@Schema(description = "M2", example = "4") @Schema(description = "M2", example = "4ca57bab-5c68-419e-83bf-7fae0b254b47")
@NotNull @NotNull
private Long model2Uuid; private UUID model2Uuid;
@Schema(description = "M3", example = "7") @Schema(description = "M3", example = "6b0ce3af-0070-463b-8b7b-4d5e837a472e")
@NotNull @NotNull
private Long model3Uuid; private UUID model3Uuid;
@Schema(description = "비교년도", example = "2023") @Schema(description = "비교년도", example = "2023")
@NotNull @NotNull
@@ -140,13 +154,13 @@ public class InferenceResultDto {
@Schema(description = "탐지 데이터 옵션 - 추론제외(EXCL), 이전 년도 도엽 사용(PREV)", example = "EXCL") @Schema(description = "탐지 데이터 옵션 - 추론제외(EXCL), 이전 년도 도엽 사용(PREV)", example = "EXCL")
@NotBlank @NotBlank
@EnumValid( @EnumValid(
enumClass = DetectOption.class, enumClass = DetectOption.class,
message = "탐지 데이터 옵션은 '추론제외', '이전 년도 도엽 사용' 만 사용 가능합니다.") message = "탐지 데이터 옵션은 '추론제외', '이전 년도 도엽 사용' 만 사용 가능합니다.")
private String detectOption; private String detectOption;
@Schema( @Schema(
description = "5k 도협 번호 목록", description = "5k 도협 번호 목록",
example = "[\"37914034\",\"37914024\",\"37914023\",\"37914014\",\"37914005\",\"37914004\"]") example = "[\"37914034\",\"37914024\",\"37914023\",\"37914014\",\"37914005\",\"37914004\"]")
@NotNull @NotNull
private List<String> mapSheetNum; private List<String> mapSheetNum;
} }

View File

@@ -142,6 +142,7 @@ public class ModelMngDto {
private String clsModelFileName; private String clsModelFileName;
private String clsModelVersion; private String clsModelVersion;
private Double priority; private Double priority;
private String recentUseDttm;
} }
@Schema(name = "ModelAddReq", description = "모델 등록 req") @Schema(name = "ModelAddReq", description = "모델 등록 req")
@@ -198,6 +199,7 @@ public class ModelMngDto {
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
public static class ModelMetricAddReq { public static class ModelMetricAddReq {
private Long modelUid; private Long modelUid;
private Long modelVerUid; private Long modelVerUid;
private double f1Score; private double f1Score;

View File

@@ -25,9 +25,9 @@ public class MapSheetLearnEntity {
@Id @Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "tb_map_sheet_learn_id_gen") @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "tb_map_sheet_learn_id_gen")
@SequenceGenerator( @SequenceGenerator(
name = "tb_map_sheet_learn_id_gen", name = "tb_map_sheet_learn_id_gen",
sequenceName = "tb_map_sheet_learn_uid", sequenceName = "tb_map_sheet_learn_uid",
allocationSize = 1) allocationSize = 1)
@Column(name = "id", nullable = false) @Column(name = "id", nullable = false)
private Long id; private Long id;
@@ -44,14 +44,14 @@ public class MapSheetLearnEntity {
@Column(name = "status", length = 10) @Column(name = "status", length = 10)
private String status; private String status;
@Column(name = "m1_model_uid") @Column(name = "m1_model_uuid")
private Long m1ModelUid; private UUID m1ModelUuid;
@Column(name = "m2_model_uid") @Column(name = "m2_model_uuid")
private Long m2ModelUid; private UUID m2ModelUuid;
@Column(name = "m3_model_uid") @Column(name = "m3_model_uuid")
private Long m3ModelUid; private UUID m3ModelUuid;
@Column(name = "compare_yyyy") @Column(name = "compare_yyyy")
private Integer compareYyyy; private Integer compareYyyy;
@@ -105,15 +105,15 @@ public class MapSheetLearnEntity {
public InferenceResultDto.ResultList toDto() { public InferenceResultDto.ResultList toDto() {
return new InferenceResultDto.ResultList( return new InferenceResultDto.ResultList(
this.uuid, this.uuid,
this.title, this.title,
this.status, this.status,
this.mapSheetCnt, this.mapSheetCnt,
this.detectingCnt, this.detectingCnt,
this.inferStartDttm, this.inferStartDttm,
this.inferEndDttm, this.inferEndDttm,
this.elapsedTime, this.elapsedTime,
this.applyYn, this.applyYn,
this.applyDttm); this.applyDttm);
} }
} }

View File

@@ -89,7 +89,9 @@ public class ModelMngRepositoryImpl extends QuerydslRepositorySupport
modelMngEntity.clsModelPath, modelMngEntity.clsModelPath,
modelMngEntity.clsModelFileName, modelMngEntity.clsModelFileName,
modelMngEntity.clsModelVersion, modelMngEntity.clsModelVersion,
modelMngEntity.priority)) modelMngEntity.priority,
Expressions.stringTemplate(
"to_char({0}, 'YYYY-MM-DD')", modelMngEntity.recentUseDttm)))
.from(modelMngEntity) .from(modelMngEntity)
.innerJoin(modelResultMetricEntity) .innerJoin(modelResultMetricEntity)
.on(modelMngEntity.modelUid.eq(modelResultMetricEntity.modelUid)) .on(modelMngEntity.modelUid.eq(modelResultMetricEntity.modelUid))