|
|
|
@@ -31,6 +31,21 @@ public enum AlertType
|
|
|
|
|
RapidDeterioration,
|
|
|
|
|
|
|
|
|
|
QsofaWarning,
|
|
|
|
|
|
|
|
|
|
GcsCritical,
|
|
|
|
|
GcsWarning,
|
|
|
|
|
|
|
|
|
|
CriticalPao2MmHg,
|
|
|
|
|
WarningPao2MmHg,
|
|
|
|
|
CriticalPlateletKUl,
|
|
|
|
|
WarningPlateletKUl,
|
|
|
|
|
CriticalBilirubinMgDl,
|
|
|
|
|
WarningBilirubinMgDl,
|
|
|
|
|
CriticalCreatinineMgDl,
|
|
|
|
|
WarningCreatinineMgDl,
|
|
|
|
|
|
|
|
|
|
SofaSepsis,
|
|
|
|
|
SofaWarning,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static class AlertTypeExtensions
|
|
|
|
@@ -63,6 +78,18 @@ public static class AlertTypeExtensions
|
|
|
|
|
AlertType.News2Emergency => "NEWS2_EMERGENCY",
|
|
|
|
|
AlertType.RapidDeterioration => "RAPID_DETERIORATION",
|
|
|
|
|
AlertType.QsofaWarning => "QSOFA_WARNING",
|
|
|
|
|
AlertType.GcsCritical => "GCS_CRITICAL",
|
|
|
|
|
AlertType.GcsWarning => "GCS_WARNING",
|
|
|
|
|
AlertType.CriticalPao2MmHg => "CRITICAL_PAO2_MMHG",
|
|
|
|
|
AlertType.WarningPao2MmHg => "WARNING_PAO2_MMHG",
|
|
|
|
|
AlertType.CriticalPlateletKUl => "CRITICAL_PLATELET_K_UL",
|
|
|
|
|
AlertType.WarningPlateletKUl => "WARNING_PLATELET_K_UL",
|
|
|
|
|
AlertType.CriticalBilirubinMgDl => "CRITICAL_BILIRUBIN_MG_DL",
|
|
|
|
|
AlertType.WarningBilirubinMgDl => "WARNING_BILIRUBIN_MG_DL",
|
|
|
|
|
AlertType.CriticalCreatinineMgDl => "CRITICAL_CREATININE_MG_DL",
|
|
|
|
|
AlertType.WarningCreatinineMgDl => "WARNING_CREATININE_MG_DL",
|
|
|
|
|
AlertType.SofaSepsis => "SOFA_SEPSIS",
|
|
|
|
|
AlertType.SofaWarning => "SOFA_WARNING",
|
|
|
|
|
_ => throw new ArgumentOutOfRangeException(nameof(t))
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
@@ -94,6 +121,18 @@ public static class AlertTypeExtensions
|
|
|
|
|
"NEWS2_EMERGENCY" => AlertType.News2Emergency,
|
|
|
|
|
"RAPID_DETERIORATION" => AlertType.RapidDeterioration,
|
|
|
|
|
"QSOFA_WARNING" => AlertType.QsofaWarning,
|
|
|
|
|
"GCS_CRITICAL" => AlertType.GcsCritical,
|
|
|
|
|
"GCS_WARNING" => AlertType.GcsWarning,
|
|
|
|
|
"CRITICAL_PAO2_MMHG" => AlertType.CriticalPao2MmHg,
|
|
|
|
|
"WARNING_PAO2_MMHG" => AlertType.WarningPao2MmHg,
|
|
|
|
|
"CRITICAL_PLATELET_K_UL" => AlertType.CriticalPlateletKUl,
|
|
|
|
|
"WARNING_PLATELET_K_UL" => AlertType.WarningPlateletKUl,
|
|
|
|
|
"CRITICAL_BILIRUBIN_MG_DL" => AlertType.CriticalBilirubinMgDl,
|
|
|
|
|
"WARNING_BILIRUBIN_MG_DL" => AlertType.WarningBilirubinMgDl,
|
|
|
|
|
"CRITICAL_CREATININE_MG_DL" => AlertType.CriticalCreatinineMgDl,
|
|
|
|
|
"WARNING_CREATININE_MG_DL" => AlertType.WarningCreatinineMgDl,
|
|
|
|
|
"SOFA_SEPSIS" => AlertType.SofaSepsis,
|
|
|
|
|
"SOFA_WARNING" => AlertType.SofaWarning,
|
|
|
|
|
_ => throw new ArgumentOutOfRangeException(nameof(v), $"Unknown alert type: '{v}'")
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
@@ -111,6 +150,10 @@ public static class AlertTypeExtensions
|
|
|
|
|
"LACTATE_MMOL_L" => AlertType.CriticalLactateMmolL,
|
|
|
|
|
"AVPU" => AlertType.CriticalAvpu,
|
|
|
|
|
"GLUCOSE_MG_DL" => AlertType.CriticalGlucoseMgDl,
|
|
|
|
|
"PAO2_MMHG" => AlertType.CriticalPao2MmHg,
|
|
|
|
|
"PLATELET_K_UL" => AlertType.CriticalPlateletKUl,
|
|
|
|
|
"BILIRUBIN_MG_DL" => AlertType.CriticalBilirubinMgDl,
|
|
|
|
|
"CREATININE_MG_DL" => AlertType.CriticalCreatinineMgDl,
|
|
|
|
|
_ => throw new ArgumentOutOfRangeException(
|
|
|
|
|
nameof(observationCode), $"No critical alert type for observation code '{observationCode}'")
|
|
|
|
|
};
|
|
|
|
@@ -127,6 +170,10 @@ public static class AlertTypeExtensions
|
|
|
|
|
"DIASTOLIC_BP" => AlertType.WarningDiastolicBp,
|
|
|
|
|
"LACTATE_MMOL_L" => AlertType.WarningLactateMmolL,
|
|
|
|
|
"GLUCOSE_MG_DL" => AlertType.WarningGlucoseMgDl,
|
|
|
|
|
"PAO2_MMHG" => AlertType.WarningPao2MmHg,
|
|
|
|
|
"PLATELET_K_UL" => AlertType.WarningPlateletKUl,
|
|
|
|
|
"BILIRUBIN_MG_DL" => AlertType.WarningBilirubinMgDl,
|
|
|
|
|
"CREATININE_MG_DL" => AlertType.WarningCreatinineMgDl,
|
|
|
|
|
_ => throw new ArgumentOutOfRangeException(
|
|
|
|
|
nameof(observationCode), $"No warning alert type for observation code '{observationCode}'")
|
|
|
|
|
};
|
|
|
|
@@ -139,7 +186,9 @@ public static class AlertTypeExtensions
|
|
|
|
|
or AlertType.CriticalSystolicBp or AlertType.CriticalDiastolicBp
|
|
|
|
|
or AlertType.CriticalLactateMmolL or AlertType.CriticalAvpu
|
|
|
|
|
or AlertType.CriticalGlucoseMgDl => false,
|
|
|
|
|
AlertType.RapidDeterioration => false, // trajectory alerts are never suppressed
|
|
|
|
|
AlertType.RapidDeterioration => false,
|
|
|
|
|
AlertType.GcsCritical => false, // trajectory alerts are never suppressed
|
|
|
|
|
AlertType.SofaSepsis => false,
|
|
|
|
|
_ => true // all Warning* types, News2Warning, and QsofaWarning
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
@@ -155,6 +204,10 @@ public static class AlertTypeExtensions
|
|
|
|
|
AlertType.WarningDiastolicBp => "DIASTOLIC_BP",
|
|
|
|
|
AlertType.WarningLactateMmolL => "LACTATE_MMOL_L",
|
|
|
|
|
AlertType.WarningGlucoseMgDl => "GLUCOSE_MG_DL",
|
|
|
|
|
AlertType.WarningPao2MmHg => "PAO2_MMHG",
|
|
|
|
|
AlertType.WarningPlateletKUl => "PLATELET_K_UL",
|
|
|
|
|
AlertType.WarningBilirubinMgDl => "BILIRUBIN_MG_DL",
|
|
|
|
|
AlertType.WarningCreatinineMgDl => "CREATININE_MG_DL",
|
|
|
|
|
_ => null
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|