SGES: Überlappungen bei Terminbuchung unterbinden
Wenn man 2 zeitgleich stattfindende Programmpunkte bucht, wird dies blockiert.
Bei der SGEX werden die Zeiten voraussichtlich aber nicht identisch sein. Das System blockiert eine Doppelbuchung nur, wenn die Endzeit gleich ist. Wenn diese unterschiedlich ist oder die Anfangszeit sich unterscheidet, kann man das Programm doppelt buchen, obwohl es sich zeitlich überschneidet.
Der Code ist soweit ich auf die Schnelle sehe so aufgebaut, dass es die Bereiche "Vormittag, Nachmittag, Abend" gibt, die jeweils gleiche Blöcke sperren.
Dazu gibt es diese Zeit-Findung:
function checkTime(time) {
//7 - 13 Vormitag; 13:01 - 17 Nachmittag; 18:00 - 23 Abend;
if (time.length > 1) {
var timeSplitFrom = time[0].split(":");
var timeSplitTo = time[1].split(":");
var result = [];
result.push(timeOfDay(timeSplitFrom));
} else {
return time[0];
}
}
Die Buchung sollte unterbunden werden, sobald es irgendeine zeitliche Überlappung gibt.
Die Probleme passieren gerade bei Blöcken, wo die Endzeiten anders sind und zwischen 17.00 und 18.30
Ein Quickfix könnte eventuell sein:
- Vormittag = 7.00 – 12.59
- Nachmittag = 13.00 – 18.44
- Abend = 18.45 – 23.00