ЕСОЗ - публічна документація

RC_warranty_Reject declaration request v3

Purpose

Method to reject previously created Declaration Request

Key features

  1. Only authenticated and authorized user can reject declaration request

  2. New and Approved declaration request can be rejected (Модель статусів заяви на декларацію )

  3. Declaration request can be rejected only by the employee who works in the same legal entity in which the request was created

  4. Declaration requests created by patient via PIS and assigned to legal entity could be rejected by legal entity as well

Specification

eHealth API · 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 = 'declaration_request:write')

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

Validation declaration request

  1. Check that declaration request with such ID exists in the system (is_active = true)

    1. In case of error - return 404

  2. Check that declaration request is allowed to be processed on LE (channel == MIS OR is_shareable == True)

    1. In case of error - return 403

  3. Check that declaration request belongs to the same legal entity as the user

    1. In case of error - return 403

Validate transition

  1. Check transition according to Модель статусів заяви на декларацію

    1. In case of error - return 409 (“Invalid transition“)

Service logic

Update declaration request

  1. Change entity status in IL_DB.declaration_request to REJECTED

  2. Set status_reason:

    1. If channel = MIS - set status_reason to doctor_reject

    2. If channel = PIS - set status_reason to doctor_rejected_over_limit

  3. Set updated_at - now() (Current date-time)

  4. Set updated_by - user_id (Extract user from token)

ЕСОЗ - публічна документація