diff --git a/src/main/java/com/kamco/cd/training/model/dto/ModelTrainDetailDto.java b/src/main/java/com/kamco/cd/training/model/dto/ModelTrainDetailDto.java index e93e4c9..8aedf9f 100644 --- a/src/main/java/com/kamco/cd/training/model/dto/ModelTrainDetailDto.java +++ b/src/main/java/com/kamco/cd/training/model/dto/ModelTrainDetailDto.java @@ -179,6 +179,7 @@ public class ModelTrainDetailDto { private ModelConfigDto.Basic etcConfig; private TransferHyperSummary modelTrainHyper; private List modelTrainDataset; + private List beforeTrainDataset; } @Getter diff --git a/src/main/java/com/kamco/cd/training/model/dto/ModelTrainMngDto.java b/src/main/java/com/kamco/cd/training/model/dto/ModelTrainMngDto.java index 54d174b..da686e7 100644 --- a/src/main/java/com/kamco/cd/training/model/dto/ModelTrainMngDto.java +++ b/src/main/java/com/kamco/cd/training/model/dto/ModelTrainMngDto.java @@ -47,6 +47,8 @@ public class ModelTrainMngDto { private ZonedDateTime packingStrtDttm; private ZonedDateTime packingEndDttm; + private Long beforeModelId; + public String getStatusName() { if (this.statusCd == null || this.statusCd.isBlank()) return null; try { diff --git a/src/main/java/com/kamco/cd/training/model/service/ModelTrainDetailService.java b/src/main/java/com/kamco/cd/training/model/service/ModelTrainDetailService.java index 5e11220..0cc0fd5 100644 --- a/src/main/java/com/kamco/cd/training/model/service/ModelTrainDetailService.java +++ b/src/main/java/com/kamco/cd/training/model/service/ModelTrainDetailService.java @@ -96,10 +96,34 @@ public class ModelTrainDetailService { dataSets = mngCoreService.getDatasetSelectG2G3List(datasetReq); } + DatasetReq beforeDatasetReq = new DatasetReq(); + List beforeDatasetIds = new ArrayList<>(); + List beforeDataSets = new ArrayList<>(); + + Long beforeModelId = modelInfo.getBeforeModelId(); + if (beforeModelId != null) { + Basic beforeInfo = modelTrainDetailCoreService.findByModelBeforeId(beforeModelId); + List beforeDatasets = + modelTrainDetailCoreService.getByModelMappingDataset(beforeInfo.getUuid()); + + for (MappingDataset before : beforeDatasets) { + beforeDatasetIds.add(before.getDatasetId()); + } + beforeDatasetReq.setIds(beforeDatasetIds); + beforeDatasetReq.setModelNo(modelInfo.getModelNo()); + + if (beforeInfo.getModelNo().equals(ModelType.G1.getId())) { + beforeDataSets = mngCoreService.getDatasetSelectG1List(beforeDatasetReq); + } else { + beforeDataSets = mngCoreService.getDatasetSelectG2G3List(beforeDatasetReq); + } + } + TransferDetailDto transferDetailDto = new TransferDetailDto(); transferDetailDto.setEtcConfig(configInfo); transferDetailDto.setModelTrainHyper(hyperSummary); transferDetailDto.setModelTrainDataset(dataSets); + transferDetailDto.setBeforeTrainDataset(beforeDataSets); return transferDetailDto; } diff --git a/src/main/java/com/kamco/cd/training/postgres/core/ModelTrainDetailCoreService.java b/src/main/java/com/kamco/cd/training/postgres/core/ModelTrainDetailCoreService.java index 6e1b2b9..1839991 100644 --- a/src/main/java/com/kamco/cd/training/postgres/core/ModelTrainDetailCoreService.java +++ b/src/main/java/com/kamco/cd/training/postgres/core/ModelTrainDetailCoreService.java @@ -107,4 +107,9 @@ public class ModelTrainDetailCoreService { public List findModelTrainProgressInfo(UUID uuid) { return modelDetailRepository.findModelTrainProgressInfo(uuid); } + + public Basic findByModelBeforeId(Long beforeModelId) { + ModelMasterEntity entity = modelDetailRepository.findByModelBeforeId(beforeModelId); + return entity.toDto(); + } } diff --git a/src/main/java/com/kamco/cd/training/postgres/entity/ModelMasterEntity.java b/src/main/java/com/kamco/cd/training/postgres/entity/ModelMasterEntity.java index ea2f6c2..32303e3 100644 --- a/src/main/java/com/kamco/cd/training/postgres/entity/ModelMasterEntity.java +++ b/src/main/java/com/kamco/cd/training/postgres/entity/ModelMasterEntity.java @@ -140,6 +140,7 @@ public class ModelMasterEntity { this.requestPath, this.packingState, this.packingStrtDttm, - this.packingEndDttm); + this.packingEndDttm, + this.beforeModelId); } } diff --git a/src/main/java/com/kamco/cd/training/postgres/repository/model/ModelDetailRepositoryCustom.java b/src/main/java/com/kamco/cd/training/postgres/repository/model/ModelDetailRepositoryCustom.java index dcde833..57412b8 100644 --- a/src/main/java/com/kamco/cd/training/postgres/repository/model/ModelDetailRepositoryCustom.java +++ b/src/main/java/com/kamco/cd/training/postgres/repository/model/ModelDetailRepositoryCustom.java @@ -40,4 +40,6 @@ public interface ModelDetailRepositoryCustom { ModelFileInfo getModelTrainFileInfo(UUID uuid); List findModelTrainProgressInfo(UUID uuid); + + ModelMasterEntity findByModelBeforeId(Long beforeModelId); } diff --git a/src/main/java/com/kamco/cd/training/postgres/repository/model/ModelDetailRepositoryImpl.java b/src/main/java/com/kamco/cd/training/postgres/repository/model/ModelDetailRepositoryImpl.java index 014c201..9ed4df9 100644 --- a/src/main/java/com/kamco/cd/training/postgres/repository/model/ModelDetailRepositoryImpl.java +++ b/src/main/java/com/kamco/cd/training/postgres/repository/model/ModelDetailRepositoryImpl.java @@ -355,4 +355,12 @@ public class ModelDetailRepositoryImpl implements ModelDetailRepositoryCustom { return steps; } + + @Override + public ModelMasterEntity findByModelBeforeId(Long beforeModelId) { + return queryFactory + .selectFrom(modelMasterEntity) + .where(modelMasterEntity.id.eq(beforeModelId)) + .fetchOne(); + } }