Closed AnnieMungai closed 3 years ago
How it currently works When you create a client they are tagged with the tags of the register they are tagged with. The child is tagged with All clients and child. If tagged with OPD, then they become OPD clients and not children. If the 2 tags are added, then there are other workflows that need to be considered - like in the child register reporting.
Possible Solutions: Option 1 Change the child tags 2 read 2 tags - intercept the child when they are being registered, and tag them with the 2 tags. This will mean that OPD will only check for the child if they have 2 tags.
Option 2 Add a column in the child table - client_register_type table to allow the system to pick 2 different types.
Option 3 Add a column to have an additional check- can check for 2 columns. Child to be fetched from the child. For others - to fetch both child and opd. On the OPD queries, grouping is only OPD - can check this for OPD and OPD + child. In code - check how this is used, and update it.
Things to consider Performance for the app
Required:
This is not an issue any more. We need to explain the usability of the module and what is expected.
When a child is registered on OPD, they are viewable only on the child register and all clients register. However, the child needs to be seen in the All clients register, child register, and OPD register.