/**
  * @return \Illuminate\View\View
  */
 public function profile()
 {
     $user = Auth::user()->get();
     $total_traveled = Booking::whereraw('user_id = ? AND status = ?', [$user->id, 'paid'])->count();
     return view('customers.profile', ['user' => $user, 'total_traveled' => $total_traveled]);
 }
 public function filter_bookings(Request $request)
 {
     $travel_company = Auth::travel_company_staff()->get()->travel_company;
     $company_id = $travel_company->id;
     $this->validate($request, ['start' => 'required', 'end' => 'required']);
     $end = Carbon::parse($request->end);
     $start = Carbon::parse($request->start);
     $reserved_bookings = Booking::whereraw('travel_company_id = ? AND status = ?', [$company_id, 'reserved'])->whereraw('updated_at <= ? AND created_at >= ?', [$end, $start])->orderBy('updated_at', 'desc')->get();
     $paid_bookings = Booking::whereraw('travel_company_id = ? AND status = ?', [$company_id, 'paid'])->whereraw('updated_at <= ? AND created_at >= ?', [$end, $start])->orderBy('updated_at', 'desc')->get();
     $canceled_bookings = Booking::whereraw('travel_company_id = ? AND status = ?', [$company_id, 'canceled'])->whereraw('updated_at <= ? AND created_at >= ?', [$end, $start])->orderBy('updated_at', 'desc')->get();
     return view('companies.bookings.index', ['reserved_bookings' => $reserved_bookings, 'paid_bookings' => $paid_bookings, 'canceled_bookings' => $canceled_bookings]);
 }