학습데이터제작 상태 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

@@ -204,6 +204,19 @@ public class TrainingDataLabelDto {
}
}
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public static class InferenceIdInfo {
@Schema(description = "inferenceGeomUid")
private Long inferenceGeomUid;
@Schema(description = "analUid")
private Long analUid;
}
@Schema(name = "LearnDataGeometry", description = "LearnDataGeometry")
@Getter
@Setter

View File

@@ -2,11 +2,13 @@ package com.kamco.cd.kamcoback.trainingdata.service;
import com.kamco.cd.kamcoback.config.api.ApiResponseDto.ApiResponseCode;
import com.kamco.cd.kamcoback.config.api.ApiResponseDto.ResponseObj;
import com.kamco.cd.kamcoback.label.dto.LabelAllocateDto.LabelMngState;
import com.kamco.cd.kamcoback.postgres.core.TrainingDataLabelCoreService;
import com.kamco.cd.kamcoback.scheduler.service.TrainingDataReviewJobService;
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;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.LabelingGeometryInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataLabelDto.LabelingListDto;
@@ -44,8 +46,8 @@ public class TrainingDataLabelService {
public String saveLabelingFeature(LabelFeatureRequest request) {
String status = "";
String assignmentUid = request.getAssignmentUid();
Long inferenceGeomUid =
trainingDataLabelCoreService.findLabelingAssignmentGeoUid(assignmentUid);
InferenceIdInfo info = trainingDataLabelCoreService.findLabelingAssignmentGeoUid(assignmentUid);
Long inferenceGeomUid = info.getInferenceGeomUid();
if (request.getGeometry() == null || request.getGeometry().isEmpty()) {
// SKIP 상태만 업데이트
status = "SKIP";
@@ -61,6 +63,10 @@ public class TrainingDataLabelService {
// 라벨링 완료하면 실시간 검수 할당 (1건)
trainingDataReviewJobService.assignRealtime(assignmentUid);
// 회차 진행 상태 update
trainingDataLabelCoreService.updateAnalInferenceMngState(
info.getAnalUid(), LabelMngState.ING.getId());
return status;
}

View File

@@ -2,7 +2,9 @@ package com.kamco.cd.kamcoback.trainingdata.service;
import com.kamco.cd.kamcoback.config.api.ApiResponseDto.ApiResponseCode;
import com.kamco.cd.kamcoback.config.api.ApiResponseDto.ResponseObj;
import com.kamco.cd.kamcoback.label.dto.LabelAllocateDto.LabelMngState;
import com.kamco.cd.kamcoback.postgres.core.TrainingDataReviewCoreService;
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;
@@ -39,7 +41,8 @@ public class TrainingDataReviewService {
public String saveReviewFeature(GeoFeatureRequest request) {
String status = "";
String operatorUid = request.getOperatorUid();
Long inferenceGeomUid = trainingDataReviewCoreService.findReviewOperatorGeoUid(operatorUid);
InferenceIdInfo info = trainingDataReviewCoreService.findReviewOperatorGeoUid(operatorUid);
Long inferenceGeomUid = info.getInferenceGeomUid();
if (request.getGeometry() == null || request.getGeometry().isEmpty()) {
// EXCEPT 상태만 업데이트
@@ -52,6 +55,11 @@ public class TrainingDataReviewService {
trainingDataReviewCoreService.updateReviewPolygonClass(
inferenceGeomUid, request.getGeometry(), request.getProperties(), status);
}
// 회차 진행 상태 update
trainingDataReviewCoreService.updateAnalInferenceMngState(
info.getAnalUid(), LabelMngState.ING.getId());
return status;
}