| Server IP : 103.161.17.216 / Your IP : 216.73.216.1 Web Server : nginx/1.18.0 System : Linux tipsysaigoncharming 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 7.4.3-4ubuntu2.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/app.ansachsongkhoe.net/app/Restaurant/ |
Upload File : |
<?php
namespace App\Restaurant;
use Illuminate\Database\Eloquent\Model;
class Booking extends Model
{
//Allowed booking statuses ('waiting', 'booked', 'completed', 'cancelled')
/**
* The attributes that aren't mass assignable.
*
* @var array
*/
protected $guarded = ['id'];
public function customer()
{
return $this->belongsTo(\App\Contact::class, 'contact_id');
}
public function table()
{
return $this->belongsTo(\App\Restaurant\ResTable::class, 'table_id');
}
public function correspondent()
{
return $this->belongsTo(\App\User::class, 'correspondent_id');
}
public function waiter()
{
return $this->belongsTo(\App\User::class, 'waiter_id');
}
public function location()
{
return $this->belongsTo(\App\BusinessLocation::class, 'location_id');
}
public function business()
{
return $this->belongsTo(\App\Business::class, 'business_id');
}
public static function createBooking($input)
{
$data = [
'contact_id' => $input['contact_id'],
'waiter_id' => isset($input['res_waiter_id']) ? $input['res_waiter_id'] : null,
'table_id' => isset($input['res_table_id']) ? $input['res_table_id'] : null,
'business_id' => $input['business_id'],
'location_id' => $input['location_id'],
'correspondent_id' => isset($input['correspondent']) ? $input['correspondent'] : null,
'booking_start' => $input['booking_start'],
'booking_end' => $input['booking_end'],
'created_by' => $input['created_by'],
'booking_status' => isset($input['booking_status']) ? $input['booking_status'] : 'booked',
'booking_note' => $input['booking_note']
];
$booking = Booking::create($data);
return $booking;
}
}