diff --git a/bodyshop_translations.babel b/bodyshop_translations.babel
index bcf0fb69d..45256e2f5 100644
--- a/bodyshop_translations.babel
+++ b/bodyshop_translations.babel
@@ -41451,6 +41451,27 @@
+
+ efficiencyoverperiod
+ false
+
+
+
+
+
+ en-US
+ false
+
+
+ es-MX
+ false
+
+
+ fr-CA
+ false
+
+
+
jobs
false
diff --git a/client/src/components/schedule-calendar-wrapper/schedule-calendar-header.component.js b/client/src/components/schedule-calendar-wrapper/schedule-calendar-header.component.js
index fbdc59a77..9f41906db 100644
--- a/client/src/components/schedule-calendar-wrapper/schedule-calendar-header.component.js
+++ b/client/src/components/schedule-calendar-wrapper/schedule-calendar-header.component.js
@@ -37,7 +37,6 @@ export function ScheduleCalendarHeaderComponent({
...otherProps
}) {
const ATSToday = useMemo(() => {
- console.log("eeee", events);
if (!events) return [];
return _.groupBy(
events.filter(
diff --git a/client/src/components/scoreboard-timetickets/scoreboard-timetickets.component.jsx b/client/src/components/scoreboard-timetickets/scoreboard-timetickets.component.jsx
index c681ee4ef..29f2bb59f 100644
--- a/client/src/components/scoreboard-timetickets/scoreboard-timetickets.component.jsx
+++ b/client/src/components/scoreboard-timetickets/scoreboard-timetickets.component.jsx
@@ -80,6 +80,7 @@ export default function ScoreboardTimeTickets() {
totalThisMonth: 0,
totalLastMonth: 0,
totalOverPeriod: 0,
+ actualTotalOverPeriod: 0,
employees: {},
};
data.fixedperiod.forEach((ticket) => {
@@ -92,6 +93,7 @@ export default function ScoreboardTimeTickets() {
totalThisMonth: 0,
totalLastMonth: 0,
totalOverPeriod: 0,
+ actualTotalOverPeriod: 0,
};
}
@@ -182,6 +184,9 @@ export default function ScoreboardTimeTickets() {
ret.employees[ticket.employee.employee_number].totalOverPeriod =
ret.employees[ticket.employee.employee_number].totalOverPeriod +
ticket.productivehrs;
+ ret.employees[ticket.employee.employee_number].actualTotalOverPeriod =
+ ret.employees[ticket.employee.employee_number].actualTotalOverPeriod +
+ (ticket.actualhrs || 0);
if (!totals.employees[ticket.employee.employee_number])
totals.employees[ticket.employee.employee_number] = {
@@ -219,7 +224,7 @@ export default function ScoreboardTimeTickets() {
roundObject(ret);
roundObject(totals);
roundObject(ret2);
- console.log(ret);
+
return {
fixed: ret,
timeperiod: {
@@ -231,6 +236,8 @@ export default function ScoreboardTimeTickets() {
};
}, [fixedPeriods, data, startDate, endDate]);
+ console.log(calculatedData);
+
if (error) return ;
if (loading) return ;
return (
diff --git a/client/src/components/scoreboard-timetickets/scoreboard-timetickets.stats.component.jsx b/client/src/components/scoreboard-timetickets/scoreboard-timetickets.stats.component.jsx
index 72f1637b9..439f63743 100644
--- a/client/src/components/scoreboard-timetickets/scoreboard-timetickets.stats.component.jsx
+++ b/client/src/components/scoreboard-timetickets/scoreboard-timetickets.stats.component.jsx
@@ -19,7 +19,6 @@ export default connect(
export function ScoreboardTicketsStats({ data, bodyshop }) {
const { t } = useTranslation();
- console.log(data);
const columns = [
{
title: t("employees.fields.employee_number"),
@@ -57,6 +56,16 @@ export function ScoreboardTicketsStats({ data, bodyshop }) {
key: "totalOverPeriod",
sorter: (a, b) => a.totalOverPeriod - b.totalOverPeriod,
},
+ {
+ title: t("scoreboard.labels.efficiencyoverperiod"),
+ dataIndex: "efficiencyoverperiod",
+ key: "efficiencyoverperiod",
+ render: (text, record) =>
+ `${(
+ (record.totalOverPeriod / (record.actualTotalOverPeriod || 1)) *
+ 100
+ ).toFixed(1)} %`,
+ },
];
const tableData = data
@@ -112,6 +121,7 @@ export function ScoreboardTicketsStats({ data, bodyshop }) {