212 lines
5.5 KiB
JSON
212 lines
5.5 KiB
JSON
{
|
|
"id": "default",
|
|
"schema_version": "1.0",
|
|
"title": "Example Dashboard",
|
|
"description": "An example dashboard to show-off the power of Fasten widgets",
|
|
"widgets": [
|
|
{
|
|
"title_text": "Diabetes Tracking",
|
|
"description_text": "Track key metrics for your chronic disease (eg. Diabetes). The data within this widget is not reflective of your health record, and is only present for demonstrational purposes.",
|
|
"x": 0,
|
|
"y": 0,
|
|
"width": 8,
|
|
"height": 5,
|
|
"item_type": "complex-line-widget"
|
|
},
|
|
{
|
|
"title_text": "Weight",
|
|
"description_text": "",
|
|
"x": 8,
|
|
"y": 0,
|
|
"width": 2,
|
|
"height": 2,
|
|
"item_type": "simple-line-chart-widget",
|
|
"queries": [{
|
|
"q": {
|
|
"select": [
|
|
"valueQuantity.value as data",
|
|
"valueQuantity.unit as unit",
|
|
"(effectiveDateTime | issued).first() as label"
|
|
],
|
|
"from": "Observation",
|
|
"where": {
|
|
"code": "http://loinc.org|29463-7,http://loinc.org|3141-9,http://snomed.info/sct|27113001"
|
|
}
|
|
}
|
|
}],
|
|
"parsing": {
|
|
"xAxisKey": "label",
|
|
"yAxisKey": "data"
|
|
}
|
|
},
|
|
{
|
|
"title_text": "Height",
|
|
"description_text": "",
|
|
"x": 10,
|
|
"y": 0,
|
|
"width": 2,
|
|
"height": 2,
|
|
"item_type": "simple-line-chart-widget",
|
|
"queries": [{
|
|
"q": {
|
|
"select": [
|
|
"valueQuantity.value as data",
|
|
"valueQuantity.unit as unit",
|
|
"(effectiveDateTime | issued).first() as label"
|
|
],
|
|
"from": "Observation",
|
|
"where": {
|
|
"code": "http://loinc.org|8302-2"
|
|
}
|
|
}
|
|
}],
|
|
"parsing": {
|
|
"xAxisKey": "label",
|
|
"yAxisKey": "data"
|
|
}
|
|
},
|
|
{
|
|
"title_text": "Blood Pressure",
|
|
"description_text": "How much pressure your blood is exerting against your artery walls when the heart beats",
|
|
"x": 8,
|
|
"y": 2,
|
|
"width": 4,
|
|
"height": 3,
|
|
"item_type": "grouped-bar-chart-widget",
|
|
"queries": [
|
|
{
|
|
"q": {
|
|
"select": [
|
|
"component.where(code.coding.system = 'http://loinc.org' and code.coding.code = '8462-4').valueQuantity.value as data",
|
|
"component.where(code.coding.system = 'http://loinc.org' and code.coding.code = '8462-4').valueQuantity.unit as unit"
|
|
],
|
|
"from": "Observation",
|
|
"where": {
|
|
"componentCode": "http://loinc.org|8462-4"
|
|
}
|
|
},
|
|
"dataset_options": {
|
|
"label": "Diastolic"
|
|
}
|
|
},
|
|
{
|
|
"q": {
|
|
"select": [
|
|
"component.where(code.coding.system = 'http://loinc.org' and code.coding.code = '8480-6').valueQuantity.value as data",
|
|
"component.where(code.coding.system = 'http://loinc.org' and code.coding.code = '8480-6').valueQuantity.unit as unit"
|
|
],
|
|
"from": "Observation",
|
|
"where": {
|
|
"componentCode": "http://loinc.org|8480-6"
|
|
}
|
|
},
|
|
"dataset_options": {
|
|
"label": "Systolic"
|
|
}
|
|
}],
|
|
"parsing": {
|
|
"xAxisKey": "id",
|
|
"yAxisKey": "data"
|
|
}
|
|
},
|
|
{
|
|
"title_text": "Patient Vitals",
|
|
"description_text": "",
|
|
"x": 0,
|
|
"y": 5,
|
|
"width": 4,
|
|
"height": 5,
|
|
"item_type": "patient-vitals-widget"
|
|
},
|
|
{
|
|
"title_text": "Observations by Type",
|
|
"description_text": "",
|
|
"x": 4,
|
|
"y": 5,
|
|
"width": 8,
|
|
"height": 5,
|
|
"item_type": "donut-chart-widget",
|
|
"queries": [{
|
|
"q": {
|
|
"select": [],
|
|
"from": "Observation",
|
|
"where": {},
|
|
"aggregations":{
|
|
"count_by": {"field": "code:code" }
|
|
}
|
|
}
|
|
}],
|
|
"parsing": {
|
|
"label": "label",
|
|
"key": "value"
|
|
}
|
|
},
|
|
{
|
|
"title_text": "Compliance",
|
|
"description_text": "Use to track important healthcare and medical tasks.",
|
|
"x": 0,
|
|
"y": 10,
|
|
"width": 4,
|
|
"height": 2,
|
|
"item_type": "dual-gauges-widget",
|
|
"queries": [{
|
|
"dataset_options": {
|
|
"label": "Vaccines"
|
|
},
|
|
"q": {
|
|
"select": [],
|
|
"from": "Immunization",
|
|
"where": {},
|
|
"aggregations":{
|
|
"count_by": {"field": "*" }
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"dataset_options": {
|
|
"label": "Claims"
|
|
},
|
|
"q": {
|
|
"select": [],
|
|
"from": "Claim",
|
|
"where": {},
|
|
"aggregations":{
|
|
"count_by": {"field": "*" }
|
|
}
|
|
}
|
|
}],
|
|
"parsing": {
|
|
"label": "key",
|
|
"key": "value"
|
|
}
|
|
},
|
|
{
|
|
"title_text": "Recent Encounters",
|
|
"description_text": "Recent interactions with healthcare providers",
|
|
"x": 4,
|
|
"y": 10,
|
|
"width": 8,
|
|
"height": 4,
|
|
"item_type": "table-widget",
|
|
"queries": [{
|
|
"q": {
|
|
"select": [
|
|
"serviceProvider.display as institution",
|
|
"period.start as date",
|
|
"reasonCode.coding.display.first() as reason",
|
|
"participant.individual.display as provider"
|
|
],
|
|
"from": "Encounter",
|
|
"where": {}
|
|
}
|
|
}],
|
|
"parsing": {
|
|
"Id": "id",
|
|
"Institution": "institution",
|
|
"Reason": "reason",
|
|
"Provider": "provider"
|
|
}
|
|
}
|
|
]
|
|
}
|