From d3c2c8f64222cb57ac05a52921dcf0a8e2e67b1e Mon Sep 17 00:00:00 2001 From: flfeders Date: Sun, 20 Oct 2024 16:14:01 +0200 Subject: [PATCH] Changes in Times Evaluation --- composables/useWorkingTimePDFGenerator.js | 16 +++--- pages/absenceRequests/[mode]/[[id]].vue | 42 +++++++------- pages/profiles/show/[id].vue | 70 ++++++++++++++++++++++- pages/workingtimes/[mode]/[[id]].vue | 21 +++++++ pages/workingtimes/evaluate/[id].vue | 67 +++++++++++++++++++--- 5 files changed, 174 insertions(+), 42 deletions(-) diff --git a/composables/useWorkingTimePDFGenerator.js b/composables/useWorkingTimePDFGenerator.js index af15628..c51baec 100644 --- a/composables/useWorkingTimePDFGenerator.js +++ b/composables/useWorkingTimePDFGenerator.js @@ -102,32 +102,32 @@ export const useCreateWorkingTimesPdf = async (input,backgroundSourceBuffer) => y: getCoordinatesForPDFLib(20,70,pages[pageCounter -1]).y, size: 10, }) - /*pages[pageCounter - 1].drawText(`Bestätigt: ${Math.floor(input.sumWorkingMinutesApproved/60)}:${String(input.sumWorkingMinutesApproved % 60).padStart(2,"0")} Std`,{ + pages[pageCounter - 1].drawText(`Genehmigt: ${Math.floor(input.sumWorkingMinutesApproved/60)}:${String(input.sumWorkingMinutesApproved % 60).padStart(2,"0")} Std`,{ x: getCoordinatesForPDFLib(20,75,pages[pageCounter -1]).x, y: getCoordinatesForPDFLib(20,75,pages[pageCounter -1]).y, size: 10, }) - pages[pageCounter - 1].drawText(`Soll Stunden: ${input.monthlyWorkingHours} Std`,{ + pages[pageCounter - 1].drawText(`Soll Stunden: ${Math.floor(input.monthlyWorkingMinutes/60)}:${String(input.monthlyWorkingMinutes % 60).padStart(2,"0")} Std`,{ x: getCoordinatesForPDFLib(20,80,pages[pageCounter -1]).x, y: getCoordinatesForPDFLib(20,80,pages[pageCounter -1]).y, size: 10, }) - pages[pageCounter - 1].drawText(`Abwesend: Std`,{ + pages[pageCounter - 1].drawText(`Feiertagsausgleich: ${Math.floor(input.sumWorkingMinutesRecreationDays/60)}:${String(input.sumWorkingMinutesRecreationDays % 60).padStart(2,"0")} Std`,{ x: getCoordinatesForPDFLib(20,85,pages[pageCounter -1]).x, y: getCoordinatesForPDFLib(20,85,pages[pageCounter -1]).y, size: 10, }) - pages[pageCounter - 1].drawText(`Ausgleich: Std`,{ + pages[pageCounter - 1].drawText(`Urlaubsausgleich: ${Math.floor(input.sumWorkingMinutesRecreationDays/60)}:${String(input.sumWorkingMinutesRecreationDays % 60).padStart(2,"0")} Std`,{ x: getCoordinatesForPDFLib(20,90,pages[pageCounter -1]).x, y: getCoordinatesForPDFLib(20,90,pages[pageCounter -1]).y, size: 10, }) - pages[pageCounter - 1].drawText(`Inoffizielles Saldo: ${input.saldoInOfficial} Std`,{ + pages[pageCounter - 1].drawText(`Inoffizielles Saldo: ${Math.sign(input.saldoInOfficial) === 1 ? "" : "-"}${Math.floor(Math.abs(input.saldoInOfficial/60))}:${String(Math.abs(input.saldoInOfficial) % 60).padStart(2,"0")} Std`,{ x: getCoordinatesForPDFLib(20,95,pages[pageCounter -1]).x, y: getCoordinatesForPDFLib(20,95,pages[pageCounter -1]).y, size: 10, }) - pages[pageCounter - 1].drawText(`Saldo: ${input.saldo} Std`,{ + pages[pageCounter - 1].drawText(`Saldo: ${Math.sign(input.saldo) === 1 ? "" : "-"}${Math.floor(Math.abs(input.saldo/60))}:${String(Math.abs(input.saldo) % 60).padStart(2,"0")} Std`,{ x: getCoordinatesForPDFLib(20,100,pages[pageCounter -1]).x, y: getCoordinatesForPDFLib(20,100,pages[pageCounter -1]).y, size: 10, @@ -149,10 +149,10 @@ export const useCreateWorkingTimesPdf = async (input,backgroundSourceBuffer) => x: getCoordinatesForPDFLib(100,110,pages[pageCounter -1]).x, y: getCoordinatesForPDFLib(100,110,pages[pageCounter -1]).y, size: 10, - })*/ + }) - let rowHeight = 85 + let rowHeight = 115 input.times.forEach(time => { pages[pageCounter - 1].drawText(`${dayjs(time.startDate).format("HH:mm DD.MM.YY")}`,{ diff --git a/pages/absenceRequests/[mode]/[[id]].vue b/pages/absenceRequests/[mode]/[[id]].vue index 9ccc9b6..3f751c8 100644 --- a/pages/absenceRequests/[mode]/[[id]].vue +++ b/pages/absenceRequests/[mode]/[[id]].vue @@ -12,7 +12,6 @@ const router = useRouter() const toast = useToast() const id = ref(route.params.id ? route.params.id : null ) -let currentItem = ref(null) //Working const mode = ref(route.params.mode || "show") @@ -37,20 +36,19 @@ const absenceReasons = [ //Functions const setupPage = () => { if(mode.value === "show" || mode.value === "edit"){ - currentItem.value = dataStore.getAbsenceRequestById(Number(useRoute().params.id)) + itemInfo.value = dataStore.getAbsenceRequestById(Number(useRoute().params.id)) } - if(mode.value === "edit") itemInfo.value = currentItem.value } const editItem = async () => { - router.push(`/employees/absenceRequests/edit/${currentItem.id}`) + router.push(`/absenceRequests/edit/${itemInfo.value.id}`) setupPage() } const cancelEditorCreate = () => { - if(currentItem.value) { - router.push(`/absenceRequests/show/${currentItem.value.id}`) + if(itemInfo.value) { + router.push(`/absenceRequests/show/${itemInfo.value.id}`) } else { router.push(`/absenceRequests/`) } @@ -59,7 +57,7 @@ setupPage()