Versions Compared

Key

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

Table of Contents
Status

Page Properties


Specification

Status
colourRedGreen
titlespecsdone

Apiary
Status
colourGreen
titledone
JSON Schema request

Status
colourRedGrey
titlespecsabsent

JSON Schema response
Status
colourRed
titlespecs


Purpose

This WS is designed to deactivate medication by ID (post).

APIary 

deactivate-inna

Input parameters 

  • id

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

Validate PK Medication

Purpose validation: Check on existing Medication record 

  1. Check exist Medication by $.id.

    1. if invalid - return 404 error (message: "Medication is not found!")

Validate status

Purpose validation:  Medication should be active (is_active == TRUE)

  1. Validate `is_active` == TRUE
    1. if invalid  - return 409 eror (message: "Medication should be active !")

Validate status linked Medications

Purpose validation:  For INNM - all linked (child) Medications should be inactive (is_active == FALSE)

  1. Get linked medications, check exist active medications
    1. if invalid  - return 409 eror (message: "All linked medication should be inactive !")
Code Block
languagesql
IF EXIST (
	SELECT * FROM medications M
		WHERE M.type = MEDICATIONS
			AND (M.ingridients.id = $.id AND M.ingridients.is_active_substance)
)


Update medication

Update medication record by $.id  set values:


Destination
Source
is_active FALSE
inserted_at:timestamp
inserted_byuser_id
updated_at:timestamp
updated_byuser_id


Prepare & return response data structure

  1. Fill response WS data structure 
  2. Validate response using JSON schemas (!!! TBD)
    1. Return 422 with list of validation errors in case validation fails (422 EView)