diff --git a/packages/examples/cvat/exchange-oracle/src/endpoints/exchange.py b/packages/examples/cvat/exchange-oracle/src/endpoints/exchange.py index 36172d43d..b0c323095 100644 --- a/packages/examples/cvat/exchange-oracle/src/endpoints/exchange.py +++ b/packages/examples/cvat/exchange-oracle/src/endpoints/exchange.py @@ -28,6 +28,7 @@ from src.endpoints.serializers import ( ASSIGNMENT_PROJECT_VALIDATION_STATUSES, PROJECT_ACTIVE_STATUSES, + PROJECT_COMPLETED_STATUSES, serialize_assignment, serialize_job, ) @@ -146,9 +147,7 @@ async def list_jobs( cvat_service.Project.status == cvat_service.ProjectStatuses.canceled ) case JobStatuses.completed: - query = query.filter( - cvat_service.Project.status == cvat_service.ProjectStatuses.recorded - ) + query = query.filter(cvat_service.Project.status.in_(PROJECT_COMPLETED_STATUSES)) case _: raise NotImplementedError(f"Unsupported status {status}") diff --git a/packages/examples/cvat/exchange-oracle/src/endpoints/serializers.py b/packages/examples/cvat/exchange-oracle/src/endpoints/serializers.py index d7d84e2bc..8ff626f4a 100644 --- a/packages/examples/cvat/exchange-oracle/src/endpoints/serializers.py +++ b/packages/examples/cvat/exchange-oracle/src/endpoints/serializers.py @@ -12,11 +12,15 @@ from src.schemas import exchange as service_api from src.utils.assignments import compose_assignment_url, parse_manifest -PROJECT_ACTIVE_STATUSES = [ +PROJECT_ACTIVE_STATUSES = { ProjectStatuses.annotation, ProjectStatuses.completed, ProjectStatuses.validation, -] +} +PROJECT_COMPLETED_STATUSES = { + ProjectStatuses.recorded, + ProjectStatuses.deleted, +} def serialize_job( @@ -48,7 +52,7 @@ def serialize_job( api_status = service_api.JobStatuses.canceled elif project.status in PROJECT_ACTIVE_STATUSES: api_status = service_api.JobStatuses.active - elif project.status == ProjectStatuses.recorded: + elif project.status in PROJECT_COMPLETED_STATUSES: api_status = service_api.JobStatuses.completed else: raise NotImplementedError(f"Unknown status {project.status}")