This commit is contained in:
2026-01-14 15:34:45 +09:00
parent 1ae69e5665
commit 09565c1d5a
2 changed files with 128 additions and 102 deletions

View File

@@ -7,6 +7,8 @@ import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.kamco.cd.kamcoback.common.enums.DetectionClassification;
import com.kamco.cd.kamcoback.common.utils.interfaces.JsonFormatDttm;
import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.DetectOption;
import com.kamco.cd.kamcoback.inference.dto.InferenceResultDto.MapSheetScope;
import io.swagger.v3.oas.annotations.media.Schema;
import java.time.Duration;
import java.time.ZonedDateTime;
@@ -428,7 +430,7 @@ public class InferenceDetailDto {
@JsonFormatDttm private ZonedDateTime inferStartDttm;
@JsonFormatDttm private ZonedDateTime inferEndDttm;
private Duration elapsedDuration;
private String elapsedDuration;
public AnalResultInfo(
String analTitle,
@@ -447,14 +449,23 @@ public class InferenceDetailDto {
this.modelVer3 = modelVer3;
this.compareYyyy = compareYyyy;
this.targetYyyy = targetYyyy;
this.detectOption = detectOption;
this.mapSheetScope = mapSheetScope;
this.detectOption = DetectOption.getDescByCode(detectOption);
this.mapSheetScope = MapSheetScope.getDescByCode(mapSheetScope);
this.inferStartDttm = inferStartDttm;
this.inferEndDttm = inferEndDttm;
this.elapsedDuration =
Duration elapsed =
(inferStartDttm != null && inferEndDttm != null)
? Duration.between(inferStartDttm, inferEndDttm)
: null;
long seconds = elapsed.getSeconds();
long abs = Math.abs(seconds);
long h = abs / 3600;
long m = (abs % 3600) / 60;
long s = abs % 60;
this.elapsedDuration = String.format("%02d:%02d:%02d", h, m, s);
}
}
}

View File

@@ -23,6 +23,112 @@ import org.springframework.data.domain.Pageable;
public class InferenceResultDto {
/** 탐지 데이터 옵션 dto */
@Getter
@AllArgsConstructor
public enum MapSheetScope implements EnumType {
ALL("전체"),
PART("부분"),
;
private final String desc;
public static MapSheetScope fromCode(String code) {
return Arrays.stream(values()).filter(v -> v.name().equals(code)).findFirst().orElse(null);
}
public static String getDescByCode(String code) {
return fromCode(code).getDesc();
}
@Override
public String getId() {
return name();
}
@Override
public String getText() {
return desc;
}
}
/** 분석대상 도엽 enum */
@Getter
@AllArgsConstructor
public enum DetectOption implements EnumType {
EXCL("추론제외"),
PREV("이전 년도 도엽 사용"),
;
private final String desc;
public static DetectOption fromCode(String code) {
return Arrays.stream(values()).filter(v -> v.name().equals(code)).findFirst().orElse(null);
}
public static String getDescByCode(String code) {
return fromCode(code).getDesc();
}
@Override
public String getId() {
return name();
}
@Override
public String getText() {
return desc;
}
}
@Getter
@AllArgsConstructor
public enum Status implements EnumType {
READY("대기"),
IN_PROGRESS("진행중"),
END("종료"),
;
private final String desc;
public static Status fromCode(String code) {
return Arrays.stream(values()).filter(v -> v.name().equals(code)).findFirst().orElse(null);
}
public static String getDescByCode(String code) {
return fromCode(code).getDesc();
}
@Override
public String getId() {
return name();
}
@Override
public String getText() {
return desc;
}
}
@Getter
@AllArgsConstructor
public enum ServerStatus implements EnumType {
SAFETY("원활"),
CAUTION("주의"),
FAILUR("장애"),
;
private final String desc;
@Override
public String getId() {
return name();
}
@Override
public String getText() {
return desc;
}
}
/** 목록조회 dto */
@Getter
@Setter
@@ -69,75 +175,6 @@ public class InferenceResultDto {
}
}
/** 탐지 데이터 옵션 dto */
@Getter
@AllArgsConstructor
public enum MapSheetScope implements EnumType {
ALL("전체"),
PART("부분"),
;
private final String desc;
@Override
public String getId() {
return name();
}
@Override
public String getText() {
return desc;
}
}
/** 분석대상 도엽 enum */
@Getter
@AllArgsConstructor
public enum DetectOption implements EnumType {
EXCL("추론제외"),
PREV("이전 년도 도엽 사용"),
;
private final String desc;
@Override
public String getId() {
return name();
}
@Override
public String getText() {
return desc;
}
}
@Getter
@AllArgsConstructor
public enum Status implements EnumType {
READY("대기"),
IN_PROGRESS("진행중"),
END("종료"),
;
private final String desc;
@Override
public String getId() {
return name();
}
@Override
public String getText() {
return desc;
}
public static Status fromCode(String code) {
return Arrays.stream(values()).filter(v -> v.name().equals(code)).findFirst().orElse(null);
}
public static String getDescByCode(String code) {
return fromCode(code).getDesc();
}
}
/** 변화탐지 실행 정보 저장 요청 정보 */
@Getter
@Setter
@@ -220,6 +257,13 @@ public class InferenceResultDto {
private String model1Ver;
private String model2Ver;
private String model3Ver;
private String usedServerName;
private String model1VerStatus = "PROCCESING";
private String model1VerStatusName = "진행중";
private String model2VerStatus = "PROCCESING";
private String model2VerStatusName = "진행중";
private String model3VerStatus = "PROCCESING";
private String model3VerStatusName = "진행중";
public InferenceStatusDetailDto(
String title,
@@ -264,14 +308,6 @@ public class InferenceResultDto {
}
}
private String usedServerName;
private String model1VerStatus = "PROCCESING";
private String model1VerStatusName = "진행중";
private String model2VerStatus = "PROCCESING";
private String model2VerStatusName = "진행중";
private String model3VerStatus = "PROCCESING";
private String model3VerStatusName = "진행중";
public String getDetectOptionName() {
if (this.detectOption.equals("EXCL")) {
return "추론제외";
@@ -417,27 +453,6 @@ public class InferenceResultDto {
}
}
@Getter
@AllArgsConstructor
public enum ServerStatus implements EnumType {
SAFETY("원활"),
CAUTION("주의"),
FAILUR("장애"),
;
private final String desc;
@Override
public String getId() {
return name();
}
@Override
public String getText() {
return desc;
}
}
@Getter
@Setter
@AllArgsConstructor