From 1e5e982a5fe56b883d00ac3aeb58a3047b898315 Mon Sep 17 00:00:00 2001 From: hildaaaevs <149044919+hildaaaevs@users.noreply.github.com> Date: Mon, 23 Jun 2025 11:36:24 +0700 Subject: [PATCH] Bentrok Jadwal --- app/Models/Reservasii.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/app/Models/Reservasii.php b/app/Models/Reservasii.php index 6c43afa..43b628a 100644 --- a/app/Models/Reservasii.php +++ b/app/Models/Reservasii.php @@ -59,6 +59,20 @@ protected static function booted() } catch (\Exception $e) { Log::error('Gagal mengirim notifikasi email: ' . $e->getMessage()); } + + // Otomatis reject reservasi lain yang bentrok + $paketFotoIds = $reservasi->detail()->pluck('paket_foto_id')->toArray(); + $reservasiBentrok = self::where('id', '!=', $reservasi->id) + ->where('tanggal', $reservasi->tanggal) + ->where('waktu', $reservasi->waktu) + ->where('status_pembayaran', 'pending') + ->whereHas('detail', function($q) use ($paketFotoIds) { + $q->whereIn('paket_foto_id', $paketFotoIds); + }) + ->get(); + foreach ($reservasiBentrok as $r) { + $r->update(['status_pembayaran' => 'rejected']); + } } }); }