Skip to content

Conversation

thomasleese
Copy link
Contributor

@thomasleese thomasleese commented Aug 27, 2025

@thomasleese thomasleese added this to the v3.4.0 milestone Aug 27, 2025
@thomasleese thomasleese added the feature New functionality label Aug 27, 2025
@thomasleese thomasleese marked this pull request as ready for review August 27, 2025 11:46
@thomasleese thomasleese requested a review from a team as a code owner August 27, 2025 11:46
@thomasleese thomasleese force-pushed the v3.4.0-delegation branch 3 times, most recently from 14a8501 to facef5f Compare August 29, 2025 15:14
thomasleese and others added 22 commits August 29, 2025 16:20
This adds a new command to the CLI which allows ops to bulk enable or
disable delegation options or registration requirement for all the
sessions for a particular team. This is necessary to avoid needing the
teams to manually edit these options for each session (when they may
have hundreds).

Jira-Issue: MAV-1668
Jira-Issue: MAV-1787
This refactors the routes and controllers related to the session edit
page to be a more conventional Rails style.

Jira-Issue: MAV-1357
This restricts who can edit the details of a session to nurses and
admins, ensuring that healthcare assistants can't enable protocols that
would allow them to administer vaccines.

Jira-Issue: MAV-1357
This adds a new page allowing users to edit whether or not a session
should register attendance, this matches the latest designs in the
prototype.

Jira-Issue: MAV-1357
This adds a new page which users can get to from the "Edit session" page
allowing them to enable or disable using PSDs or the national protocol
at a per-session level.

Jira-Issue: MAV-1357
This adds a method to `User` and `CIS2Info` which can be used to
determine with a particular user has permission to prescribe a
vaccination using either a PSD or the national protocol.

Jira-Issue: MAV-1400
Add ability for users to enable/disable delgation
This updates the programme and session policy to ensure that if a user
is a healthcare assistant they can only see sessions and programmes
which support delegation, which at the moment is limited to flu.

Jira-Issue: MAV-1353
This adds a method which can be used to determine which vaccine methods
are approriate for a user in a particular session. This will be used to
limit which patients are shown to which users.

Jira-Issue: MAV-1353
If the user is not allowed to perform a vaccination we should hide the
heading as well as the form since it doesn't make sense to show the
heading.

Jira-Issue: MAV-1353
This moves the method related to determining whether the user is able to
take this action in to the policy method, closer to where it would be
used.

Jira-Issue: MAV-1353
This allows us to check various properties on the vaccination record to
support delegation where only certain users will be able to perform
certain actions.

Jira-Issue: MAV-1353
This makes it so that healthcare assistants don't have permission to
record vaccinations against injection patients by hiding them from the
"Record" tab.

Jira-Issue: MAV-1353
This allows us to track who supplied the vaccine to the person who
performed the vaccination.

Jira-Issue: MAV-1353
We don't need this column because it's already record on the
vaccination record. It also simplifies the process of adding a
PSD since PSDs will be used only for nasal flu which don't have
the concept of dose.
This will be used by the UI to determine if the user is allowed
to prescribe PSDs.
PSDs are only going to be used for nasal vaccines for the foreseeable
future. Therefore, it makes sense to have the factory generate PSDs for
nasal.
This adds support for healthcase assistants to administer the nasal flu
vaccine, requiring them to specify which nurse supplied to them the
vaccine.

Jira-Issue: MAV-1353
Features include:
- Additional question presented in triage section if prescriber
  wishes to add a PSD so that a healthcare worker can do it. This
  option is only displayed if the user is a prescriber and the
  session has PSD enabled.
- Backend updated to handle PSD creation
- The tag "PSD added" shows up in the action list header on the
  patient page if it has a PSD
Allow healthcare assistants to administer nasal spray via PGD supply
jhenderson and others added 12 commits August 29, 2025 16:20
The upcoming PSDs tab page will need to render the PSD status for each
patient. The html markup will be the same as what this component renders
for the register status.
This PR implements a new feature that allows prescribers (nurses,
pharmacists) to bulk create Patient Specific Directions (PSDs) for
patients who have given consent and don't require individual triage
assessment. This significantly reduces manual work by enabling batch
processing of PSDs instead of creating them one by one.

What's changed?
- New (basic) controller and page for the PSDs tab (no filters yet)
  - PSDs tab only appears if delegation feature is enabled
- New controller to manage the bulk add PSDs
…ctions-during-triage

Prescribers can create PSD instructions during triage
…ctions-in-bulk

Prescribers can create PSD instructions in bulk
This makes a number of small tweaks to the code related to PSD
functionality to tidy things up, there should be no user-facing
changes.
This renames it to `new` to match the Rails convention of a `new` and
`create` action.
This avoids the needs to specify the layout classes in the view itself.
These patients shouldn't receive PSDs as the nurses need to review the
answers to their health questions first.
This ensures that when attaching a PSD for nasal delivery, we attach a
vaccine with the approriate delivery method.
This makes a number of small code changes to the controller related to
patient specific directions to tidy up the code and improve readability.
Copy link

@thomasleese thomasleese merged commit 808ea3c into next Aug 29, 2025
13 of 14 checks passed
@thomasleese thomasleese deleted the v3.4.0-delegation branch August 29, 2025 15:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New functionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants