From a98ce35b33af4cfea5f8fc6ab57c1406d4b64881 Mon Sep 17 00:00:00 2001 From: Ehsan Date: Wed, 2 Oct 2024 14:16:49 +0330 Subject: [PATCH] handle disable time before start_time --- app/component/TimePickerInput.js | 5 +++-- .../addDoctor/listMenu/specialDays/Form.js | 20 ++++++++++++++++--- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/app/component/TimePickerInput.js b/app/component/TimePickerInput.js index 4464709..5ce7459 100644 --- a/app/component/TimePickerInput.js +++ b/app/component/TimePickerInput.js @@ -3,7 +3,7 @@ import { AdapterDayjs } from "@mui/x-date-pickers/AdapterDayjs"; import { LocalizationProvider, TimePicker } from "@mui/x-date-pickers"; import { handleTwoLength } from "@/helper"; -function TimePickerInput({ changeData, name, data }) { +function TimePickerInput({ changeData, handleDisableHours, name, data }) { return (
@@ -13,6 +13,7 @@ function TimePickerInput({ changeData, name, data }) { className="!w-full" views={["hours", "minutes"]} placeholder="انتخاب کنید..." + shouldDisableTime={(e) => handleDisableHours(e, name)} onChange={(e) => { const hours = e.$H; const minute = e.$m; @@ -49,7 +50,7 @@ function TimePickerInput({ changeData, name, data }) { className="absolute dark:bg-[#222433] dark:!text-[#A1A1A1] flex items-center right-[4px] h-[44px] py-[8px] px-[8px] w-[calc(100%_-_52px)] text-[#7E7E7E] bg-[#FFFFFF] text-[14px] font-normal top-1/2 -translate-y-1/2" > - {data} + {data[name]}

diff --git a/components/panel/addDoctor/listMenu/specialDays/Form.js b/components/panel/addDoctor/listMenu/specialDays/Form.js index 17f852f..7de3e13 100644 --- a/components/panel/addDoctor/listMenu/specialDays/Form.js +++ b/components/panel/addDoctor/listMenu/specialDays/Form.js @@ -27,7 +27,19 @@ function Form() { ...data, [name]: value, }); - console.log(data); + + const handleDisableHours = (e, n) => { + if (data.start_time === "00:00" && n === "end_time") return true; + if (data.start_time !== "00:00" && n === "end_time") { + const hourSelected = data.start_time + ? +data.start_time.split(":")[0] + : false; + + const hours = e.$H; + return hourSelected + 1 > hours; + } + }; + // console.log(data); return (
@@ -62,20 +74,22 @@ function Form() { } name="start_time" + data={data} /> } name="end_time" + data={data} />