diff --git a/packages/esm-patient-queues-app/src/active-visits/active-visits-table.component.tsx b/packages/esm-patient-queues-app/src/active-visits/active-visits-table.component.tsx index 4cb983f8..6a427569 100644 --- a/packages/esm-patient-queues-app/src/active-visits/active-visits-table.component.tsx +++ b/packages/esm-patient-queues-app/src/active-visits/active-visits-table.component.tsx @@ -135,16 +135,21 @@ const ActiveVisitsTable: React.FC = ({ status }) => { }, { id: 2, + header: t('provider', 'Provider'), + key: 'provider', + }, + { + id: 3, header: t('status', 'Status'), key: 'status', }, { - id: 2, + id: 4, header: t('waitTime', 'Wait time'), key: 'waitTime', }, { - id: 4, + id: 5, header: t('actions', 'Actions'), key: 'actions', }, @@ -160,6 +165,9 @@ const ActiveVisitsTable: React.FC = ({ status }) => { name: { content: entry.name, }, + provider: { + content: entry.provider, + }, status: { content: ( diff --git a/packages/esm-patient-queues-app/src/active-visits/active-visits-table.resource.ts b/packages/esm-patient-queues-app/src/active-visits/active-visits-table.resource.ts index a8bfa491..a8269dd4 100644 --- a/packages/esm-patient-queues-app/src/active-visits/active-visits-table.resource.ts +++ b/packages/esm-patient-queues-app/src/active-visits/active-visits-table.resource.ts @@ -404,6 +404,7 @@ export async function addQueueEntry( visitUuid: string, queueUuid: string, patientUuid: string, + provider: string, priority: number, encounter: string, status: string, @@ -421,7 +422,7 @@ export async function addQueueEntry( signal: abortController.signal, body: { patient: patientUuid, - provider: '', + provider: provider, locationFrom: locationUuid, locationTo: queueUuid !== undefined ? queueUuid : 'Not Set', status: status ? status : 'pending', diff --git a/packages/esm-patient-queues-app/src/active-visits/change-status-dialog.component.tsx b/packages/esm-patient-queues-app/src/active-visits/change-status-dialog.component.tsx index a323e866..e59e25b1 100644 --- a/packages/esm-patient-queues-app/src/active-visits/change-status-dialog.component.tsx +++ b/packages/esm-patient-queues-app/src/active-visits/change-status-dialog.component.tsx @@ -22,6 +22,7 @@ import { MappedQueueEntry } from '../types'; import { ArrowUp, ArrowDown } from '@carbon/react/icons'; import styles from './change-status-dialog.scss'; +import { useProviders } from '../queue-patient-linelists/queue-linelist.resource'; interface ChangeStatusDialogProps { queueEntry: MappedQueueEntry; @@ -34,6 +35,8 @@ const ChangeStatus: React.FC = ({ queueEntry, currentEn const locations = useLocations(); + const { providers } = useProviders(); + const [selectedLocation, setSelectedLocation] = useState(''); const [contentSwitcherIndex, setContentSwitcherIndex] = useState(1); @@ -53,8 +56,11 @@ const ChangeStatus: React.FC = ({ queueEntry, currentEn const [selectedNextQueueLocation, setSelectedNextQueueLocation] = useState(queueRoomLocations[0]?.uuid); const [provider, setProvider] = useState(''); + const [priorityComment, setPriorityComment] = useState(''); + const [selectedProvider, setSelectedProvider] = useState(''); + useEffect(() => { getCareProvider(sessionUser?.user?.systemId).then( (response) => { @@ -110,6 +116,8 @@ const ChangeStatus: React.FC = ({ queueEntry, currentEn const filteredlocations = queueRoomLocations?.filter((location) => location.uuid != selectedLocation); + const filteredProviders = providers?.filter((provider) => provider !== null); + // endVisit const endVisitStatus = useCallback( (event) => { @@ -198,6 +206,7 @@ const ChangeStatus: React.FC = ({ queueEntry, currentEn queueEntry?.id, nextQueueLocationUuid, queueEntry?.patientUuid, + selectedProvider, contentSwitcherIndex, '', 'pending', @@ -256,6 +265,7 @@ const ChangeStatus: React.FC = ({ queueEntry, currentEn closeModal, mutate, contentSwitcherIndex, + selectedProvider, selectedLocation, currentEntry?.id, currentEntry.patientUuid, @@ -334,6 +344,24 @@ const ChangeStatus: React.FC = ({ queueEntry, currentEn +
+ +
+ {status === 'completed' && (
setSelectedProvider(event.target.value)} + > + {!selectedProvider ? : null} + {filteredProviders.map((provider) => ( + + {provider.display} + + ))} + +
+