From 7d87ffb1552d308f4730e4da642402595dc0cb4f Mon Sep 17 00:00:00 2001 From: "DESKTOP-1R2VSQH\\Lenovo ThinkPad E490" Date: Thu, 15 Aug 2024 16:03:39 +0700 Subject: [PATCH] fix bug --- src/modules/03_logs/components/LogTable.vue | 132 ++++++++++++-------- 1 file changed, 83 insertions(+), 49 deletions(-) diff --git a/src/modules/03_logs/components/LogTable.vue b/src/modules/03_logs/components/LogTable.vue index 1bd52fa0..a285da34 100644 --- a/src/modules/03_logs/components/LogTable.vue +++ b/src/modules/03_logs/components/LogTable.vue @@ -310,63 +310,97 @@ function onItemClick(labal: string, type: string) { labelDropdown.value = labal; valDropdown.value = type; + const setDateRange = (daysAgo: number = 0, endOfDay = false) => { + const date = new Date(); + if (daysAgo) date.setDate(date.getDate() - daysAgo); + date.setHours( + endOfDay ? 23 : 0, + endOfDay ? 59 : 0, + endOfDay ? 59 : 0, + endOfDay ? 999 : 0 + ); + return date.toISOString(); + }; + if (type === "today") { - // ตั้งค่า startDateToday เป็นเวลา 23:59:59 ของวันนี้ - const startDateToday = new Date(); - startDateToday.setHours(0, 0, 0, 0); - - // ตั้งค่า endDate เป็นเวลา 23:59:59 ของวันนี้ - const endDateToday = new Date(); - endDateToday.setHours(23, 59, 59, 999); - - startDate.value = startDateToday.toISOString(); - endDate.value = endDateToday.toISOString(); - - selectedDate(); + startDate.value = setDateRange(0); + endDate.value = setDateRange(0, true); } else if (type === "yesterday") { - const endDateNow = new Date(); // เวลาปัจจุบัน - - // ตั้งค่า endDate เป็นเวลา 23:59:59 ของวันก่อนหน้า - endDateNow.setDate(endDateNow.getDate() - 1); - endDateNow.setHours(23, 59, 59, 999); - - // ตั้งค่า startDate เป็นเวลา 00:00:00 ของวันก่อนหน้า - const startDateYesterday = new Date(endDateNow); - startDateYesterday.setHours(0, 0, 0, 0); - - startDate.value = startDateYesterday.toISOString(); - endDate.value = endDateNow.toISOString(); - - selectedDate(); + startDate.value = setDateRange(1); + endDate.value = setDateRange(1, true); } else if (type === "past24hours") { - // ตั้งค่า startDatePast เป็นเวลาย้อนหลัง 24 hours - const startDatePast = new Date(); - startDatePast.setHours(startDatePast.getHours() - 24); + // ตั้งค่า startDate เป็น 24 ชั่วโมงที่แล้ว + const startDatePast24Hours = new Date(); + startDatePast24Hours.setHours(startDatePast24Hours.getHours() - 24); + startDate.value = startDatePast24Hours.toISOString(); - startDate.value = startDatePast.toISOString(); + // ตั้งค่า endDate เป็นเวลาปัจจุบัน endDate.value = new Date().toISOString(); - - selectedDate(); - } else if (type === "past7days") { - // ตั้งค่า startDatePast เป็นเวลาย้อนหลัง 7 วัน - const startDatePast = new Date(); - startDatePast.setDate(startDatePast.getDate() - 7); - - startDate.value = startDatePast.toISOString(); + } else if (["past7days", "past30days"].includes(type)) { + const days = { past7days: 7, past30days: 30 }[type]; + startDate.value = setDateRange(days); endDate.value = new Date().toISOString(); - - selectedDate(); - } else if (type === "past30days") { - // ตั้งค่า startDatePast เป็นเวลาย้อนหลัง 30 วัน - const startDatePast = new Date(); - startDatePast.setDate(startDatePast.getDate() - 30); - - startDate.value = startDatePast.toISOString(); - endDate.value = new Date().toISOString(); - - selectedDate(); } + type !== "customized" && selectedDate(); + + // if (type === "today") { + // // ตั้งค่า startDateToday เป็นเวลา 23:59:59 ของวันนี้ + // const startDateToday = new Date(); + // startDateToday.setHours(0, 0, 0, 0); + + // // ตั้งค่า endDate เป็นเวลา 23:59:59 ของวันนี้ + // const endDateToday = new Date(); + // endDateToday.setHours(23, 59, 59, 999); + + // startDate.value = startDateToday.toISOString(); + // endDate.value = endDateToday.toISOString(); + + // selectedDate(); + // } else if (type === "yesterday") { + // const endDateNow = new Date(); // เวลาปัจจุบัน + + // // ตั้งค่า endDate เป็นเวลา 23:59:59 ของวันก่อนหน้า + // endDateNow.setDate(endDateNow.getDate() - 1); + // endDateNow.setHours(23, 59, 59, 999); + + // // ตั้งค่า startDate เป็นเวลา 00:00:00 ของวันก่อนหน้า + // const startDateYesterday = new Date(endDateNow); + // startDateYesterday.setHours(0, 0, 0, 0); + + // startDate.value = startDateYesterday.toISOString(); + // endDate.value = endDateNow.toISOString(); + + // selectedDate(); + // } else if (type === "past24hours") { + // // ตั้งค่า startDatePast เป็นเวลาย้อนหลัง 24 hours + // const startDatePast = new Date(); + // startDatePast.setHours(startDatePast.getHours() - 24); + + // startDate.value = startDatePast.toISOString(); + // endDate.value = new Date().toISOString(); + + // selectedDate(); + // } else if (type === "past7days") { + // // ตั้งค่า startDatePast เป็นเวลาย้อนหลัง 7 วัน + // const startDatePast = new Date(); + // startDatePast.setDate(startDatePast.getDate() - 7); + + // startDate.value = startDatePast.toISOString(); + // endDate.value = new Date().toISOString(); + + // selectedDate(); + // } else if (type === "past30days") { + // // ตั้งค่า startDatePast เป็นเวลาย้อนหลัง 30 วัน + // const startDatePast = new Date(); + // startDatePast.setDate(startDatePast.getDate() - 30); + + // startDate.value = startDatePast.toISOString(); + // endDate.value = new Date().toISOString(); + + // selectedDate(); + // } + startTime.value = null; endTime.value = null; }