Versions Compared

Key

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

...

  1. Only an employee who registered a Composition, employee from the same legal entity, or employee that has an approval to mark the Composition as as entered_in_error are able to perform this action.

  2. Request should be signed with DS.

  3. Composition is marked as entered_in_error asynchronously.

Specification

Apiary

Authorization

  • Verify the validity of access token

    • in case of error - return 401 (“Invalid access token”) in case of validation fails

  • Verify that token is not expired

    • in case of error - return 401 (“Invalid access token”)

  • Check user scopes in order to perform this action (scope = 'composition:mark_in_error')

    • return 403 (“Your scope does not allow to access this resource. Missing allowances: composition:mark_in_error”) in case of invalid scope(s)

  • If BLOCK_UNVERIFIED_PARTY_USERS is true, then check party's data match following condition: verification_status != NOT_VERIFIED or (verification_status = NOT_VERIFIED and updated_at > current_date - UNVERIFIED_PARTY_PERIOD_DAYS_ALLOWED):

    • in case not match - return 403 ("Access denied. Party is not verified")

  • If BLOCK_DECEASED_PARTY_USERS is true, check that party is not deceased (party_verification verification record does not equal to: dracs_death_verification_status = VERIFIED and dracs_death_verification_reason = MANUAL_CONFIRMED):

    • in case of error - return 403 ("Access denied. Party is deceased")

...

Validate request by schema and return 422 error code with the list of validation errors in case of fails. User fills following fields in the request:

1. Status reason

1.1. Validate value in the field $.status_reason, CodeableConcept type, required.

1.2. Validate value in the field $.status_reason corresponds to the config

2. Status

The target status value must be submitted in the order of display in the signed content (media storage)

...

  1. Create job and return it’s id.

  2. Update Composition record with following:

    1. status = $.status

    2. status_reason = $.status_reason

    3. explanatory_letter =$.explanatory_letter

    4. updated_at = current datetime

    5. updated_by = user_id from token

  3. Send SMS to patient with composition number via template MARK_IN_ERROR_{{COMPOSITION_TYPE}}_COMPOSITION_SMS_TEMPLATE

    1. If $.authorize_withinform_with is submitted - use it as patient’s authentication method