FHIRHeartRateObservation.fromMovisensHRData constructor

FHIRHeartRateObservation.fromMovisensHRData(
  1. MovisensHR data
)

Implementation

factory FHIRHeartRateObservation.fromMovisensHRData(MovisensHR data) {
  final String fhirString = '{'
      '"resourceType": "Observation",'
      '"id": "heart-rate",'
      '"meta": {'
      '  "profile": ['
      '    "http://hl7.org/fhir/StructureDefinition/vitalsigns"'
      '  ]'
      '},'
      '"text": "Heartrate reading from Movisen MoveEcg4",'
      '"status": "final",'
      '"category": ['
      '  {'
      '    "coding": ['
      '      {'
      '        "system": "http://terminology.hl7.org/CodeSystem/observation-category",'
      '        "code": "vital-signs",'
      '        "display": "Vital Signs"'
      '      }'
      '    ],'
      '    "text": "Vital Signs"'
      '  }'
      '],'
      '"code": {'
      '  "coding": ['
      '    {'
      '      "system": "http://loinc.org",'
      '      "code": "8867-4",'
      '      "display": "Heart rate"'
      '    }'
      '  ],'
      '  "text": "Heart rate"'
      '},'
      '"subject": {'
      '  "reference": "Patient/example"'
      '},'
      '"effectiveDateTime": "${data.timestamp}",'
      '"device" : "${data.deviceId}",'
      '"valueQuantity": {'
      '  "value": ${data.hr},'
      '  "unit": "beats/minute",'
      '  "system": "http://unitsofmeasure.org",'
      '  "code": "/min"'
      '}'
      '}';

  return FHIRHeartRateObservation(
      json.decode(fhirString) as Map<String, dynamic>);
}