Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Introduction

There are several types of access to patient medical data in eHealth, such as:

Access typeRelease

Primary care doctor access

1

Public information

1

Emergency room access

TBD

Secondary care doctor access

TBD

Primary care doctor

Authorization

...

A primary care doctor can access to all patient medical data, if there are an active declaration between this practitioner and the patient.

Active doctors declarations are selected by the algorithm below during the first request  and then caсhed to the Redis:

Search for declarations using token 

  1. Select party_id from PRM.Party_users where  user_id = token.user_id 
  2. Select id from PRM.Employee where
    1. party_id = a.
    2. legal_entitty_id= token.client_id
  3. Select patient_id from OPS.Declarations where  
    1. employee_id = b.
    2. status = active
  4. Write selected records into Redis 

The data in the Redis expires after N minutes or when declared event happens:

Refresh record in the Redis

  1. Delete record from the Redis after N minutes (N = 15 by default)  
  2. If new declaration was signed with the Doctor, delete the record from the Redis where key = declarations.employee_idDeclarations validation

Whenever doctor tries to access patient medical data, active declaration should be checked according to the algorithm:

Validate declaration using token

  1. Search for a record in the Redis where the key = token token.user_id 
    1. If there is no record, perform point 2 - Search for declarations using token 
    2. If there is a record, search for patient_id in array
      1. If there are no records with such patient_id return an error -"Access denied - you have no active declaration with the patient"
      2. If there is a record - grand access

Secondary care doctor

Will be implemented in next phases

Emergency room

Will be implemented in next phases

Public information

A set of public patient medical data such as blood type, allergies intolerances, medications intolerances e.t.c are known as Patient Summary. Patient Summary could be requested by any doctor.