Scoreboard and Dashboard now function as expected!

Signed-off-by: Dave Richer <dave@imexsystems.ca>
This commit is contained in:
Dave Richer
2023-12-21 19:26:20 -05:00
parent d2e4b7d9ec
commit c8460f6092
2 changed files with 28 additions and 54 deletions

View File

@@ -1,69 +1,42 @@
import dayjs from "../../utils/day"; import dayjs from "../../utils/day";
// dayjs.updateLocale("ca", { export const CalculateWorkingDaysThisMonth = () =>
// workingWeekdays: [1, 2, 3, 4, 5, 6], dayjs().endOf("month").businessDaysInMonth().length;
// });
export const CalculateWorkingDaysThisMonth = () => { export const CalculateWorkingDaysInPeriod = (start, end) =>
return dayjs().endOf("month").businessDaysInMonth(); dayjs(end).businessDiff(dayjs(start));
};
export const CalculateWorkingDaysInPeriod = (start, end) => { export const CalculateWorkingDaysAsOfToday = () =>
return dayjs(start).businessDiff(dayjs(end)); dayjs().businessDaysInMonth().length;
};
export const CalculateWorkingDaysAsOfToday = () => { export const CalculateWorkingDaysLastMonth = () =>
return dayjs().businessDaysInMonth(); dayjs().subtract(1, "month").endOf("month").businessDaysInMonth().length;
};
export const CalculateWorkingDaysLastMonth = () => { export const WeeklyTargetHrs = (dailyTargetHrs) =>
return dayjs().subtract(1, "month").endOf("month").businessDaysInMonth(); dailyTargetHrs * CalculateWorkingDaysInPeriod(dayjs().startOf("week"), dayjs().endOf("week"));
};
export const WeeklyTargetHrs = (dailyTargetHrs, bodyshop) => { export const WeeklyTargetHrsInPeriod = (dailyTargetHrs, start, end) =>
return ( dailyTargetHrs * CalculateWorkingDaysInPeriod(start, end);
dailyTargetHrs *
CalculateWorkingDaysInPeriod(
dayjs().startOf("week"),
dayjs().endOf("week")
)
);
};
export const WeeklyTargetHrsInPeriod = ( export const MonthlyTargetHrs = (dailyTargetHrs) =>
dailyTargetHrs, dailyTargetHrs * CalculateWorkingDaysThisMonth();
start,
end,
bodyshop
) => {
return dailyTargetHrs * CalculateWorkingDaysInPeriod(start, end);
};
export const MonthlyTargetHrs = (dailyTargetHrs, bodyshop) => { export const LastMonthTargetHrs = (dailyTargetHrs) =>
return dailyTargetHrs * CalculateWorkingDaysThisMonth(); dailyTargetHrs * CalculateWorkingDaysLastMonth();
};
export const LastMonthTargetHrs = (dailyTargetHrs, bodyshop) => { export const AsOfTodayTargetHrs = (dailyTargetHrs) =>
return dailyTargetHrs * CalculateWorkingDaysLastMonth(); dailyTargetHrs * CalculateWorkingDaysAsOfToday();
};
export const AsOfTodayTargetHrs = (dailyTargetHrs, bodyshop) => { export const AsOfDateTargetHours = (dailyTargetHours, date) =>
return dailyTargetHrs * CalculateWorkingDaysAsOfToday(); dailyTargetHours * dayjs(date).businessDiff(dayjs().startOf("month"));
};
export const AsOfDateTargetHours = (dailyTargetHours, date) => {
return (
dailyTargetHours * dayjs().startOf("month").businessDiff(dayjs(date))
);
};
export const ListOfDaysInCurrentMonth = () => { export const ListOfDaysInCurrentMonth = () => {
const days = []; const days = [];
const dateStart = dayjs().startOf("month"); let dateStart = dayjs().startOf("month");
const dateEnd = dayjs().endOf("month"); const dateEnd = dayjs().endOf("month");
while (dateEnd.diff(dateStart, "day") > 0) { while (dateEnd.diff(dateStart, "day") > 0) {
days.push(dateStart.format("YYYY-MM-DD")); days.push(dateStart.format("YYYY-MM-DD"));
dateStart.add(1, "day"); dateStart = dateStart.add(1, "day");
} }
days.push(dateEnd.format("YYYY-MM-DD")); days.push(dateEnd.format("YYYY-MM-DD"));
return days; return days;
@@ -71,12 +44,11 @@ export const ListOfDaysInCurrentMonth = () => {
export const ListDaysBetween = ({ start, end }) => { export const ListDaysBetween = ({ start, end }) => {
const days = []; const days = [];
const dateStart = dayjs(start); let dateStart = dayjs(start);
const dateEnd = dayjs(end); const dateEnd = dayjs(end);
while (dateEnd.diff(dateStart, "day") > 0) { while (dateEnd.diff(dateStart, "day") >= 0) {
days.push(dateStart.format("YYYY-MM-DD")); days.push(dateStart.format("YYYY-MM-DD"));
dateStart.add(1, "day"); dateStart = dateStart.add(1, "day");
} }
days.push(dateEnd.format("YYYY-MM-DD"));
return days; return days;
}; };

View File

@@ -63,6 +63,8 @@ export default function ScoreboardTimeTickets() {
variables: { variables: {
start: startDate.format("YYYY-MM-DD"), start: startDate.format("YYYY-MM-DD"),
end: endDate.format("YYYY-MM-DD"), end: endDate.format("YYYY-MM-DD"),
jobStart: startDate,
jobEnd: endDate,
fixedStart: fixedPeriods.start.format("YYYY-MM-DD"), fixedStart: fixedPeriods.start.format("YYYY-MM-DD"),
fixedEnd: fixedPeriods.end.format("YYYY-MM-DD"), fixedEnd: fixedPeriods.end.format("YYYY-MM-DD"),
}, },