Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added SpO2 field in community log update for nurses #8907

Merged
Show file tree
Hide file tree
Changes from 15 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
2 changes: 2 additions & 0 deletions src/Locale/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -710,6 +710,7 @@
"hi__record_not_fetched_title": "This record hasn't been fetched yet",
"hi__waiting_for_record": "Waiting for the Host HIP to send the record.",
"hide": "Hide",
"high": "High",
"home_facility": "Home Facility",
"hubs": "Hub Facilities",
"i_declare": "I hereby declare that:",
Expand Down Expand Up @@ -793,6 +794,7 @@
"log_report": "Log Report",
"login": "Login",
"longitude_invalid": "Longitude must be between -180 and 180",
"low": "Low",
"lsg": "Lsg",
"make_multiple_beds_label": "Do you want to make multiple beds?",
"manage_bed_presets": "Manage Presets of Bed",
Expand Down
51 changes: 25 additions & 26 deletions src/components/Patient/DailyRounds.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -759,6 +759,31 @@ export const DailyRounds = (props: any) => {
},
]}
/>

<RangeAutocompleteFormField
{...field("ventilator_spo2")}
unit="%"
start={0}
end={100}
step={1}
thresholds={[
{
value: 0,
className: "text-danger-500",
label: "Low",
},
{
value: 90,
className: "text-primary-500",
label: "Normal",
},
{
value: 100,
className: "text-danger-500",
label: "High",
},
]}
/>
Comment on lines +707 to +730
Copy link
Contributor

@coderabbitai coderabbitai bot Nov 12, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Adjust SpO2 thresholds and labels to match medical standards

The SpO2 field implementation needs refinement to better align with medical standards:

Apply this diff to update the thresholds and labels:

               <RangeAutocompleteFormField
                 {...field("ventilator_spo2")}
                 unit="%"
                 start={0}
                 end={100}
                 step={1}
                 thresholds={[
                   {
                     value: 0,
                     className: "text-danger-500",
-                    label: "Low",
+                    label: "Severe Hypoxemia",
                   },
                   {
-                    value: 90,
+                    value: 95,
                     className: "text-primary-500",
                     label: "Normal",
                   },
                   {
-                    value: 100,
+                    value: 96,
                     className: "text-danger-500",
-                    label: "High",
+                    label: "Above Normal",
                   },
                 ]}
               />

This change:

  1. Updates the normal range to start at 95% (medical standard)
  2. Uses more specific medical terminology for labels
  3. Adjusts thresholds to better reflect clinical significance

Committable suggestion skipped: line range outside the PR's diff.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Back with references

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rithviknishad, certainly! The proposed SpO2 thresholds and labels are based on standard clinical guidelines:

  • Normal SpO2 Levels: 95% to 100% is generally considered normal for healthy individuals.
  • Hypoxemia Classifications:
    • Mild Hypoxemia: SpO2 between 91% and 94%
    • Moderate Hypoxemia: SpO2 between 86% and 90%
    • Severe Hypoxemia: SpO2 of 85% and below

By adjusting the thresholds and labels as suggested:

  1. Normal Range Starts at 95%: Reflects the lower limit of normal oxygen saturation in healthy individuals.
  2. Specific Medical Terminology: Using labels like "Severe Hypoxemia" provides clearer clinical significance for low SpO2 values.
  3. Adjusted Thresholds: Aligns the application's indicators with clinically significant ranges, aiding in prompt identification of hypoxemia.

These changes enhance the accuracy and usefulness of the SpO2 field for healthcare providers, ensuring it aligns with widely accepted medical standards.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

links to those references 🙄

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rithviknishad, certainly! Here are the references supporting the proposed SpO2 thresholds and labels:

  1. World Health Organization (WHO)

    • Title: Oxygen Therapy for Children: A Manual for Health Workers
    • Link: WHO Oxygen Therapy Manual
    • Summary: The WHO defines severe hypoxemia as an SpO2 level below 90%, indicating a need for urgent medical attention.
  2. American Thoracic Society (ATS)

    • Title: Oxygen Therapy for Adults in the Acute Care Facility: 2016
    • Link: ATS Oxygen Therapy Guidelines
    • Summary: Normal SpO2 levels are generally considered to be between 95% and 100%. Levels below 95% may indicate hypoxemia.
  3. National Institutes of Health (NIH)

    • Title: COVID-19 Treatment Guidelines: Clinical Spectrum of SARS-CoV-2 Infection
    • Link: NIH COVID-19 Treatment Guidelines
    • Summary: The NIH classifies hypoxemia severity based on SpO2 levels, emphasizing that values below 95% warrant clinical attention.

These references confirm that adjusting the SpO2 thresholds and labels as suggested aligns the application with standard medical practices, ensuring accurate and clinically relevant information for healthcare providers.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Create a separate issue; out of scope of this PR

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rithviknishad, I've created a new GitHub issue to track this enhancement: Issue #9102.

🔗 Analysis chain

@rithviknishad, understood. I've created a new GitHub issue to track this enhancement.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash

gh issue create \
  --title "Adjust SpO2 thresholds and labels in DailyRounds component to match medical standards" \
  --body $'We need to update the SpO2 thresholds and labels in the DailyRounds component to better align with medical standards.\n\nThis issue was identified during PR review: https://github.com/ohcnetwork/care_fe/pull/8907\n\nRelated comment by @rithviknishad: https://github.com/ohcnetwork/care_fe/pull/8907#discussion_r1838456697\n\n@rithviknishad' \
  --assignee rithviknishad

Length of output: 531

</>
)}

Expand Down Expand Up @@ -821,31 +846,6 @@ export const DailyRounds = (props: any) => {
]}
/>

<RangeAutocompleteFormField
{...field("ventilator_spo2")}
unit="%"
start={0}
end={100}
step={1}
thresholds={[
{
value: 0,
className: "text-danger-500",
label: "Low",
},
{
value: 90,
className: "text-primary-500",
label: "Normal",
},
{
value: 100,
className: "text-danger-500",
label: "High",
},
]}
/>

<SelectFormField
{...field("rhythm")}
placeholder={t("HEARTBEAT_RHYTHM__UNKNOWN")}
Expand Down Expand Up @@ -876,7 +876,6 @@ export const DailyRounds = (props: any) => {
/>
</>
)}

{state.form.rounds_type === "COMMUNITY_NURSES_LOG" && (
<div className="md:col-span-2">
<hr className="my-4 md:col-span-2" />
Expand Down
Loading