コード例 #1
0
 public function buildIndex($type = false, $type_id = false, $chain = false, $strSearch = false, $provider_id = false, $brand_id = false)
 {
     $purchaseModel = new Purchase();
     $labelModel = new Label();
     $userModel = new User();
     $count = $this->_glob['_countProductsOfPage'];
     if (isset($_GET['show']) and $_GET['show'] == 'all') {
         $count = $this->_glob['_maxCountProductsOfPage'];
     }
     $purchases = $purchaseModel->getPurchases($type, $type_id, $strSearch, $count, $provider_id, $brand_id);
     $productsIds = $purchases->pluck('product_id');
     $productsIds = $productsIds->toArray();
     $labels = $labelModel->getLabelsByProductsId($productsIds);
     foreach ($purchases as $purchase) {
         $purchase->zakup = $this->getRub($purchase->base_price * ((100 - $purchase->discount_price) / 100) * ($this->_glob['_curr'][$purchase->currency]['RATE'] * ((100 + $purchase->raise) / 100)) * ((100 - $purchase->discount_bulk) / 100), $purchase->currency);
         //та самая ебанутая формула расчета закупа
         if (count($labels) > 0) {
             $arLabel = [];
             foreach ($labels as $label) {
                 if ($purchase->product_id == $label->product_id) {
                     $arLabel[] = $label;
                 }
             }
             $purchase->labels = $arLabel;
         }
     }
     $userTemplates = $userModel->getTemplates('purchases');
     $serializeFields = $userModel->getFields(Auth::User()->template_purch_id, 'purchases');
     $showFields = false;
     if ($serializeFields != null) {
         $showFields = unserialize($serializeFields->fields);
     }
     $pathToProduct = '/product';
     if ($type == 'category') {
         $pathToProduct = '/product/category/' . $type_id[0];
     }
     if ($type == 'brand') {
         $pathToProduct = '/product/brand/' . $type_id;
     }
     if ($type == 'product') {
         $pathToProduct = '/product/product/' . $type_id;
     }
     if ($type == 'label') {
         $pathToProduct = '/product/label/' . $type_id;
     }
     if ($type == 'flag') {
         $pathToProduct = '/product/flag/';
     }
     if ($strSearch) {
         $pathToProduct = '/product/search/' . $strSearch;
     }
     return view('purchases.index')->with('title', 'Условия и цены')->with('purchases', $purchases)->with('chain', $chain)->with('pathToProduct', $pathToProduct)->with('templates', $userTemplates)->with('fields', $showFields);
 }
コード例 #2
0
 /**
  * Display the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function show(Label $labelModel, History $historyModel, Purchase $purchaseModel, Provider $providerController, Brand $brandModel, Category $categoryModel, Product $productModel, $id)
 {
     $product = $productModel->getProduct($id);
     if (!$product) {
         abort(404);
     }
     $purchase = $purchaseModel->getPurchase($id);
     $historyProduct = $historyModel->getProductHistory($id);
     $historyPurchase = $historyModel->getPurchaseHistory($id);
     $historySite = $historyModel->getSiteHistory($id);
     $labels = $labelModel->getLabelsByProductsId([$id]);
     $arLabels = [];
     foreach ($labels as $label) {
         $arLabels[] = $label->label;
     }
     $strLabels = implode(',', $arLabels);
     if (!empty($product->childs)) {
         $product->childs = unserialize($product->childs);
     }
     $categories_list = $categoryModel->getFullCategoriesList();
     $brands_list = $brandModel->getFullBrandsList();
     $provider_list = $providerController->getProvedrsList();
     return view('products.show')->with('title', $product->category_name . ' ' . $product->name)->with('product', $product)->with('purchase', $purchase)->with('categories_list', $categories_list)->with('brands_list', $brands_list)->with('provider_list', $provider_list)->with('history_product', $historyProduct)->with('history_purchase', $historyPurchase)->with('history_site', $historySite)->with('labels', $strLabels);
 }