diff --git a/src/modules/05_leave/components/Calendar.vue b/src/modules/05_leave/components/Calendar.vue index 9945723..a2d2115 100644 --- a/src/modules/05_leave/components/Calendar.vue +++ b/src/modules/05_leave/components/Calendar.vue @@ -102,22 +102,26 @@ async function fetchDataCalendar() { filterLists.value.push(filterName); } - const data = mainData.value.filter( - (e: any) => e.keycloakId === keycloakId.value - ); + if (filterVal.value.length !== 0) { + const data = mainData.value.filter( + (e: any) => e.keycloakId === keycloakId.value + ); - const event = data - .filter((x: any) => x.status != "REJECT" && x.status != "DELETE") - .map((e: DataCalendar) => ({ - id: e.id, - title: `${e.fullName} (${e.leaveTypeName})`, - start: e.leaveStartDate, - end: e.leaveEndDate, - allDay: true, - color: e.keycloakId === keycloakId.value ? "#DCEDC8" : "#CFD8DC", - textColor: "black", - })); - calendarOptions.value.events = event; + const event = data + .filter((x: any) => x.status != "REJECT" && x.status != "DELETE") + .map((e: DataCalendar) => ({ + id: e.id, + title: `${e.fullName} (${e.leaveTypeName})`, + start: e.leaveStartDate, + end: new Date( + new Date(e.leaveEndDate).setHours(23, 59, 59) + ).toISOString(), + allDay: e.leaveStartDate === e.leaveEndDate ? true : false, + color: e.keycloakId === keycloakId.value ? "#DCEDC8" : "#CFD8DC", + textColor: "black", + })); + calendarOptions.value.events = event; + } }) .catch((err) => { @@ -189,13 +193,20 @@ watch( () => { const eventData = filterVal.value.map((item: any) => { return mainData.value - .filter((e: DataCalendar) => e.keycloakId === item) + .filter( + (e: DataCalendar) => + e.keycloakId === item && + e.status != "REJECT" && + e.status != "DELETE" + ) .map((e) => ({ id: e.id, title: `${e.fullName} (${e.leaveTypeName})`, start: e.leaveStartDate, - end: e.leaveEndDate, - allDay: true, + end: new Date( + new Date(e.leaveEndDate).setHours(23, 59, 59) + ).toISOString(), + allDay: e.leaveStartDate === e.leaveEndDate ? true : false, color: e.keycloakId === keycloakId.value ? "#DCEDC8" : "#CFD8DC", textColor: "black", }));