public function update(Request $request, ProductRepo $products, $id, $vid) { $product = $products->find($id); $this->validate($request, ['name' => 'in:color,size,material', 'price' => 'integer', 'qty' => 'integer']); $attrs = $request->all(); $variant = $this->variants->update($attrs, $vid); return $variant; }
public function products(Request $request, ProductRepo $products, $id) { //models per page $perPage = $request->input('per_page', 30); //current page $page = $request->input('page', 1); //sort by $sortBy = $request->input('sort_by', 'name'); //sort order $sortOrder = $request->input('sort_order', 'desc'); //models $models = $products->scopeQuery(function ($query) use($id, $sortBy, $sortOrder) { return $query->where('vendor_id', '=', $id)->orderBy($sortBy, $sortOrder); })->all(); return $this->paginateData($models['data'], count($models['data']), $page, $perPage); }