Units Support

Chiming in here because I believe this is the @MatthewVita was referring to on his post in the Open Source Design forum: https://discourse.opensourcedesign.net/t/jobs-hospitalized-patient-management-module-mockups/530

I’ll be diving right in to create wireframes and mockups for the user flows described in this thread:

  • Transferring Inpatient
  • Discharging Inpatient
  • Assigning Room & Bed to inpatient
  • Admitting a patient

Would anyone be against a drag-and-drop interface? I’ll be trying a few different interaction models and reporting back here for feedback.

1 Like

Welcome! Just introduced you to the group via email.

I’m thinking that drag and drop may be worth considering. I’m thinking putting together the mockups will help show off its usefulness vs other methods. I can’t really weigh in much there though :slight_smile: :slight_smile:

-m

OpenEMR original design was for the solo practice. My concern is how is adding these features going to impact that market segment that does not need or will use those features. Also, it seems like this is the point where the core product needs to be split into solo and hospital. Or have two setup paths. Just my opinion that as the old folks use to say, “ain’t worth a pine bark dime”.

For users who do not needs a particular feature, they can easily disable it (Just like billing or insurance). We are moving towards a truly modular system, though it’s happening at slower than a :snail:'s pace)

1 Like

Appreciate the feedback, @juggernautsei. I believe Robert is right… we need to have toggles for the features.

-m

My first attempt at solving this problem within OpenEMR is to think through the use-cases as actual interactions within the current UI. To do this, I have re-created the flow diagrams posted here with references to the Appointments, Encounters, Flow Board, etc. that would be used to execute the tasks that desire Units Support.

These diagrams are attached as a PDF:
Units Support - Flow Diagrams in OpenEMR.pdf (393.6 KB)

Here is also a quick sketch that I did while creating these diagrams, to show my thoughts more visually: https://photos.google.com/share/AF1QipOf49oKaRWgzVH5Se6b4kcMD0YBtBFotG4Hd2uTIYHKBQSlJfS9CksMKE-kdbwa5A/photo/AF1QipNzjnwlahgzy0rkLBAlNSUXMY3PgJoIsJ113D9J?key=OU9Mc1JQVGNQcmF0b3ZPVVoxd1lsdnN2bEFpclRB

My suggestions and questions are included in the PDF and can be summarized as:

  1. Updates to the Appointment (and maybe Encounter) screens to include:
    a. New “Visit Category” called “Inpatient” or “Inpatient Care”
    b. New “Unit” and “Bed” fields, similar to current “Room Number” field
  2. New column in Flow Board called “Location” containing:
    a. Facility
    b. Unit
    c. Bed
  3. New dialog to enable “Transferring” of patients between Facilities
    and Units/Beds within facilities
    a. this can be triggered by clicking on Status or Location… I’m not sure which is preferable.
  4. New dialog (or modifications of the current Status dialog) for (new) “Discharged” status
2 Likes

Great work, @d3sandoval!

Does “Facility” properly cover both Ward and Clinic?

Facilities can be clinics, yes. They can also be a nursing home, lab testing location, a hospital, etc. I’m still not sure I fully understand wards though. I have always used the terms unit and ward as one-in-the-same and understand that wards mean different things to people around the world!

Would being able to categorize facility types be less (or more) confusing?

Hmm, not sure I follow.

What is onset/hosp. date currently used for?

This is the date of problem onset or hospitalization prior to the service date. Useful for HCFA billing in the outpatient setting

Will this encounter field be confusing for hospital users?

Encounters are used in a lot of settings. Check out SOAP note - Wikipedia to see how our SOAP form in an encounter fits into everything. Key thing to note with an encounter is the duration:

  • inpatient care == continuous increments of time
  • outpatient care == transactional visits

Do we need sub-units? It seems that Unit == Room so what if there are

These are the “beds”. Facility > Unit > Room > Bed.

Types of rooms? Or rooms that contain sections? Like an ER?

I wonder if there should be an interface to note where the patients are when not in their assigned room. Not sure!

-m

1 Like

Thanks @MatthewVita - responding inline… hopefully things won’t get too messy here.

Does “Facility” properly cover both Ward and Clinic?

Facilities can be clinics, yes. They can also be a nursing home, lab testing location, a hospital, etc. I’m still not sure I fully understand wards though. I have always used the terms unit and ward as one-in-the-same and understand that wards mean different things to people around the world!

  • If a “ward” is going to be Unit type than each “Location” would need to show:
    – Facility (maybe?)
    – Unit (e.g. ward a, b, c, d)
    – Room (e.g. 1, 2, 3, 4)
    – Bed (e.g. 1, 2, 3 , 4)

