Versions Compared

Key

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

Table of Contents

Status

...

Page Properties


Specification
Status
colour

...

Red
title

...

specs

...

Apiary
Status
colourGreen
titledone
JSON Schema

...

request
Status
colourGreen
titledone
JSON Schema

...

response
Status
colourRed
titlespecs


Purpose

This WS is designed to create new medication (post).

...

  • name
  • type
  • manufacturer (object)
  • code_atc
  • form
  • container info
  • package_qty
  • package_min_qty
  • certificate
  • expired_certificate_at
  • ingredients (array)

Authorize

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

...

  1. For $.type = INNM - Check exist `Substance` by $.ingredients[].id.

    1. if invalid - return 422 error (message: "Substance in ingredients is not found!")

  2. For $.type = MEDICATION - Check exist `Medications` by $.ingredients[].id.

    1. if invalid - return 422 error (message: "INNM in ingredients is not found!")

...

  1. For $.type = MEDICATION - Check exist any  ($.ingredients[].dosage.denumerator_unit != $.container.numerator_unit).

    1. if invalid - return 422 error (message: "Denumerator unit from Dosage ingredients must be equal Numerator unit from Container medication!")

...

    1. if result NOT 0 - return 409 eror (message: "Only a multiplicity package quantity for the minimum package quantity medication!")

Create new Medication

  1. Create new record in Medications 
  2. Fill data 
Destination
Source
id
name$.name
is_active TRUE
form$.form
ingredients$.ingredients
container$.container
package_qty$.package_qty
package_min_qty$.package_min_qty
code_atc$.code_atc
manufacturer$.manufacturer
certificate $.certificate
expired_certificate_at$.expired_certificate_at
inserted_at:timestamp
inserted_byuser_id
updated_at:timestamp
updated_byuser_id

Prepare & return response data structure

...