Placement Supervisors - Solution Design

Background

Placement supervisors are people records with specific 'Supervisor' Roles that can be linked to a placement. They can be of type 'Clinical' or 'Educational'. A placement can have 1 or many of each type. Create, Read, Update and Delete of Placement Supervisors within each Placement is required.

Refer to the Story in the list below for the requirements.

TIS Stories/Tasks

key summary type updated assignee priority status
Loading...
Refresh


Back End changes

New link table PlacementSupervisor (partially finished version exists in TCS - clear and start again)

Should include SupervisorType - (valid values 'Clinical Supervisor' and 'Educational Supervisor')

New endpoint to support the new table List+CRUD

Suggest a new endpoint on Person, to allow the Placement Supervisor dropdowns to search just Person records with the appropriate roles (see below) and to just return Person Firstname/Lastname/(GMC?)/PersonID to the dropdown rather than the full wide Person List dataset

People Roles to filter for Educational and Clinical Supervisors (separately to each other) agreed with DQ Leads:

 ES and CS Filtered Roles List RUN 13-04-2018.xlsx

Consolidated ETL changes to bring in existing supervisors from Intrepid DR - vwPlacementSupervisor

TIS-NDW ETL changes to write out vwPlacementSupervisor with the fields we have - some flattened Placement, Person and Post data within it

Front End changes

Suggest a new paragraph section called 'Supervisor' within Placement (at the bottom?)

Suggest splitting into two dropdowns - one for Educational Supervisor, another for Clinical Supervisor - then we can have two multiselect controls which just load a filtered, searchable list of People (a new endpoint from the BE)

Also agreed in order to distinguish from trainers with the same name (e.g. John Smith) we will return the 3 GMCID/GDCID/PH in the endpoint and the Front End will concatenate which ID is present into the shown element of the dropdown to allow users to distinguish any duplicate names.


Discussion points

  1. Intrepid vwPlacementSupervisor has Startdate, Enddate and Supervisorstatus (with some inactive) - do we need to support any of these? DQ leads have agreed in #data_quality that we don't need any of these which simplifies the link table and the UI