...
...
- if invalid - return 409 eror (message: "Participant should be active!")
Logic WS
- Verify the validity of access token
- Check user scopes in order to perform this action (scope = 'program_medications:read')
Search Program_medications by filters in payload
SELECT
pr.id
,mp.name as
medical_program_name
,med.name as medication_name
,med.form
,med.manufacturer
,INNM.name as innm_name
,pr.reimbursement
,
pr.medication_id
,pr.medical_program_id
,pr.is_active
,
pr.medical_request_allowed,
INNM.id as innm_id
,innm.dosage as
innm_dosage
,innm.form as
innm_form
,
innm
.is_active_substance
,med.dosage as med_dosage
,med.is_active_substance
,sub.id as
substances_id
,sub_name as substances_name
FROM
program_medicationspr
INNER JOIN medical_programs mp
ON pr
.medical_program_id = mp.id
AND mp.is_active = TRUE
INNER JOIN medications med
ON pr.
medication_id =
MED.id
AND
MED.is_active =
TRUE
AND
MED
.type = 'MEDICATION'
AND
MED.ingredients.is_active_substance =
TRUE
INNER
JOIN
medications INNM
AND
INNM.is_active =
TRUE
AND
INNM
.type = 'INNM'
INNER
JOIN
substancessub
AND
sub.is_active =
TRUE
WHERE
pr.id
=$.
id
Prepare & return response data structure
...