Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Purpose

This WS is designed to search Episodes of Care grouped by Groups of Diagnoses. If the user has approval on the Group of Diagnoses, he will receive a list of short Episodes of Care which contain diagnoses from this Group. To receive full Episode of Care data user must have the approval and use Get Episode by id endpoint.

...

  • period_from. Filter Episodes of Care where period.start is greater than period_from.

  • period_to. Filter Episodes of Care where period.end is less than period_to.

  • diagnoses_group_id.

    • Get diagnoses_codes array from group (PRM.diagnoses_group_codes DB) by diagnoses_group_id.

    • For each diagnose in diagnoses_group(from previous step) get  code and system values. Save diagnose to diagnoses_codes list

    • Select Episodes of Care where diagnose (diagnoses_history.coding.code and diagnoses_history.coding.system) is in diagnoses_codes array list.

  • managing_organization_id. Filter Episodes of Care where managing_organization.identifier.value is like managing_organization_id.

...

  1. Select list of employees from PRM.employees related to the current user in the current legal_entity, using data from the token.

  2. Select all active approvals on diagnoses_groups from ME.approvals (Mongo DB), where these employees referenced as granted_to.

  3. Get diagnoses_codes array from For each diagnose in diagnoses_groups (PRM.diagnoses_group_codes DB) get  code and system values. Save diagnose to diagnoses_codes list.

  4. Get Episodes of Care by person_id from ME.episodes (Mongo DB) where:

    1. status is "active"at least one code

    2. from Select Episodes of Care where diagnose (diagnoses_history.coding.code and diagnoses_history.coding.system) is in diagnoses_codes array and where diagnoses_history.status == "active". list

  5. Filter Episodes of Care by submitted search params (period_from, period_to, diagnoses_group_id, managing_organization_id).

  6. Order Episodes of Care by inserted_at and render a response according to specification:

    1. diagnoses block should contain diagnoses with codes from diagnoses_codes array only.