0

管理者がタイムスロットで販売できるリソースを追加できるシステムを構築しています。変数は、開始時刻、終了時刻、および間隔 (x 分) です。フロント エンド ユーザーはサイトにアクセスし、リソースと日付を選択して、利用可能なスロットを表示します。

開始時刻から終了時刻まで x 分間隔でループする可能性のあるスロットの配列を簡単に生成できます。

私にとって難しいのは、利用可能なスロットからいくつかの時間を除外することです。標準の予約があります - 一度に 1 スロットですが、リソースが使用できない期間もあるため、1 つの予約で 10 時間スロットが使用される可能性があります。

私の考えは、最初に可能なスロットの配列を生成し、次に DB にクエリを実行して、既に予約されているタイムスロットを削除することでした。これには、長い予約をチャンクに分割することが含まれます。

これを行うための純粋な MYSQL の方法があるかどうか、または少なくとも可能な限り効率的かつ柔軟にする方法があるかどうか疑問に思っています。

4

0 に答える 0