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

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

« Previous Version 12 Next »

Status

Apiary
JSON Schema request

SPECS

JSON Schema response
SPECS

Purpose

This WS  is design to update reimbursement and/or flags "is_active", "medication_request_allowed" for Brand within Medical program. 

WS logic

Authorize

  1. Verify the validity of access token
    1. In case of error - generate 401 response
  2. Check user scope (scope = 'program_brand:write') in order to perform this action
    1. In case of error - generate 403 response

Verify the validity of access token

  1. Check user scope (scope = 'program_brand:write') in order to perform this action
    1. In case of error - generate 401 response

Validate request (JSON schema)

  1. Validate request using JSON schemas:
    1. Return 422 with list of validation errors in case validation fails (422 EView)

Validate PK Program Brands

1. Check participant (Program_brand) ($.id) exists in PRM.program_brands

In case of error - return 422 error (message: "ID for Brand within the Medical program is not found")

{:error, [{%{
        description: "ID for Brand within the Medical program is not found",
        params: [],
        rule: :invalid
      }, "$.id"}]}

Validate status

1. Validate `is_active` == TRUE

    1. if invalid  - return 409 eror (message: "Brand within the program is inactive")

Validate medical_request_allowed status

To deactivate Participant (to update is_active == FALSE for brand within the program with id={id}) medical_request_allowed must be inactive (medical_request_allowed == FALSE) 

  1. Validate medical_request_allowed == FALSE
    1. if invalid  - return 409 eror (message: "To deactivate brand within the program firstly disable medical_request_allowed")

Update Program Brand

Update medication record by $.id  set values:

Destination

Source

Description
reimbursement$.reimbursement
is_active

$.is_active


medical_request_allowed$.medical_request_allowed
inserted_at:timestampGet current date-time
inserted_byuser_idExtract user from token
updated_at:timestampGet current date-time
updated_byuser_idExtract user from token
  • No labels