Merge remote-tracking branch 'origin/feat/infer_dev_260107' into feat/infer_dev_260107
This commit is contained in:
@@ -26,6 +26,7 @@ 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;
|
||||
import com.kamco.cd.kamcoback.postgres.core.ModelMngCoreService;
|
||||
import jakarta.persistence.EntityNotFoundException;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import java.time.ZonedDateTime;
|
||||
import java.util.ArrayList;
|
||||
@@ -100,6 +101,10 @@ public class InferenceResultService {
|
||||
req.setMapSheetNum(this.createdMngDto(req, targetList));
|
||||
}
|
||||
|
||||
if (req.getMapSheetNum().isEmpty()) {
|
||||
throw new EntityNotFoundException("분석 대상 정보가 부족합니다.");
|
||||
}
|
||||
|
||||
// 추론 테이블 저장
|
||||
UUID uuid = inferenceResultCoreService.saveInferenceInfo(req);
|
||||
this.startInference(req, uuid);
|
||||
|
||||
@@ -64,8 +64,12 @@ public class InferenceResultCoreService {
|
||||
* @param req
|
||||
*/
|
||||
public UUID saveInferenceInfo(InferenceResultDto.RegReq req) {
|
||||
|
||||
String mapSheetName =
|
||||
req.getMapSheetNum().get(0).getMapSheetName() + " 외 " + req.getMapSheetNum().size() + "건";
|
||||
req.getMapSheetNum().get(0).getMapSheetName()
|
||||
+ " 외 "
|
||||
+ (req.getMapSheetNum().size() - 1)
|
||||
+ "건";
|
||||
|
||||
if (req.getMapSheetNum().size() == 1) {
|
||||
mapSheetName =
|
||||
@@ -230,7 +234,9 @@ public class InferenceResultCoreService {
|
||||
.orElseThrow(() -> new EntityNotFoundException());
|
||||
|
||||
if (request.getType().equals("M1")) {
|
||||
entity.setM1ModelBatchId(request.getBatchId());
|
||||
if (request.getBatchId() != null) {
|
||||
entity.setM1ModelBatchId(request.getBatchId());
|
||||
}
|
||||
|
||||
if (request.getModelStartDttm() != null) {
|
||||
entity.setM1ModelStartDttm(request.getModelStartDttm());
|
||||
@@ -241,7 +247,9 @@ public class InferenceResultCoreService {
|
||||
}
|
||||
|
||||
} else if (request.getType().equals("M2")) {
|
||||
entity.setM2ModelBatchId(request.getBatchId());
|
||||
if (request.getBatchId() != null) {
|
||||
entity.setM2ModelBatchId(request.getBatchId());
|
||||
}
|
||||
|
||||
if (request.getModelStartDttm() != null) {
|
||||
entity.setM2ModelStartDttm(request.getModelStartDttm());
|
||||
@@ -252,7 +260,9 @@ public class InferenceResultCoreService {
|
||||
}
|
||||
|
||||
} else if (request.getType().equals("M3")) {
|
||||
entity.setM3ModelBatchId(request.getBatchId());
|
||||
if (request.getBatchId() != null) {
|
||||
entity.setM3ModelBatchId(request.getBatchId());
|
||||
}
|
||||
|
||||
if (request.getModelStartDttm() != null) {
|
||||
entity.setM3ModelStartDttm(request.getModelStartDttm());
|
||||
|
||||
@@ -504,7 +504,7 @@ public class MapSheetMngRepositoryImpl extends QuerydslRepositorySupport
|
||||
whereBuilder.and(mapSheetMngHstEntity.mngYyyy.eq(mngYyyy));
|
||||
whereBuilder.and(mapSheetMngHstEntity.mapSheetNum.in(mapIds));
|
||||
whereBuilder.and(mapSheetMngHstEntity.dataState.eq("DONE"));
|
||||
whereBuilder.and(mapSheetMngHstEntity.syncState.eq("DONE"));
|
||||
whereBuilder.and(mapSheetMngHstEntity.syncState.eq("DONE")); // TODO 싱크체크 or조건 추가
|
||||
whereBuilder.and(mapSheetMngHstEntity.useInference.eq("USE"));
|
||||
|
||||
return queryFactory
|
||||
|
||||
@@ -53,6 +53,10 @@ public class MapSheetInferenceJobService {
|
||||
@Transactional
|
||||
public void runBatch() {
|
||||
|
||||
if ("local".equalsIgnoreCase(profile)) {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
InferenceBatchSheet batchSheet =
|
||||
inferenceResultCoreService.getInferenceResultByStatus(Status.IN_PROGRESS.getId());
|
||||
@@ -102,7 +106,7 @@ public class MapSheetInferenceJobService {
|
||||
// 종료시간
|
||||
this.updateProcessingEndTimeByModel(batchSheet.getUuid(), ZonedDateTime.now(), "M1");
|
||||
} else if (type.equals("M2")) {
|
||||
// M1 완료되었으면 M3 실행
|
||||
// M2 완료되었으면 M3 실행
|
||||
this.startInference(
|
||||
batchSheet.getId(), batchSheet.getUuid(), "M3", batchSheet.getM3ModelUuid());
|
||||
// 종료시간
|
||||
@@ -113,10 +117,18 @@ public class MapSheetInferenceJobService {
|
||||
saveInferenceAiDto.setUuid(batchSheet.getUuid());
|
||||
saveInferenceAiDto.setStatus(Status.END.getId());
|
||||
saveInferenceAiDto.setInferEndDttm(ZonedDateTime.now());
|
||||
saveInferenceAiDto.setType(type);
|
||||
inferenceResultCoreService.update(saveInferenceAiDto);
|
||||
// 종료시간
|
||||
this.updateProcessingEndTimeByModel(batchSheet.getUuid(), ZonedDateTime.now(), "M3");
|
||||
}
|
||||
} else if ("COMPLETED_WITH_FAILURES".equals(dto.getStatus())) {
|
||||
SaveInferenceAiDto saveInferenceAiDto = new SaveInferenceAiDto();
|
||||
saveInferenceAiDto.setUuid(batchSheet.getUuid());
|
||||
saveInferenceAiDto.setStatus(Status.END.getId());
|
||||
saveInferenceAiDto.setInferEndDttm(ZonedDateTime.now());
|
||||
saveInferenceAiDto.setType(batchSheet.getRunningModelType());
|
||||
inferenceResultCoreService.update(saveInferenceAiDto);
|
||||
} else {
|
||||
SaveInferenceAiDto saveInferenceAiDto = new SaveInferenceAiDto();
|
||||
saveInferenceAiDto.setUuid(batchSheet.getUuid());
|
||||
|
||||
Reference in New Issue
Block a user