本文整理汇总了PHP中Booking::with方法的典型用法代码示例。如果您正苦于以下问题:PHP Booking::with方法的具体用法?PHP Booking::with怎么用?PHP Booking::with使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Booking
的用法示例。
在下文中一共展示了Booking::with方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: emailBookingDetails
/**
* Functions
*/
public static function emailBookingDetails($bookingId, $view = 'emails.emailMaster', $subject = 'Booking Amendment - Ref No: ')
{
$hotel_bookings = [];
if ($bookings = Session::get('rate_box_details')) {
$rate_keys = array_keys($bookings);
foreach ($rate_keys as $rate_key) {
$hotel_id = explode('_', $rate_key)[0];
$hotel_bookings[$hotel_id][] = $bookings[$rate_key];
$hotel_bookings[$hotel_id]['hotel_name'] = $bookings[$rate_key]['hotel_name'];
$hotel_bookings[$hotel_id]['hotel_address'] = $bookings[$rate_key]['hotel_address'];
$hotel_bookings[$hotel_id]['room_identity'] = $bookings[$rate_key]['room_identity'];
}
}
$bookingInfo = Booking::with('client')->with('flightDetail')->where('id', $bookingId)->first();
$user = Auth::user();
$booking = $bookingInfo->toArray();
// dd($booking);
$mail = Mail::send($view, array('booking' => $booking), function ($message) use($user, $booking, $subject, $hotel_bookings) {
$message->to('tharindarodrigo@gmail.com', $user->first_name)->subject($subject . $booking['reference_number']);
});
if ($mail) {
return true;
}
return false;
}
示例2: getBalanceSheet
public function getBalanceSheet()
{
if (Auth::check()) {
$reference_number = Input::has('reference_number') ? Input::get('reference_number') : '%';
$user_id = Auth::id();
$agent_id = Input::get('agent_id');
$payments_query = Payment::whereHas('user', function ($q) use($agent_id) {
$q->where('user_id', 'like', '%' . $agent_id . '%');
})->with('agent')->select(array('payment_date_time AS date', 'amount AS debit', 'details', 'id'));
$invoices_query = Booking::whereHas('user', function ($q) use($agent_id) {
$q->where('user_id', 'like', '%' . $agent_id . '%');
})->join('invoices', 'invoices.booking_id', '=', 'bookings.id')->select(array('arrival_date AS date', 'reference_number AS details', 'amount as credit'))->where('val', '=', 1);
if (Entrust::hasRole('Agent')) {
$payments_query->where('user_id', $user_id);
$invoices_query->where('user_id', $user_id);
}
if (Input::get('get_payments')) {
Session::flash('activate_payments_tab', 'active');
$from_d = Input::get('from_d');
$to_d = Input::get('to_d');
$payments = $payments_query->whereBetween('payment_date_time', array($from_d, $to_d))->get();
$invoices = $invoices_query->whereBetween('arrival_date', array($from_d, $to_d))->get();
} else {
$payments = $payments_query->get();
$invoices = $invoices_query->get();
}
//dd($pay);
if (Entrust::hasRole('Admin')) {
$bookings = Booking::with('user')->where('reference_number', 'like', '%' . $reference_number . '%')->get();
} else {
$bookings = Booking::whereHas('user', function ($q) {
$q->where('users.id', $this->_user->id);
})->where('reference_number', 'like', $reference_number)->get();
}
$merged_data = array_merge($payments->toArray(), $invoices->toArray());
foreach ($merged_data as $key => $row) {
$c[$key] = $row['date'];
}
if (!empty($merged_data)) {
array_multisort($c, SORT_ASC, $merged_data);
}
$total = 0;
if (Input::has('get_payment')) {
return View::make('accounts.index', compact('bookings', 'payments', 'merged_data', 'total'))->withInput();
}
return View::make('accounts.index', compact('bookings', 'payments', 'merged_data', 'invoice', 'total', 'agent_id'));
}
return App::abort(404);
}
示例3: show
/**
* Display the specified booking.
*
* @param int $id
* @return Response
*/
public function show($id)
{
try {
$booking = Booking::with('voucher')->with('client')->with('flightDetail')->where('id', $id)->first();
} catch (ModelNotFoundException $e) {
return Redirect::to('/404');
}
return View::make('bookings.show', compact('booking', 'clients', 'flightDetails', 'vouchers'));
}
示例4: bookingList
public function bookingList()
{
$arr = [];
$arr = getallheaders();
$b = null;
$count = null;
if (isset($arr['Range'])) {
$response_array = array();
$response_array['Accept-Ranges'] = 'items';
$range = $arr['Range'];
$response_array['Range-Unit'] = 'items';
$arr = explode('-', $arr['Range']);
$items = $arr[1] - $arr[0] + 1;
$skip = $arr[0];
$skip = $skip < 0 ? 0 : $skip;
$c = null;
if (isset($_GET['query'])) {
/*query variables*/
$query = $_GET['query'];
$startdate = $_GET['startdate'];
$enddate = $_GET['enddate'] == '' ? date('Y-m-d') : $_GET['enddate'];
$status_arr = array();
if ($_GET['pending'] == 'true') {
array_push($status_arr, 0);
}
if ($_GET['paid'] == 'true') {
array_push($status_arr, 1);
}
if ($_GET['occupied'] == 'true') {
array_push($status_arr, 2);
}
if ($_GET['ended'] == 'true') {
array_push($status_arr, 3);
}
if ($_GET['preparing'] == 'true') {
array_push($status_arr, 4);
}
if ($_GET['cancelled'] == 'true') {
array_push($status_arr, 5);
}
if ($_GET['overdue'] == 'true') {
array_push($status_arr, 6);
}
$status_arr = count($status_arr) > 0 ? $status_arr : array(0, 1, 2, 3, 4, 5, 6);
/*end of query variables*/
$count = Booking::with('reservedRoom_grp.room.roomDetails', 'remarksHistory')->where('id', 'LIKE', "%{$query}%")->orWhereRaw("concat_ws(' ',firstname,lastname) LIKE '%{$query}%'")->orWhere('firstname', 'LIKE', "%{$query}%")->orWhere('lastname', 'LIKE', "%{$query}%")->orWhere('code', 'LIKE', "%{$query}%")->get()->count();
if (isset($_GET['orderBy']) && $_GET['orderBy'] != '') {
$orderBy = $_GET['orderBy'];
$count = Booking::with('reservedRoom_grp.room.roomDetails', 'remarksHistory')->where(function ($query1) use($query) {
$query1->where('id', 'LIKE', "%{$query}%")->orWhereRaw("concat_ws(' ',firstname,lastname) LIKE '%{$query}%'")->orWhere('firstname', 'LIKE', "%{$query}%")->orWhere('lastname', 'LIKE', "%{$query}%")->orWhere('code', 'LIKE', "%{$query}%");
})->where(function ($date) use($startdate, $enddate) {
$date->whereBetween('check_in', array($startdate, $enddate))->orWhereBetween('check_out', array($startdate, $enddate))->orWhereRaw('"' . $startdate . '" between check_in and check_out')->orWhereRaw('"' . $enddate . '" between check_in and check_out');
})->where(function ($status) use($status_arr) {
$status->whereIn('status', $status_arr);
})->get()->count();
$b = Booking::with('reservedRoom_grp.room.roomDetails', 'remarksHistory')->where(function ($query1) use($query) {
$query1->where('id', 'LIKE', "%{$query}%")->orWhereRaw("concat_ws(' ',firstname,lastname) LIKE '%{$query}%'")->orWhere('firstname', 'LIKE', "%{$query}%")->orWhere('lastname', 'LIKE', "%{$query}%")->orWhere('code', 'LIKE', "%{$query}%");
})->orWhere(function ($date) use($startdate, $enddate) {
$date->whereBetween('check_in', array($startdate, $enddate))->orWhereBetween('check_out', array($startdate, $enddate))->orWhereRaw('"' . $startdate . '" between check_in and check_out')->orWhereRaw('"' . $enddate . '" between check_in and check_out');
})->where(function ($status) use($status_arr) {
$status->whereIn('status', $status_arr);
})->orderBy("{$orderBy}", 'DESC')->skip($skip)->take($items)->get();
} else {
$orderBy = $_GET['orderBy'];
$count = Booking::all()->count();
$b = Booking::with('reservedRoom_grp.room.roomDetails', 'remarksHistory')->where('id', 'LIKE', "%{$query}%")->orWhereRaw("concat_ws(' ',firstname,lastname) LIKE '%{$query}%'")->orWhere('firstname', 'LIKE', "%{$query}%")->orWhere('lastname', 'LIKE', "%{$query}%")->orWhere('code', 'LIKE', "%{$query}%")->skip($skip)->take($items)->get();
}
$response = Response::make($b, 200);
$response_array['Content-Ranges'] = 'itemss ' . $range . '/' . $count;
$response->header('Content-Range', $response_array['Content-Ranges'])->header('Accept-Ranges', 'items')->header('Range-Unit', 'items')->header('Total-Items', $count)->header('Flash-Message', 'Now showing pages ' . $arr[0] . '-' . $arr[1] . ' out of ' . $count);
return $response;
} else {
$count = Booking::all()->count();
if (isset($_GET['orderBy']) && $_GET['orderBy'] != '') {
$orderBy = $_GET['orderBy'];
$b = Booking::with('reservedRoom_grp.room.roomDetails', 'remarksHistory')->orderBy("{$orderBy}", 'DESC')->skip($skip)->take($items)->get();
} else {
$b = Booking::with('reservedRoom_grp.room.roomDetails', 'remarksHistory')->skip($skip)->take($items)->get();
}
}
$response = Response::make($b, 200);
$response_array['Content-Ranges'] = 'items ' . $range . '/' . $count;
$response->header('Content-Range', $response_array['Content-Ranges'])->header('Accept-Ranges', 'items')->header('Range-Unit', 'items')->header('Total-Items', $count)->header('Flash-Message', 'Now showing pages ' . $arr[0] . '-' . $arr[1] . ' out of ' . $count);
return $response;
}
$b = Booking::all();
$response = Response::make($b, 200);
$response->header('Content-Ranges', 'test');
return $response;
}
示例5: ajax_todayDeparture
public function ajax_todayDeparture()
{
$today = date('Y-m-d');
$today_stats = Booking::with('reservedRoom_grp.room.roomDetails')->where(function ($query) use($today) {
$query->where('status', 3)->orWhere(function ($query) use($today) {
$query->where('check_out', 'like', "%{$today}%")->where(function ($query1) {
$query1->where('status', '!=', '5')->orWhere('status', '!=', 4);
});
});
})->get();
$cpage = 'dashboard';
$bookings = [];
foreach ($today_stats as $stats) {
array_push($bookings, $stats);
}
//return $today;
return $bookings;
}