/** * Display a listing of the resource. * * @return Response */ public function index() { $query = Product::query()->with('module'); if (Input::query('keyword')) { $query->where('name', 'like', '%' . Input::query('keyword') . '%'); } $page = Input::query('page') ? Input::query('page') : 1; $per_page = Input::query('per_page') ? Input::query('per_page') : false; $list_total = $query->count(); if ($per_page) { $query->skip(($page - 1) * $per_page)->take($per_page); $list_start = ($page - 1) * $per_page + 1; $list_end = ($page - 1) * $per_page + $per_page; if ($list_end > $list_total) { $list_end = $list_total; } } else { $list_start = 1; $list_end = $list_total; } $results = $query->get(); return response($results)->header('Items-Total', $list_total)->header('Items-Start', $list_start)->header('Items-End', $list_end); }
/** Ajax поиск по каталогу * @param array $params * @return Builder */ private function ajaxSearch(array $params, Category $category = null) { is_null($category) ? $products = Product::query() : ($products = Product::query()->byCategory($category)); if (array_key_exists('season', $params)) { $products = $products->bySeason($params['season']); } if (array_key_exists('new', $params)) { $products = $products->new(); } return $products; }
public function product_search(Request $request) { $this->setMetadata('Tìm kiếm tin đăng'); $product_type_id = $request->input('product_type'); $province_id = $request->input('province'); $district_id = $request->input('district'); $ward_id = $request->input('ward'); $street_id = $request->input('street'); $price_range_id = $request->input('price'); $area_range_id = $request->input('area'); $incense_type_id = $request->input('incense'); $limit = Config::findByKey('rows_per_page_product')->first()->value; $searchDescription = ""; $product_type = null; $province = null; $district = null; $ward = null; $street = null; $query = Product::query(); try { if (isset($product_type_id) && $product_type_id != "") { $query->where('product_type_id', $product_type_id); $product_type = product_type::findOrFail($product_type_id); $searchDescription .= $product_type->name; } if (isset($province_id) && $province_id != "") { $query->where('province_id', $province_id); $province = Province::findOrFail($province_id); $searchDescription .= ", " . $province->name; } if (isset($district_id) && $district_id != "") { $query->where('district_id', $district_id); $district = District::findOrFail($district_id); $searchDescription .= ", " . $district->name; } if (isset($ward_id) && $ward_id != "") { $query->where('ward_id', $ward_id); $ward = Ward::findOrFail($ward_id); $searchDescription .= ", " . $ward->name; } if (isset($street_id) && $street_id != "") { $query->where('street_id', $street_id); $street = Street::findOrFail($street_id); $searchDescription .= ", " . $street->name; } } catch (Exception $e) { } $products = $query->paginate($limit); $product_types = Product_type::where('active', 1)->orderBy('priority')->orderBy('created_at', 'desc')->get(); $hcmProvince = Province::findByKey('ho-chi-minh')->first(); // dd($hcmProvince->id); $districtProduct = District::where('province_id', '=', $hcmProvince->id)->where('is_publish', 1)->orderBy('priority')->orderBy('created_at', 'desc')->get(); return view('frontend.sites1.product_search', ['products' => $products, 'product_types' => $product_types, 'districtProduct' => $districtProduct, 'searchDescription' => $searchDescription]); }
public function category($cat) { if ($cat == 'sales') { $productArray = \App\Product::where('sale', 1)->get(); } else { $productArray = \App\Product::where('category', $cat)->get(); } $games = new GiantBombApi(); $gameInfo = $games->getAllGameInfoById(34402); $productimg = Product::query()->orderByRaw("RAND()")->limit(5)->get(); $product_sale_img = Product::query()->where('sale', 1)->get(); return view('shop.index', compact('gameInfo', 'productArray', 'productimg', 'product_sale_img')); }