-
Notifications
You must be signed in to change notification settings - Fork 6
Health data assessment containers
The code for the PDF generation and health data assessment is in the python-service
folder. Each folder is designed to run inside its own docker container and communicate with other parts of the application using RabbitMQ. In general, the assessment services loop through a Veterans health data (medications, observation, conditions, procedures etc) and pull out anything relevant to a claimed contention ("relevant" can mean anything that may help an RVSR to rate a claim). The assessment services also provide some summary statistics as meta-data for a claim that gets stored in the DB.
This container handles all claims with contentions for hypertension (7101 VASRD). There are two queues set up by this container, health-assess.hypertension
for v1 functionality and health-sufficiency-assess.hypertension
for v2. The queue is named this way because the v2 queue will return a flag to describe the sufficiency of evidence for a given claim (the logic is described in 905 ). The health-sufficiency-assess.hypertension
queue leads to a function that is designed to handle combined data from MAS and Lighthouse in a robust fashion. The assessment service does formatting of dates for the PDF, since it is already parsing a date as part of its core functionality. Medications, blood pressure readings and conditions are sorted by date before being returned as an evidence
object. Blood pressure readings without a parse-able date are not considered because there is no feasible way of determining whether they meet the date requirements (without a lot of error-prone custom string parsing, and the vast majority of data that will be flowing through the VRO will have parse-able dates). Medications and conditions without a date are attached at the end of the sorted list of objects with dates.
Refer to this requirements documents for more detail on what evidence is returned when the claim is new or for increase.doc
This container handles claims with contentions for asthma (6602 VASRD). On startup it creates a queue, health-assess.asthma
which is only used by v1 endpoints.
The other assessment folders are included in a gradle build if it is given a special property and the docker-compose profile is set to prototype. Use the following commands to build and run those containers.
./gradlew -PenablePrototype build check docker
export COMPOSE_PROFILES=prototype