From bc847b38b0f298000749985f244070295aff7999 Mon Sep 17 00:00:00 2001 From: Anders Date: Tue, 25 Aug 2020 12:26:48 +0200 Subject: [PATCH] v0.14.15 - Removed the first foreach in location show, and made an inner join instead, so it comes in correct order (by time), instead of by time and by machine id. Added: The Reservations now gets deleted when time is past their washing time, as soon as you go onto your own reservations, the admin page for reservations or when the location show page reloads (every 1 minut) --- .../WashingReservationController.php | 6 ++++ .../views/admin/locations/show.blade.php | 34 +++++++++---------- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/skolehjem/app/Http/Controllers/WashingReservationController.php b/skolehjem/app/Http/Controllers/WashingReservationController.php index a2fca22..e187c80 100644 --- a/skolehjem/app/Http/Controllers/WashingReservationController.php +++ b/skolehjem/app/Http/Controllers/WashingReservationController.php @@ -15,6 +15,8 @@ use App\WashingReservation; use Illuminate\Support\Facades\DB; use Illuminate\View\View; +date_default_timezone_set('Europe/Copenhagen'); + class WashingReservationController extends Controller { public function __construct() @@ -37,6 +39,8 @@ class WashingReservationController extends Controller */ public function index(Request $request) { + WashingReservation::query()->where('time', '<', date('Y-m-d H:i:s', strtotime('-1 hour')))->delete(); + $reservations = WashingReservation::query()->orderBY('time' , 'asc')->paginate($request->query("limit", 20)); return Response::detect("washing-reservations.index", [ "reservations" => $reservations]); @@ -260,6 +264,8 @@ class WashingReservationController extends Controller public function appindex(Request $request) { + WashingReservation::query()->where('time', '<', date('Y-m-d H:i:s', strtotime('-1 hour')))->delete(); + $reservations = WashingReservation::query()->where("user_id", "=", auth()->user()->id)->orderBY('time' , 'asc')->paginate($request->query("limit", 20)); return Response::detect("washing-reservations.index", [ "reservations" => $reservations]); diff --git a/skolehjem/resources/views/admin/locations/show.blade.php b/skolehjem/resources/views/admin/locations/show.blade.php index 43c8a97..d32860c 100644 --- a/skolehjem/resources/views/admin/locations/show.blade.php +++ b/skolehjem/resources/views/admin/locations/show.blade.php @@ -18,23 +18,23 @@ $i = 1; ?>
- @foreach(\App\WashingMachine::query()->where("location_id", "=", $location->id)->get() as $machine) - @foreach(\App\WashingReservation::query()->where("machine_id", "=", $machine->id)->where("time", "LIKE", date("Y-m-d"). "%")->orderBy("time", "asc")->get() as $reservation) - @if (date('Y-m-d H:i:s', strtotime('-1 hour')) < $reservation->time) - @if($i % 3 == 1) -
-
- @endif -
-

{{ \App\WashingMachine::query()->find($reservation->machine_id)->name }}

-
- Dato: {{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime($reservation->time))->format('d/m/Y') }} - Tid: {{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime($reservation->time))->format('\k\l\. H:i') }} - {{ \App\User::query()->where("id", "=", $reservation->user_id)->first()->name_first }} {{ \App\User::query()->where("id", "=", $reservation->user_id)->first()->name_last }} -
+ @foreach(\App\WashingReservation::query()->join('washing_machines', 'washing_machines.id', '=', 'washing_reservations.machine_id')->where("location_id", "=", $location->id)->where("time", "LIKE", date("Y-m-d"). "%")->orderBy("time", "asc")->get() as $reservation) + @if (date('Y-m-d H:i:s', strtotime('-1 hour')) < $reservation->time) + @if($i % 3 == 1)
- +
@endif - @endforeach +
+

{{ \App\WashingMachine::query()->find($reservation->machine_id)->name }}

+
+ Dato: {{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime($reservation->time))->format('d/m/Y') }} + Tid: {{ \Illuminate\Support\Facades\Date::createFromTimeStamp(strtotime($reservation->time))->format('\k\l\. H:i') }} - {{ \App\User::query()->where("id", "=", $reservation->user_id)->first()->name_first }} {{ \App\User::query()->where("id", "=", $reservation->user_id)->first()->name_last }} +
+
+ + @else + {{ \App\WashingReservation::query()->join('washing_machines', 'washing_machines.id', '=', 'washing_reservations.machine_id')->where("location_id", "=", $location->id)->where('time', '<', date('Y-m-d H:i:s'). '%')->delete() }} + @endif @endforeach @if($i == 1) Der er ingen vaskemaskine reservationer for i dag. @@ -46,8 +46,8 @@ @yield("scripts")