| Server IP : 34.87.99.72 / Your IP : 216.73.217.31 Web Server : Apache/2.4.46 (Unix) OpenSSL/1.1.1n System : Linux zlock-bitnami-lamp-prod-v2-vm 4.19.0-16-cloud-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64 User : bitnami ( 1000) PHP Version : 7.4.18 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /opt/bitnami/apache/htdocs/app/app/Http/Controllers/ |
Upload File : |
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Http\Requests\LockerSchedules\UpdateWeeklyRequest as LockerScheduleUpdateWeeklyRequest;
use App\Http\Requests\LockerSchedules\UpdateSpecialRequest as LockerScheduleUpdateSpecialRequest;
use App\Http\Requests\LockerSchedules\ListRequest as LockerScheduleListRequest;
use App\Http\Services\LockerScheduleService;
use Auth;
use App\Models\LockerSchedule;
class LockerScheduleController extends Controller
{
public function __construct(
LockerScheduleService $lockerScheduleService
)
{
$this->lockerScheduleService = $lockerScheduleService;
}
protected function day_per_week(){
return collect([
1 => "monday",
2 => "tuesday",
3 => "wednesday",
4 => "thursday",
5 => "friday",
6 => "saturday",
0 => "sunday",
]);
}
public function lockerScheduleList(LockerScheduleListRequest $request)
{
$payload = $request->validated();
$weekly_schedules = $this->lockerScheduleService->lockerScheduleList([
"locker_id" => $payload['locker_id'],
"type_id" => LockerSchedule::WEEKLY,
"sortBy" => "day",
]);
$special_schedules = $this->lockerScheduleService->lockerScheduleList([
"locker_id" => $payload['locker_id'],
"type_id" => LockerSchedule::SPECIAL_DAY,
"sortBy" => "date",
]);
$weekly = self::day_per_week();
$result = collect();
$weekly->each(function($item,$key) use ($result, $weekly_schedules){
$result[$item] = $weekly_schedules->where("day",$key)->values();
});
return self::successResponse('Success',[
'weekly_schedules' => $result ?? [],
'special_schedules' => $special_schedules ?? [],
]);
}
public function lockerScheduleUpdateWeekly(LockerScheduleUpdateWeeklyRequest $request)
{
$lockerSchedule = $this->lockerScheduleService->lockerScheduleUpdateWeekly( $request->validated() );
return self::successResponse('Success',$lockerSchedule);
}
public function lockerScheduleUpdateSpecial(LockerScheduleUpdateSpecialRequest $request)
{
$lockerSchedule = $this->lockerScheduleService->lockerScheduleUpdateSpecial( $request->validated() );
return self::successResponse('Success',$lockerSchedule);
}
}