라벨링 어제 완료된 건 검수할당 스케줄링 + 라벨 저장 시 실시간 할당 추가

This commit is contained in:
2026-01-19 14:41:10 +09:00
parent d673eb8bcb
commit 65cc07c4e6
8 changed files with 398 additions and 1 deletions

View File

@@ -3,6 +3,7 @@ package com.kamco.cd.kamcoback.trainingdata;
import com.kamco.cd.kamcoback.code.dto.CommonCodeDto;
import com.kamco.cd.kamcoback.config.api.ApiResponseDto;
import com.kamco.cd.kamcoback.config.api.ApiResponseDto.ResponseObj;
import com.kamco.cd.kamcoback.scheduler.service.TrainingDataReviewJobService;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto.ReviewGeometryInfo;
import com.kamco.cd.kamcoback.trainingdata.dto.TrainingDataReviewDto.ReviewListDto;
@@ -31,6 +32,7 @@ import org.springframework.web.bind.annotation.RestController;
public class TrainingDataReviewApiController {
private final TrainingDataReviewService trainingDataReviewService;
private final TrainingDataReviewJobService trainingDataReviewJobService;
@Operation(summary = "목록 조회", description = "검수 할당 목록 조회")
@ApiResponses(
@@ -498,4 +500,11 @@ public class TrainingDataReviewApiController {
return ApiResponseDto.ok(
trainingDataReviewService.getCogImageUrl(mapSheetNum, beforeYear, afterYear));
}
@Hidden
@GetMapping("/run-schedule")
public ApiResponseDto<Void> runTrainingReviewSchedule() {
trainingDataReviewJobService.assignReviewerYesterdayLabelComplete();
return ApiResponseDto.ok(null);
}
}

View File

@@ -3,6 +3,7 @@ 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.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;
@@ -22,9 +23,13 @@ import org.springframework.stereotype.Service;
public class TrainingDataLabelService {
private final TrainingDataLabelCoreService trainingDataLabelCoreService;
private final TrainingDataReviewJobService trainingDataReviewJobService;
public TrainingDataLabelService(TrainingDataLabelCoreService trainingDataLabelCoreService) {
public TrainingDataLabelService(
TrainingDataLabelCoreService trainingDataLabelCoreService,
TrainingDataReviewJobService trainingDataReviewJobService) {
this.trainingDataLabelCoreService = trainingDataLabelCoreService;
this.trainingDataReviewJobService = trainingDataReviewJobService;
}
public Page<LabelingListDto> findLabelingAssignedList(searchReq searchReq, String userId) {
@@ -52,6 +57,10 @@ public class TrainingDataLabelService {
trainingDataLabelCoreService.updateLabelingPolygonClass(
inferenceGeomUid, request.getGeometry(), request.getProperties(), status);
}
// 라벨링 완료하면 실시간 검수 할당 (1건)
trainingDataReviewJobService.assignRealtime(assignmentUid);
return status;
}