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

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Purpose

This WS designed to get details of person requests.

Specification

Apiary

Authorization

  • Verify the validity of access token

    • 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 = 'person_request:details_pis')

    • Return (403, 'Your scope does not allow to access this resource. Missing allowances: person_request:details_pis') in case of invalid scope(s)

  • Check that token contains person_id

    • in case of error - return (401, 'Invalid access token')

Validate person

  • Get person_id from token (x-person-id header)

  • Validate patient status is active (status = ‘active' & is_active = 'true’)

    • in case of error - return 404 ('not found')

Validate Person request

  • Check that person request:

    • exists in il DB

    • belongs to patient

      • in case of error - return 404 ('not found')

Service logic

  1. Get person_id

  2. Get person request details from il.person_requests table by id

  3. In case if person_requests.documents field contains not empty array - prepare data for urgent.documents field in response

    1. Get all documents.[x].type values from person request

    2. Invoke Media Content Storage to generate upload URL for each document type from person request, add new links to response:

      1. action: PUT

      2. bucket: MEDIA_STORAGE_PERSON_REQUEST_BUCKET

      3. resource_id: person_request_id

      4. resource_name: person_request_#{type}.jpeg

    3. Check existence of file for each type in Media content storage for person request

      1. if file exists - set is_uploaded = true for document type in response

      2. if file does not exist - set is_uploaded = false for document type in response

  4. Render a response according to specification

  • No labels