added start time< stop time check

This commit is contained in:
Yinyin Liu 2025-12-16 12:53:40 +01:00
parent c54a1bb691
commit fb073a6dca
1 changed files with 26 additions and 3 deletions

View File

@ -114,8 +114,31 @@ function SodistoreHomeConfiguration(props: SodistoreHomeConfigurationProps) {
});
};
// Add time validation function
const validateTimeOnly = () => {
if (formValues.startTimeChargeandDischargeDayandTime &&
formValues.stopTimeChargeandDischargeDayandTime) {
const startHours = formValues.startTimeChargeandDischargeDayandTime.getHours();
const startMinutes = formValues.startTimeChargeandDischargeDayandTime.getMinutes();
const stopHours = formValues.stopTimeChargeandDischargeDayandTime.getHours();
const stopMinutes = formValues.stopTimeChargeandDischargeDayandTime.getMinutes();
const startTimeInMinutes = startHours * 60 + startMinutes;
const stopTimeInMinutes = stopHours * 60 + stopMinutes;
if (startTimeInMinutes >= stopTimeInMinutes) {
setDateSelectionError('Stop time must be later than start time');
setErrorDateModalOpen(true);
return false;
}
}
return true;
};
const handleSubmit = async (e) => {
// console.log('asked for', dayjs(formValues.calibrationChargeDate));
if (!validateTimeOnly()) {
return;
}
const configurationToSend: Partial<ConfigurationValues> = {
minimumSoC: formValues.minimumSoC,
maximumDischargingCurrent: formValues.maximumDischargingCurrent,
@ -453,7 +476,7 @@ function SodistoreHomeConfiguration(props: SodistoreHomeConfigurationProps) {
<LocalizationProvider dateAdapter={AdapterDayjs}>
<DateTimePicker
ampm={false}
label="Start Time (Charge & Discharge)"
label="Start Date and Time (Start Time < Stop Time)"
value={
formValues.startTimeChargeandDischargeDayandTime
? dayjs(formValues.startTimeChargeandDischargeDayandTime)
@ -485,7 +508,7 @@ function SodistoreHomeConfiguration(props: SodistoreHomeConfigurationProps) {
<LocalizationProvider dateAdapter={AdapterDayjs}>
<DateTimePicker
ampm={false}
label="Stop Time (Charge & Discharge)"
label="Stop Date and Time (Start Time < Stop Time)"
value={
formValues.stopTimeChargeandDischargeDayandTime
? dayjs(formValues.stopTimeChargeandDischargeDayandTime)