Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ class ResourcesInfoCISUConstants:
RESOURCE_PATH = "$.resource"
STATE_PATH = "$.state"
VEHICLE_TYPE_PATH = "$.vehicleType"
MISSION_ID_PATH = "$.missionId"
OPERATION_ID_PATH = "$.operationId"

CASE_ID_FIELD = "caseId"
RESOURCE_ID_KEY = "resourceId"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
get_last_rc_ri_by_case_id,
get_rs_messages_by_case_id,
)
from converter.utils import get_field_value, set_value, delete_paths
from converter.utils import get_field_value, set_value, delete_paths, switch_field_name
import logging

logger = logging.getLogger(__name__)
Expand Down Expand Up @@ -70,6 +70,13 @@ def _build_rs_ri_from_cisu(cls, edxl_json: Dict[str, Any]) -> Dict[str, Any]:
# RS-RI does not carry GPS position — remove it if present
delete_paths(resource, [ResourcesInfoCISUConstants.POSITION_KEY])

# Map operationId to missionId
switch_field_name(
resource,
ResourcesInfoCISUConstants.OPERATION_ID_PATH,
ResourcesInfoCISUConstants.MISSION_ID_PATH,
)

return cls.format_rs_output_json(output_json, output_use_case_json)

@classmethod
Expand Down Expand Up @@ -317,13 +324,22 @@ def _convert_resources_to_cisu(
cls._translate_to_cisu_vehicle_type(resource)
cls._keep_last_state(resource)
cls._remove_patient_id(resource)
cls._replace_operation_id_by_mission_id(resource)

converted_resources.append(resource)
except ConversionError:
continue

return converted_resources

@classmethod
def _replace_operation_id_by_mission_id(cls, resource):
switch_field_name(
resource,
ResourcesInfoCISUConstants.MISSION_ID_PATH,
ResourcesInfoCISUConstants.OPERATION_ID_PATH,
)

@classmethod
def _remove_patient_id(cls, resource):
delete_paths(resource, [ResourcesInfoCISUConstants.PATIENT_ID_KEY])
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
"resourceId": "fr.fire.sis076.cgo-076.resource.VSAV3A",
"requestId": "fr.fire.sis076.cgo-076.request.177",
"centerName": "Centre de Secours 76 - A",
"missionId": "fr.fire.sis076.cgo-076.mission.177",
"operationId": "fr.fire.sis076.cgo-076.mission.177",
"centerCity": "75011",
"orgId": "fr.fire.sdis76.cgo-076",
"name": "VSAV 76 - 22D8",
Expand Down
Loading