학습데이터제작 상태 update, ING 인 건수 API 추가

This commit is contained in:
2026-01-20 14:50:46 +09:00
parent cc4a0c024c
commit ab39ce5e85
15 changed files with 1102 additions and 964 deletions

View File

@@ -226,4 +226,12 @@ public class LabelAllocateCoreService {
public Page<WorkHistoryDto> workReviewerHistoryList(searchReq searchReq, String userId) {
return labelAllocateRepository.workReviewerHistoryList(searchReq, userId);
}
public void updateAnalInferenceMngState(UUID uuid, String status) {
labelAllocateRepository.updateAnalInferenceMngState(uuid, status);
}
public Long findLabelingIngProcessCnt() {
return labelAllocateRepository.findLabelingIngProcessCnt();
}
}

View File

@@ -4,6 +4,7 @@ import com.kamco.cd.kamcoback.postgres.repository.trainingdata.TrainingDataLabel
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.DefaultPaging;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.DetailRes;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.InferenceIdInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.LabelFeatureRequest.LabelProperties;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.LabelingGeometryInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.LabelingListDto;
@@ -29,7 +30,7 @@ public class TrainingDataLabelCoreService {
return trainingDataLabelRepository.findLabelingAssignedGeom(assignmentUid);
}
public Long findLabelingAssignmentGeoUid(String assignmentUid) {
public InferenceIdInfo findLabelingAssignmentGeoUid(String assignmentUid) {
return trainingDataLabelRepository.findLabelingAssignmentGeoUid(assignmentUid);
}
@@ -89,4 +90,8 @@ public class TrainingDataLabelCoreService {
String mapSheetNum, Integer beforeYear, Integer afterYear) {
return trainingDataLabelRepository.getCogImageUrl(mapSheetNum, beforeYear, afterYear);
}
public void updateAnalInferenceMngState(Long analUid, String status) {
trainingDataLabelRepository.updateAnalInferenceMngState(analUid, status);
}
}

View File

@@ -1,6 +1,7 @@
package com.kamco.cd.kamcoback.postgres.core;
import com.kamco.cd.kamcoback.postgres.repository.trainingdata.TrainingDataReviewRepository;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.InferenceIdInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto.DefaultPaging;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto.DetailRes;
@@ -29,7 +30,7 @@ public class TrainingDataReviewCoreService {
return trainingDataReviewRepository.findReviewAssignedGeom(operatorUid);
}
public Long findReviewOperatorGeoUid(String operatorUid) {
public InferenceIdInfo findReviewOperatorGeoUid(String operatorUid) {
return trainingDataReviewRepository.findReviewOperatorGeoUid(operatorUid);
}
@@ -89,4 +90,8 @@ public class TrainingDataReviewCoreService {
String mapSheetNum, Integer beforeYear, Integer afterYear) {
return trainingDataReviewRepository.getCogImageUrl(mapSheetNum, beforeYear, afterYear);
}
public void updateAnalInferenceMngState(Long analUid, String status) {
trainingDataReviewRepository.updateAnalInferenceMngState(analUid, status);
}
}

View File

@@ -52,7 +52,8 @@ public class InferenceResultRepositoryImpl implements InferenceResultRepositoryC
m1_model_batch_id,
m2_model_batch_id,
m3_model_batch_id,
learn_id
learn_id,
anal_state
)
SELECT
r.stage,
@@ -64,7 +65,8 @@ public class InferenceResultRepositoryImpl implements InferenceResultRepositoryC
r.m1_model_batch_id,
r.m2_model_batch_id,
r.m3_model_batch_id,
r.id
r.id,
LabelState.PENDING.getId(),
FROM tb_map_sheet_learn r
WHERE r.id = :id
ON CONFLICT (stage, compare_yyyy, target_yyyy)

View File

@@ -100,4 +100,8 @@ public interface LabelAllocateRepositoryCustom {
Page<WorkHistoryDto> workLabelHistoryList(LabelAllocateDto.searchReq searchReq, String userId);
Page<WorkHistoryDto> workReviewerHistoryList(searchReq searchReq, String userId);
void updateAnalInferenceMngState(UUID uuid, String status);
Long findLabelingIngProcessCnt();
}

View File

