IO-2132 Updated approach to ATS summary.

This commit is contained in:
Patrick Fic
2023-01-06 09:56:23 -08:00
parent 08d334e93a
commit 9de076f060
5 changed files with 27 additions and 34 deletions

View File

@@ -1,11 +1,9 @@
import { Space } from "antd";
import React from "react";
import React, { useMemo } from "react";
import { useTranslation } from "react-i18next";
import { connect } from "react-redux";
import { useLocation } from "react-router-dom";
import { createStructuredSelector } from "reselect";
import { selectScheduleLoad } from "../../redux/application/application.selectors";
import queryString from "query-string";
const mapStateToProps = createStructuredSelector({
//currentUser: selectCurrentUser
scheduleLoad: selectScheduleLoad,
@@ -14,20 +12,33 @@ const mapDispatchToProps = (dispatch) => ({
//setUserLanguage: language => dispatch(setUserLanguage(language))
});
export function ScheduleAtsSummary({ scheduleLoad }) {
export function ScheduleAtsSummary({ scheduleLoad, appointments }) {
const { t } = useTranslation();
const search = queryString.parse(useLocation().search);
if (
(search.view === undefined || search.view === "week") &&
scheduleLoad.atsSummary &&
Object.keys(scheduleLoad.atsSummary).length > 0
)
const atsSummary = useMemo(() => {
let atsSummary = {};
if (!appointments || appointments.length === 0) {
return {};
}
appointments
.filter((a) => a.isintake)
.forEach((a) => {
if (!a.job.alt_transport) return;
if (!atsSummary[a.job.alt_transport]) {
atsSummary[a.job.alt_transport] = 1;
} else {
atsSummary[a.job.alt_transport] = atsSummary[a.job.alt_transport] + 1;
}
});
return atsSummary;
}, [appointments]);
if (Object.keys(atsSummary).length > 0)
return (
<Space wrap>
{t("schedule.labels.atssummary")}
{Object.keys(scheduleLoad.atsSummary).map((key) => (
<span key={key}>{`${key}: ${scheduleLoad.atsSummary[key]}`}</span>
{Object.keys(atsSummary).map((key) => (
<span key={key}>{`${key}: ${atsSummary[key]}`}</span>
))}
</Space>
);