feat: add flight controller
This commit is contained in:
@@ -9,44 +9,41 @@ use Illuminate\Http\Request;
|
|||||||
class FlightController extends Controller
|
class FlightController extends Controller
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* لیست پروازها
|
* لیست پروازهای فعال
|
||||||
*/
|
*/
|
||||||
public function index(Request $request)
|
public function index(Request $request)
|
||||||
{
|
{
|
||||||
$query = Flight::query()
|
$query = Flight::query()
|
||||||
|
->active()
|
||||||
->with([
|
->with([
|
||||||
'travelType',
|
'travelType',
|
||||||
'origin',
|
'tours',
|
||||||
'destination',
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
// فقط پروازهای فعال
|
// شماره پرواز
|
||||||
$query->where('status', 1);
|
|
||||||
|
|
||||||
// جستجو بر اساس شماره پرواز
|
|
||||||
if ($request->filled('flight_number')) {
|
if ($request->filled('flight_number')) {
|
||||||
$query->where(
|
$query->where(
|
||||||
'flight_number',
|
'flight_number',
|
||||||
'like',
|
'like',
|
||||||
'%' . $request->flight_number . '%'
|
'%' . $request->input('flight_number') . '%'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// جستجو بر اساس مبدا
|
// مبدا
|
||||||
if ($request->filled('origin')) {
|
if ($request->filled('origin')) {
|
||||||
$query->where(
|
$query->where(
|
||||||
'origin',
|
'origin',
|
||||||
'like',
|
'like',
|
||||||
'%' . $request->origin . '%'
|
'%' . $request->input('origin') . '%'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// جستجو بر اساس مقصد
|
// مقصد
|
||||||
if ($request->filled('destination')) {
|
if ($request->filled('destination')) {
|
||||||
$query->where(
|
$query->where(
|
||||||
'destination',
|
'destination',
|
||||||
'like',
|
'like',
|
||||||
'%' . $request->destination . '%'
|
'%' . $request->input('destination') . '%'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -65,18 +62,17 @@ class FlightController extends Controller
|
|||||||
public function search(Request $request)
|
public function search(Request $request)
|
||||||
{
|
{
|
||||||
$query = Flight::query()
|
$query = Flight::query()
|
||||||
->where('status', 1)
|
->active()
|
||||||
->with([
|
->with([
|
||||||
'travelType',
|
'travelType',
|
||||||
'origin',
|
'tours',
|
||||||
'destination',
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
if ($request->filled('origin')) {
|
if ($request->filled('origin')) {
|
||||||
$query->where(
|
$query->where(
|
||||||
'origin',
|
'origin',
|
||||||
'like',
|
'like',
|
||||||
'%' . $request->origin . '%'
|
'%' . $request->input('origin') . '%'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -84,14 +80,14 @@ class FlightController extends Controller
|
|||||||
$query->where(
|
$query->where(
|
||||||
'destination',
|
'destination',
|
||||||
'like',
|
'like',
|
||||||
'%' . $request->destination . '%'
|
'%' . $request->input('destination') . '%'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($request->filled('departure_date')) {
|
if ($request->filled('departure_date')) {
|
||||||
$query->where(
|
$query->whereDate(
|
||||||
'departure_date',
|
'departure_date',
|
||||||
$request->departure_date
|
$request->input('departure_date')
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -99,7 +95,7 @@ class FlightController extends Controller
|
|||||||
$query->where(
|
$query->where(
|
||||||
'flight_number',
|
'flight_number',
|
||||||
'like',
|
'like',
|
||||||
'%' . $request->flight_number . '%'
|
'%' . $request->input('flight_number') . '%'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -117,155 +113,16 @@ class FlightController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function show(Flight $flight)
|
public function show(Flight $flight)
|
||||||
{
|
{
|
||||||
/*
|
// // فقط پرواز فعال قابل مشاهده باشد
|
||||||
|--------------------------------------------------------------------------
|
// if (!$flight->isActive()) {
|
||||||
| فعلاً isActive را حذف کردیم
|
// abort(404);
|
||||||
|--------------------------------------------------------------------------
|
// }
|
||||||
| چون اگر متد isActive در مدل اشتباه باشد یا status متفاوت باشد
|
|
||||||
| باعث 404 شدن صفحه میشود.
|
|
||||||
*/
|
|
||||||
|
|
||||||
$flight->load([
|
$flight->load([
|
||||||
'travelType',
|
'travelType',
|
||||||
'origin',
|
|
||||||
'destination',
|
|
||||||
'tours',
|
'tours',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
return view('flights.show', compact('flight'));
|
return view('flights.show', compact('flight'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
//namespace App\Http\Controllers;
|
|
||||||
//
|
|
||||||
//use App\Models\Flight;
|
|
||||||
//use Illuminate\Http\Request;
|
|
||||||
//
|
|
||||||
//class FlightController extends Controller
|
|
||||||
//{
|
|
||||||
// /**
|
|
||||||
// * لیست پروازها
|
|
||||||
// */
|
|
||||||
// public function index(Request $request)
|
|
||||||
// {
|
|
||||||
// $query = Flight::query()
|
|
||||||
// ->where('status', 1)
|
|
||||||
// ->with([
|
|
||||||
// 'travelType',
|
|
||||||
// 'origin',
|
|
||||||
// 'destination',
|
|
||||||
// ]);
|
|
||||||
//
|
|
||||||
// // جستجو بر اساس شماره پرواز
|
|
||||||
// if ($request->filled('flight_number')) {
|
|
||||||
// $query->where(
|
|
||||||
// 'flight_number',
|
|
||||||
// 'like',
|
|
||||||
// '%' . $request->input('flight_number') . '%'
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// // جستجو بر اساس مبدا
|
|
||||||
// if ($request->filled('origin')) {
|
|
||||||
// $query->where(
|
|
||||||
// 'origin',
|
|
||||||
// 'like',
|
|
||||||
// '%' . $request->input('origin') . '%'
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// // جستجو بر اساس مقصد
|
|
||||||
// if ($request->filled('destination')) {
|
|
||||||
// $query->where(
|
|
||||||
// 'destination',
|
|
||||||
// 'like',
|
|
||||||
// '%' . $request->input('destination') . '%'
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// // مرتبسازی
|
|
||||||
// $flights = $query
|
|
||||||
// ->latest()
|
|
||||||
// ->paginate(12)
|
|
||||||
// ->withQueryString();
|
|
||||||
//
|
|
||||||
// return view(
|
|
||||||
// 'flights.index',
|
|
||||||
// compact('flights')
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
//
|
|
||||||
// /**
|
|
||||||
// * جستجوی پروازها
|
|
||||||
// */
|
|
||||||
// public function search(Request $request)
|
|
||||||
// {
|
|
||||||
// $query = Flight::query()
|
|
||||||
// ->where('status', 1)
|
|
||||||
// ->with([
|
|
||||||
// 'travelType',
|
|
||||||
// 'origin',
|
|
||||||
// 'destination',
|
|
||||||
// ]);
|
|
||||||
//
|
|
||||||
// if ($request->filled('origin')) {
|
|
||||||
// $query->where(
|
|
||||||
// 'origin',
|
|
||||||
// 'like',
|
|
||||||
// '%' . $request->input('origin') . '%'
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// if ($request->filled('destination')) {
|
|
||||||
// $query->where(
|
|
||||||
// 'destination',
|
|
||||||
// 'like',
|
|
||||||
// '%' . $request->input('destination') . '%'
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// if ($request->filled('departure_date')) {
|
|
||||||
// $query->where(
|
|
||||||
// 'departure_date',
|
|
||||||
// $request->input('departure_date')
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// $flights = $query
|
|
||||||
// ->latest()
|
|
||||||
// ->paginate(12)
|
|
||||||
// ->withQueryString();
|
|
||||||
//
|
|
||||||
// return view(
|
|
||||||
// 'flights.index',
|
|
||||||
// compact('flights')
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
//
|
|
||||||
// /**
|
|
||||||
// * جزئیات پرواز
|
|
||||||
// */
|
|
||||||
// public function show(Flight $flight)
|
|
||||||
// {
|
|
||||||
// // فقط پروازهای فعال قابل مشاهده باشند
|
|
||||||
// if (!$flight->isActive()) {
|
|
||||||
// abort(404);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// // اطلاعات مورد نیاز پرواز
|
|
||||||
// $flight->load([
|
|
||||||
// 'travelType',
|
|
||||||
// 'origin',
|
|
||||||
// 'destination',
|
|
||||||
// 'tours',
|
|
||||||
// ]);
|
|
||||||
//
|
|
||||||
// return view(
|
|
||||||
// 'flights.show',
|
|
||||||
// compact('flight')
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user