fix: refine unavailable slot grouping validation logic
This commit is contained in:
@@ -554,15 +554,16 @@
|
|||||||
|
|
||||||
if (isAvailable) {
|
if (isAvailable) {
|
||||||
if (currentUnavailableStart !== null) {
|
if (currentUnavailableStart !== null) {
|
||||||
// Use the end time of the last available slot as the start of unavailable period
|
|
||||||
const unavailableStartTime = lastAvailableEndTime || currentUnavailableStart;
|
|
||||||
const groupEndTime = calculatePreviousTime(timeStr);
|
const groupEndTime = calculatePreviousTime(timeStr);
|
||||||
groupedSlots.push({
|
const unavailableStartTime = currentUnavailableStart || lastAvailableEndTime;
|
||||||
type: 'unavailable',
|
if (unavailableStartTime && timeToMinutes(unavailableStartTime) < timeToMinutes(groupEndTime)) {
|
||||||
startTime: unavailableStartTime,
|
groupedSlots.push({
|
||||||
endTime: groupEndTime,
|
type: 'unavailable',
|
||||||
isGrouped: true
|
startTime: unavailableStartTime,
|
||||||
});
|
endTime: groupEndTime,
|
||||||
|
isGrouped: true
|
||||||
|
});
|
||||||
|
}
|
||||||
currentUnavailableStart = null;
|
currentUnavailableStart = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user