From 57cbc6961c1562d6c4e695c24a88149e276c196c Mon Sep 17 00:00:00 2001
From: Patrick Fic <>
Date: Thu, 13 Aug 2020 16:25:00 -0700
Subject: [PATCH] Added time tickets by cost center BOD-239
---
README.MD | 3 +-
...me-tickets-summary-employees.component.jsx | 126 ++++++++++--------
2 files changed, 69 insertions(+), 60 deletions(-)
diff --git a/README.MD b/README.MD
index c1e3d680b..a3e429b14 100644
--- a/README.MD
+++ b/README.MD
@@ -1,7 +1,8 @@
React App:
Yarn Dependency Management:
-To force upgrades for some packages: yarn upgrade-interactive --latest
+To force upgrades for some packages:
+yarn upgrade-interactive --latest
GraphQL API:
Hasura is hosted on another dyno. Several environmental variables are required, including disabling the console.
diff --git a/client/src/components/time-tickets-summary-employees/time-tickets-summary-employees.component.jsx b/client/src/components/time-tickets-summary-employees/time-tickets-summary-employees.component.jsx
index f00b88d05..be349ccdc 100644
--- a/client/src/components/time-tickets-summary-employees/time-tickets-summary-employees.component.jsx
+++ b/client/src/components/time-tickets-summary-employees/time-tickets-summary-employees.component.jsx
@@ -78,6 +78,8 @@ export function TimeTicketsSummaryEmployees({
displayTemplateInWindow(html);
};
+ console.log("jobTickets", jobTickets);
+
return (
{jobTickets.map((item, idx) => {
- const costCenters = item.tickets
+ const employeeCostCenters = item.tickets
.map((i) => i.cost_center)
.filter(onlyUnique);
- console.log("costCenters", costCenters);
+ console.log("employeeCostCenters", employeeCostCenters);
- const actHrs = item.tickets.reduce(
- (acc, val) => acc + val.actualhrs,
- 0
- );
+ return employeeCostCenters.map((costCenter) => {
+ const actHrs = item.tickets
+ .filter((ticket) => ticket.cost_center === costCenter)
+ .reduce((acc, val) => acc + val.actualhrs, 0);
- const prodHrs = item.tickets.reduce(
- (acc, val) => acc + val.productivehrs,
- 0
- );
+ const prodHrs = item.tickets
+ .filter((ticket) => ticket.cost_center === costCenter)
+ .reduce((acc, val) => acc + val.productivehrs, 0);
- const clockHrs = item.tickets.reduce((acc, val) => {
- if (!!val.clockoff && !!val.clockon)
- return (
- acc +
- moment(val.clockoff).diff(moment(val.clockon), "hours", true)
- );
- return acc;
- }, 0);
+ const clockHrs = item.tickets
+ .filter((ticket) => ticket.cost_center === costCenter)
+ .reduce((acc, val) => {
+ if (!!val.clockoff && !!val.clockon)
+ return (
+ acc +
+ moment(val.clockoff).diff(
+ moment(val.clockon),
+ "hours",
+ true
+ )
+ );
+ return acc;
+ }, 0);
- return (
- handlePrintEmployeeTicket(item.employee.id)}
- >
- {t("timetickets.actions.printemployee")}
- ,
- ]}
- >
-
-
-
- handlePrintEmployeeTicket(item.employee.id)}
+ >
+ {t("timetickets.actions.printemployee")}
+ ,
+ ]}
+ >
+
+
-
-
-
-
-
-
- );
+
+
+
+
+
+
+
+
+ );
+ });
})}