Skip to content

Commit

Permalink
(feat)O3-3409:Align service queue serve patient column to display nec…
Browse files Browse the repository at this point in the history
…essary information (#1188)
  • Loading branch information
makombe authored Jun 13, 2024
1 parent 8926ff8 commit 511ea44
Show file tree
Hide file tree
Showing 5 changed files with 8 additions and 129 deletions.
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
import React from 'react';
import TransitionMenu from '../queue-entry-table-components/transition-entry.component';
import { type QueueTableCellComponentProps, type QueueEntry } from '../types';
import ActionsMenu from '../queue-entry-table-components/actions-menu.component';
import EditMenu from '../queue-entry-table-components/edit-entry.component';
import { useConfig } from '@openmrs/esm-framework';
import { type ConfigObject } from '../config-schema';
import { mapVisitQueueEntryProperties } from './active-visits-table.resource';
Expand All @@ -11,22 +9,16 @@ import styles from './active-visits-row-actions.scss';
// This component is meant to be mounted as an extension in the queue-table-extension-column-slot.
// Defines the following actions the user can perform on a queue entry:
// - queue / requeue (to the in-service status)
// - transfer to a different queue
// - Overflow menu action to edit patient detail
// - Overflow menu action to end patient visit

const ActiveVisitRowActionsCell = ({ queueEntry }: QueueTableCellComponentProps) => {
const { visitQueueNumberAttributeUuid } = useConfig<ConfigObject>();

const mappedQueueEntry = mapVisitQueueEntryProperties(queueEntry, visitQueueNumberAttributeUuid);

return (
<>
<div className={styles.transitionMenuContainer}>
<TransitionMenu queueEntry={mappedQueueEntry} />
</div>
<EditMenu queueEntry={mappedQueueEntry} />
<ActionsMenu queueEntry={mappedQueueEntry} />
</>
<div className={styles.transitionMenuContainer}>
<TransitionMenu queueEntry={mappedQueueEntry} />
</div>
);
};

Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,17 +1,13 @@
import React, { useCallback } from 'react';
import dayjs from 'dayjs';
import { useTranslation } from 'react-i18next';
import { Button, ModalBody, ModalFooter, ModalHeader } from '@carbon/react';
import { ExtensionSlot, formatDatetime, navigate, parseDate, showSnackbar, useConfig } from '@openmrs/esm-framework';
import { Button, ModalBody, ModalFooter, ModalHeader, Tag } from '@carbon/react';
import { navigate, showSnackbar, useConfig } from '@openmrs/esm-framework';
import {
type MappedVisitQueueEntry,
serveQueueEntry,
updateQueueEntry,
} from '../active-visits/active-visits-table.resource';
import { findObsByConceptUUID } from '../helpers/functions';
import { requeueQueueEntry } from './transition-queue-entry.resource';
import { usePastVisits } from '../past-visit/past-visit.resource';
import { usePatientAppointments } from '../queue-patient-linelists/queue-linelist.resource';
import styles from './transition-queue-entry-dialog.scss';
import { useMutateQueueEntries } from '../hooks/useMutateQueueEntries';
import { type ConfigObject } from '../config-schema';
Expand All @@ -27,19 +23,13 @@ enum priorityComment {

const TransitionQueueEntryModal: React.FC<TransitionQueueEntryModalProps> = ({ queueEntry, closeModal }) => {
const { t } = useTranslation();

const config = useConfig<ConfigObject>();
const defaultTransitionStatus = config.concepts.defaultTransitionStatus;

const preferredIdentifiers = queueEntry?.identifiers.filter((identifier) =>
config.defaultIdentifierTypes.includes(identifier?.identifierType?.uuid),
);

const startDate = dayjs(new Date().toISOString()).subtract(6, 'month').toISOString();
const { upcomingAppointment, isLoading } = usePatientAppointments(queueEntry?.patientUuid, startDate);
const { visits, isLoading: loading } = usePastVisits(queueEntry?.patientUuid);
const obsToDisplay =
!loading && visits ? findObsByConceptUUID(visits?.encounters, config.concepts.historicalObsConceptUuid) : [];
const { mutateQueueEntries } = useMutateQueueEntries();

const launchEditPriorityModal = useCallback(() => {
Expand Down Expand Up @@ -125,30 +115,10 @@ const TransitionQueueEntryModal: React.FC<TransitionQueueEntryModalProps> = ({ q
))
: ''}
<p className={styles.p}>
{t('lastClinicalVisit', 'Last clinical visit')} : &nbsp; {loading && t('loading', 'Loading...')}
{!loading && !visits && t('none', 'None')}
{visits && formatDatetime(parseDate(visits?.startDatetime))}
</p>
{obsToDisplay?.length
? obsToDisplay.map((o) => (
<p className={styles.p}>
{o.concept.display} : &nbsp; {o.value.display}
</p>
))
: ''}
<p className={styles.p}>
{t('tcaDate', 'Tca date')} : &nbsp; {isLoading && t('loading', 'Loading...')}
{!isLoading && !upcomingAppointment && t('none', 'None')}
{upcomingAppointment && formatDatetime(parseDate(upcomingAppointment?.startDateTime))}
{t('patientAge', 'Age')} : &nbsp; {queueEntry?.patientAge}
</p>
<p>{queueEntry.identifiers?.map((identifier) => <Tag key={identifier.uuid}>{identifier.display}</Tag>)}</p>
</section>
<ExtensionSlot
className={styles.visitSummaryContainer}
name="previous-visit-summary-slot"
state={{
patientUuid: queueEntry?.patientUuid,
}}
/>
</div>
</ModalBody>
<ModalFooter>
Expand Down

0 comments on commit 511ea44

Please sign in to comment.