@@ -3,6 +3,7 @@ package com.kamco.cd.kamcoback.postgres.repository.trainingdata;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.DefaultPaging;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.DetailRes;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.InferenceIdInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.LabelFeatureRequest.LabelProperties;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.LabelingGeometryInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.LabelingListDto;
@@ -18,7 +19,7 @@ public interface TrainingDataLabelRepositoryCustom {
LabelingGeometryInfo findLabelingAssignedGeom(String assignmentUid);
Long findLabelingAssignmentGeoUid(String assignmentUid);
InferenceIdInfo findLabelingAssignmentGeoUid(String assignmentUid);
void updateLabelingStateAssignment(String assignmentUid, String status);
@@ -37,4 +38,6 @@ public interface TrainingDataLabelRepositoryCustom {
TrainingDataLabelDto.CogImageResponse getCogImageUrl(
String mapSheetNum, Integer beforeYear, Integer afterYear);
void updateAnalInferenceMngState(Long analUid, String status);
}

View File

@@ -4,6 +4,7 @@ import static com.kamco.cd.kamcoback.postgres.entity.QImageryEntity.imageryEntit
import static com.kamco.cd.kamcoback.postgres.entity.QLabelingAssignmentEntity.labelingAssignmentEntity;
import static com.kamco.cd.kamcoback.postgres.entity.QMapInkx5kEntity.mapInkx5kEntity;
import static com.kamco.cd.kamcoback.postgres.entity.QMapSheetAnalDataInferenceGeomEntity.mapSheetAnalDataInferenceGeomEntity;
import static com.kamco.cd.kamcoback.postgres.entity.QMapSheetAnalInferenceEntity.mapSheetAnalInferenceEntity;
import static com.kamco.cd.kamcoback.postgres.entity.QMapSheetLearnDataGeomEntity.mapSheetLearnDataGeomEntity;
import com.fasterxml.jackson.databind.JsonNode;
@@ -19,6 +20,7 @@ import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.DefaultPagin
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.DetailRes;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.InferenceDataGeometry;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.InferenceDataGeometry.InferenceProperties;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.InferenceIdInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.InspectionResultInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.LabelFeatureRequest.LabelProperties;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.LabelingGeometryInfo;
@@ -174,9 +176,13 @@ public class TrainingDataLabelRepositoryImpl extends QuerydslRepositorySupport
}
@Override
public Long findLabelingAssignmentGeoUid(String assignmentUid) {
public InferenceIdInfo findLabelingAssignmentGeoUid(String assignmentUid) {
return queryFactory
.select(labelingAssignmentEntity.inferenceGeomUid)
.select(
Projections.constructor(
InferenceIdInfo.class,
labelingAssignmentEntity.inferenceGeomUid,
labelingAssignmentEntity.analUid))
.from(labelingAssignmentEntity)
.where(labelingAssignmentEntity.assignmentUid.eq(UUID.fromString(assignmentUid)))
.fetchOne();
@@ -838,6 +844,16 @@ public class TrainingDataLabelRepositoryImpl extends QuerydslRepositorySupport
}
}
@Override
public void updateAnalInferenceMngState(Long analUid, String status) {
queryFactory
.update(mapSheetAnalInferenceEntity)
.set(mapSheetAnalInferenceEntity.analState, status)
.set(mapSheetAnalInferenceEntity.updatedDttm, ZonedDateTime.now())
.where(mapSheetAnalInferenceEntity.id.eq(analUid))
.execute();
}
private StringExpression makeCogUrl(NumberPath<Integer> year) {
return new CaseBuilder()
.when(imageryEntity.year.eq(year))

View File

@@ -1,5 +1,6 @@
package com.kamco.cd.kamcoback.postgres.repository.trainingdata;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.InferenceIdInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto.DefaultPaging;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto.DetailRes;
@@ -18,7 +19,7 @@ public interface TrainingDataReviewRepositoryCustom {
ReviewGeometryInfo findReviewAssignedGeom(String operatorUid);
Long findReviewOperatorGeoUid(String operatorUid);
InferenceIdInfo findReviewOperatorGeoUid(String operatorUid);
void updateReviewStateOperator(String operatorUid, String status);
@@ -37,4 +38,6 @@ public interface TrainingDataReviewRepositoryCustom {
TrainingDataReviewDto.CogImageResponse getCogImageUrl(
String mapSheetNum, Integer beforeYear, Integer afterYear);
void updateAnalInferenceMngState(Long analUid, String status);
}

View File

@@ -4,6 +4,7 @@ import static com.kamco.cd.kamcoback.postgres.entity.QImageryEntity.imageryEntit
import static com.kamco.cd.kamcoback.postgres.entity.QLabelingAssignmentEntity.labelingAssignmentEntity;
import static com.kamco.cd.kamcoback.postgres.entity.QMapInkx5kEntity.mapInkx5kEntity;
import static com.kamco.cd.kamcoback.postgres.entity.QMapSheetAnalDataInferenceGeomEntity.mapSheetAnalDataInferenceGeomEntity;
import static com.kamco.cd.kamcoback.postgres.entity.QMapSheetAnalInferenceEntity.mapSheetAnalInferenceEntity;
import static com.kamco.cd.kamcoback.postgres.entity.QMapSheetLearnDataGeomEntity.mapSheetLearnDataGeomEntity;
import static com.kamco.cd.kamcoback.postgres.entity.QMemberEntity.memberEntity;
@@ -12,6 +13,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.kamco.cd.kamcoback.label.dto.LabelAllocateDto.InspectState;
import com.kamco.cd.kamcoback.postgres.entity.LabelingAssignmentEntity;
import com.kamco.cd.kamcoback.postgres.entity.MapSheetAnalDataInferenceGeomEntity;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.InferenceIdInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto.ChangeDetectionInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto.ClassificationInfo;
@@ -177,9 +179,13 @@ public class TrainingDataReviewRepositoryImpl extends QuerydslRepositorySupport
}
@Override
public Long findReviewOperatorGeoUid(String operatorUid) {
public InferenceIdInfo findReviewOperatorGeoUid(String operatorUid) {
return queryFactory
.select(labelingAssignmentEntity.inferenceGeomUid)
.select(
Projections.constructor(
InferenceIdInfo.class,
labelingAssignmentEntity.inferenceGeomUid,
labelingAssignmentEntity.analUid))
.from(labelingAssignmentEntity)
.where(labelingAssignmentEntity.assignmentUid.eq(UUID.fromString(operatorUid)))
.fetchOne();
@@ -868,6 +874,16 @@ public class TrainingDataReviewRepositoryImpl extends QuerydslRepositorySupport
}
}
@Override
public void updateAnalInferenceMngState(Long analUid, String status) {
queryFactory
.update(mapSheetAnalInferenceEntity)
.set(mapSheetAnalInferenceEntity.analState, status)
.set(mapSheetAnalInferenceEntity.updatedDttm, ZonedDateTime.now())
.where(mapSheetAnalInferenceEntity.id.eq(analUid))
.execute();
}
private StringExpression makeCogUrl(NumberPath<Integer> year) {
return new CaseBuilder()
.when(imageryEntity.year.eq(year))