Table of Contents |
---|
Specification
...
title | Schema |
---|
...
Table of Contents |
---|
Purpose
This WS allows to create a new medical program
Key points
This is a graphQl method used in the Administration panel only.
Only authenticated and authorized NHS employee with an appropriate scope can create a medical program.
A medical program with the type MEDICATION or SERVICE can be created.
Specification
Page Properties | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Logic
Create medical program entity in medical_programs table (prm).
Set fields submitted on input: name and type.
Set following fields by default:
id = generate UUID value
is_active = true
medication_request_allowed = true
medication_dispense_allowed = true
medical_program_settings = null
inserted_at, updated_at = current date and time
inserted_by, updated_by = current user (from token).
Input parameters
API paragraph not found
Filters
API paragraph not found
Dictionaries
FUNDING_SOURCE
MR_BLANK_TYPES
PROVIDING_CONDITION
eHealth/clinical_impression_patient_categories
LICENSE_TYPE
MEDICAL_PROGRAM_TYPE
GraphQl Specification
Expand | ||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||
|
Purpose
This WS is designed to create new medical program.
...
|
Authorize
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 = 'medical_program:write')
...
In case error - generate 403 response
Validate request (JSON schema)
Validate request using JSON schemas (TBD):
Return 422 with list of validation errors in case validation fails (422 EView)
Create new Medical Program
Create new record in Medical_programs
...
Destination
...
Source
...
Type
...
Default
...
M/O
...
Description
...
id
...
uuid
...
M
...
Autogenerated
...
name
...
varchar
...
M
...
is_active
...
boolean
...
M
...
type
...
varchar
...
M
...
Dictionary: MEDICAL_PROGRAM_TYPE
...
medication_request_allowed
...
boolean
...
M
...
medication_dispense_allowed
...
boolean
...
M
...
medication_request_allowed_text
...
varchar
...
O
...
medication_dispense_allowed_text
...
varchar
...
O
...
medical_program_settings
...
jsonb
...
null
...
O
...
skip_mnn_in_treatment_period
...
boolean
...
false
...
M
...
Allow to create medication request with the same innm in one treatment period
...
employee_types_to_create_medication_request
...
[varchar]
...
null
...
O
...
Allow to create medication request for particular types of employees (if empty - all employee types, which have scopes can create medication request without limitations). Fills with values from EMPLOYEE_TYPE dictionary.
Example: ["DOCTOR", "SPECIALIST"]
...
speciality_types_allowed
...
[varchar]
...
null
...
O
...
Allows to create:
Medication Request for particular specialities $.employees.speciality.speciality(speciality_officio == true) of employees with SPECIALIST type (if empty - all specialists who have scopes can create medication request w/o limitations).
care plan's Activity for particular specialities $.employees.speciality.speciality(speciality_officio == true) of employees. If empty - all employees who have scopes can create Activity w/o any limitations.
Fills with values from SPECIALITY_TYPE dictionary. For example: ["ENDOCRINOLOGY", "FAMILY_DOCTOR"]
...
care_plan_required
...
boolean
...
false
...
M
...
Allow to create medication request for with reference on care plan
...
skip_employee_validation
...
boolean
...
false
...
M
...
Allows to skip all employee validations, including restrictions in the employee_types_to_create_medication_request and speciality_types_allowed parameters. So, any user who has a scope can create medication request
...
conditions_icd10_am_allowed
...
[varchar]
...
null
...
O
...
Array of condition codes from eHealth/ICD10_AM/condition_codes dictionary. For example: ["M61.25", "L70.0"]
Allows to create:
Medication Request Request with encounter in context that should have primary diagnosis with code that correspond to config.
Activity with addresses field of related Care plan that should have condition codes that correspond to config.
If absent - any ICD10_AM condition codes allowed.
Can be combined with codes in conditions_icpc2_allowed
...
conditions_icpc2_allowed
...
[varchar]
...
null
...
O
...
Array of condition codes from eHealth/ICPC2/actions dictionary. For example: ["R25","R80","L09"]
Allows to create Medication Request Request or Activity according to the logic as described for conditions_icd10_am_allowed
If absent - any ICPC2 condition codes allowed.
Can be combined with codes in conditions_icpc2_allowed
...
medication_request_max_period_day
...
integer
...
null
...
O
...
Maximum period length (in days) allowed for the Medication request with the medical program. Has a precedence over the same chart parameter
...
providing_conditions_allowed
...
[varchar]
...
null
...
O
...
Allowed terms of service for a Care plan to create activity with the medical program. Fills with values from PROVIDING_CONDITION dictionary. For example: ["INPATIENT", "OUTPATIENT"]
...
medical_program_settings_text
...
varchar
...
O
...
Comment on update medical_program_settings
...
inserted_at
...
Timestamp: now()
...
M
...
Get current date-time
...
inserted_by
...
Token: user_id
...
M
...
Extract user from token
...
updated_at
...
Timestamp: now()
...
M
...
Get current date-time
...
updated_by
...
Token: user_id
...
M
...
return 403 (“Your scope does not allow to access this resource. Missing allowances: medical_program:write”) in case of invalid scope(s).
Headers
API paragraph not found
Request data validation
Validate legal entity
Extract client_id from token.
Check client scopes in order to perform this action (scope = 'medical_program:write')
in case of error - return 403 (“Your scope does not allow to access this resource. Missing allowances: medical_program:write”).
Check type = NHS
in case of error - return 403 ('You don’t have permission to access this resource').
Validate request
Validate input according to schema only
Processing
API paragraph not found
Response structure
API paragraph not found
Post-processing processes
API paragraph not found
HTTP status codes
Page Properties | |||||||||
---|---|---|---|---|---|---|---|---|---|
|
Backward compatibility
API paragraph not found