From a2bcd022d91c0960084fc266b65568b14ebdbb93 Mon Sep 17 00:00:00 2001 From: vigneshhari Date: Tue, 28 Jan 2025 00:14:31 +0530 Subject: [PATCH] Location API fixes --- care/emr/api/viewsets/location.py | 7 ++----- care/emr/resources/location/spec.py | 3 ++- config/api_router.py | 10 +++++++--- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/care/emr/api/viewsets/location.py b/care/emr/api/viewsets/location.py index 0ed93e40db..11b24679ab 100644 --- a/care/emr/api/viewsets/location.py +++ b/care/emr/api/viewsets/location.py @@ -359,11 +359,8 @@ def _validate_data(self, instance, model_obj=None): start_datetime__lte=end_datetime, end_datetime__gte=start_datetime ).exists(): raise ValidationError("Conflict in schedule") - else: - if base_qs.filter( - start_datetime__gte=start_datetime - ).exists(): - raise ValidationError("Conflict in schedule") + elif base_qs.filter(start_datetime__gte=start_datetime).exists(): + raise ValidationError("Conflict in schedule") # Ensure that there is no other association at this point if ( diff --git a/care/emr/resources/location/spec.py b/care/emr/resources/location/spec.py index 49f3bd9587..5668e6bd36 100644 --- a/care/emr/resources/location/spec.py +++ b/care/emr/resources/location/spec.py @@ -104,6 +104,7 @@ def perform_extra_deserialization(self, is_update, obj): obj.parent = None obj.availability_status = LocationAvailabilityStatusChoices.available.value + class FacilityLocationListSpec(FacilityLocationSpec): parent: dict mode: str @@ -164,7 +165,7 @@ class FacilityLocationEncounterReadSpec(FacilityLocationEncounterBaseSpec): encounter: UUID4 start_datetime: datetime.datetime end_datetime: datetime.datetime | None = None - status : str + status: str created_by: dict | None = None updated_by: dict | None = None diff --git a/config/api_router.py b/config/api_router.py index 271c44c182..e1accb3cfd 100644 --- a/config/api_router.py +++ b/config/api_router.py @@ -25,7 +25,10 @@ FacilityOrganizationViewSet, ) from care.emr.api.viewsets.file_upload import FileUploadViewSet -from care.emr.api.viewsets.location import FacilityLocationViewSet, FacilityLocationEncounterViewSet +from care.emr.api.viewsets.location import ( + FacilityLocationEncounterViewSet, + FacilityLocationViewSet, +) from care.emr.api.viewsets.medication_administration import ( MedicationAdministrationViewSet, ) @@ -162,7 +165,9 @@ basename="location", ) -facility_location_nested_router = NestedSimpleRouter(facility_nested_router, r"location", lookup="location") +facility_location_nested_router = NestedSimpleRouter( + facility_nested_router, r"location", lookup="location" +) facility_location_nested_router.register( r"association", @@ -238,5 +243,4 @@ path("", include(organization_nested_router.urls)), path("", include(facility_organization_nested_router.urls)), path("", include(facility_location_nested_router.urls)), - ]