Would love to know if people are currently using different facilities to keep track of each area/ward of the hospital and/or if this use-case would be considered ideal.

Would being able to categorize facility types be less (or more) confusing?

Hmm, not sure I follow.

  • Not relevant. Your answer to the above question covers this postulate.

What is onset/hosp. date currently used for?

This is the date of problem onset or hospitalization prior to the service date. Useful for HCFA billing in the outpatient setting

  • Good to know. Sounds like we’re expecting check in/out time to be tracked automatically based on status changes then. If not, we’d need a separate field for intake/discharge.

Will this encounter field be confusing for hospital users?

Encounters are used in a lot of settings. Check out SOAP note - Wikipedia to see how our SOAP form in an encounter fits into everything. Key thing to note with an encounter is the duration:

inpatient care == continuous increments of time
outpatient care == transactional visits

  • I was able to confirm with @robert.down in our chat that only appointments contain the Status information I am looking for… the Appointment encounter type will keep track of intake/discharge and allow patients to appear on the flow board. This is fine given that appointments are so closely tied to the Patient Flow interface that I’m relying on in this solution.
  • We could also modify the current Encounter interface to track the patient Status like we do in appointments and either:
    – Create a separate flow board for inpatient only
    – Allow for inpatient statuses to appear on the existing flowboard
    … Without knowing enough about the architecture of the current Patient Flow, I am nervous about recommending this option.

Do we need sub-units? It seems that Unit == Room so what if there are

These are the “beds”. Facility > Unit > Room > Bed.

  • Great! Can we roll this up into a “Location” field/object?

Types of rooms? Or rooms that contain sections? Like an ER?

I wonder if there should be an interface to note where the patients are when not in their assigned room. Not sure!

  • If we need this, I think it could just be a separate Status like “In Transit” - similar to how we use “Chart Pulled” today.

-Dani

1 Like

Keep up the great work. You are asking all of the right questions!

Would love to know if people are currently using different facilities to keep track of each area/ward of the hospital and/or if this use-case would be considered ideal.

This is supported in OpenEMR via Administration->Features->Restrict Users to Facilities, though I would say it’s not the most elegant way to solve the problem categorically. We should really have an ability to partition out ther various areas of a hospital facility.

I’m glad you are in touch with Robert. That’s going to be very helpful. I know most of the basics, but he is a clinician that really gets it!!!

1 Like

Thanks for the direction on this, @MatthewVita :slight_smile: I’ve mocked up the settings UI for enabling the Units support within an OpenEMR instance and how the configured Units can be used to admit patients into the hospital using the “Appointment” functionality:
https://drive.google.com/open?id=1-RZOOHSEkEnpggHjeTUgJUKaCHqW2KvW

I’ve also created a Freehand on InVision to make inline feedback easy:
https://projects.invisionapp.com/freehand/document/dIkeNzNKd

cc @robert.down in case he has opinions on any of the interactions I’m considering.

1 Like

Very cool! How can I access the InVision?

-m

If you have an InVision account, you can login with it. Otherwise, there’s a Continue as Guest button at the top :slight_smile:

Once you’re in, you can type/draw/etc.

1 Like

Hi Team,

We have already done the customization for Inpatient Module with basics Admission,Discharge and Transfer.

Let us know if we can do any help.

1 Like

Hi @PavithraSrinivas ,

Sounds great. Is your group planning to contribute this code to OpenEMR?

thanks,
-brady

1 Like

Sure we can contribute the work which we have done.

2 Likes

Awesome! Recommend posting the code to OpenEMR on github as a PR (pull request). Then we can test it out and do a code review.
(and just holler if need guidance on github/git)
thanks,
-brady

1 Like

@MatthewVita I have updated the mockups to include UIs for all flows outlined in the requirements:
https://drive.google.com/file/d/1dhz4Jb2yF-QTkLxOsWMVjbwX5YJ-XfCR/view?usp=sharing

You an also find the InVision “Freehand” up to date as well: https://projects.invisionapp.com/freehand/document/dIkeNzNKd

Please provide your feedback or feel free to start implementing :slight_smile:

Cheers!
Dani

2 Likes

@d3sandoval This is on my list. I didn’t forget about you :smiley:

Great work

-m

1 Like

Do you have a module, plugin or add-on that can be used in OpenEMR 5.0.1? I would like to test it. Are you thinking to release it as a free or paid product?

It’s all open source. We are developing it, but seek sponsorship.

-Matthew

1 Like