/** * Store a newly created resource in storage. * * @return Response */ public function store() { $validator = Validator::make(Input::all(), Products::$rules); if ($validator->passes()) { $product = new Products(); $product->name = addslashes(Input::get('name')); $product->color_id = Input::get('color'); $product->product_code = 0; $product->sp = Input::get('sp'); $product->cp = Input::get('cp'); $product->quantity = Input::get('quantity'); $product->type_id = Input::get('type_id'); $product->unit_id = Input::get('unit_id'); $product->save(); $product->setProductCode($product); $stock = new Stocks(); $stock->supplier_id = Input::get('supplier_id'); $stock->product_id = $product->id; $stock->quantity = Input::get('quantity'); $stock->save(); return Redirect::route('products.index')->with('success', 'Product created successfully'); } else { return Redirect::route('products.create')->withErrors($validator)->withInput(Input::all()); } }
public static function updateStock($productId) { $product = Products::find($productId); $stockQuantity = Stocks::whereProductId($productId)->sum('quantity'); $soldQuantity = SalesItems::where('product_id', '=', $productId)->sum('quantity'); $product->quantity = $stockQuantity - $soldQuantity; $product->save(); }
public function reject($id) { $outletsStocksReturns = OutletsStocksReturns::find($id); if (!$outletsStocksReturns) { return Redirect::route('stockreturns.index')->with('error', 'Product not found in Outlets Stocks Returns Table'); } else { if ($outletsStocksReturns->status == "Pending...") { $outletsStocksReturns->status = "Rejected"; $outletsStocksReturns->save(); return Redirect::route('stockreturns.index')->with('success', 'Stock Return Rejected'); } else { $stock = Stocks::where('product_id', '=', $outletsStocksReturns->product_id)->first(); $stock->quantity = $stock->quantity - $outletsStocksReturns->quantity; $stock->save(); $outletsStocks = OutletsStocks::where('product_id', '=', $outletsStocksReturns->product_id)->where('outlet_id', '=', $outletsStocksReturns->outlet_id)->first(); $outletsStocks->quantity = $outletsStocks->quantity + $outletsStocksReturns->quantity; $outletsStocks->save(); $outletsStocksReturns->status = "Rejected"; $outletsStocksReturns->save(); return Redirect::route('stockreturns.index')->with('success', 'Stock Return Rejected'); } } }
<?php if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== TRUE) { die; } CModule::IncludeModule("iblock"); global $USER; $obUser = new User($USER::GetID()); $user_props = $obUser->getProps(array("PROPERTY_CLUB")); $clubID = intval($user_props['PROPERTY_CLUB_VALUE']); $club = new Club($clubID); if (!empty($_POST['NAME'])) { $stocks = new Stocks($clubID); $id = (int) $stocks->add(array("NAME" => trim(strip_tags($_POST['NAME'])), "ACTIVE" => "N")); header("Location: /personal/club/stock/" . $id); die; } $resStockList = $club->getListStokManager("Y", array("nPageSize" => 33, "bShowAll" => false)); while ($ar = $resStockList->Fetch()) { $arStockList[] = $ar; } $arResult['stockList'] = $arStockList; $arResult['club']['ID'] = $clubID; $arResult["NAV_STRING"] = $resStockList->GetPageNavStringEx($navComponentObject, "", "modern"); $this->IncludeComponentTemplate();
<?php require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/header.php"; if (empty($_GET['URL'])) { $Stocks = new Stocks(); $arFields = $Stocks->getInfo(intval($_GET['ID'])); $url = formUrl($arFields['ID'], $arFields['NAME']); header('HTTP/1.1 301 Moved Permanently'); header("Location: /club/stock/{$url}"); die; } $APPLICATION->IncludeComponent("mytb:club.stock", "", array("STOCK_ID" => intval($_GET["ID"])), false); require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/footer.php";
<?php if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) { die; } $arFilter = array("ACTIVE" => "Y"); $arFilter["ID"] = Club::getListHaveNews(); $arNavStartParams = array("nPageSize" => 33, "bShowAll" => false); $result = array(); $res = Club::getList(array("SORT" => "DESC"), $arFilter, FALSE, $arNavStartParams, array("NAME", "ID", "PREVIEW_TEXT", "PREVIEW_PICTURE", 'PROPERTY_RATING', 'PROPERTY_METRO', 'PROPERTY_TIME_WORKING', 'PROPERTY_PRICE_COCKTAIL', 'PROPERTY_CARDS')); while ($arField = $res->Fetch()) { $arFile = CFile::GetFileArray($arField["PREVIEW_PICTURE"]); $result[] = array("ID" => $arField["ID"], "NAME" => $arField["NAME"], "PREVIEW_TEXT" => $arField["~PREVIEW_TEXT"], "PREVIEW_PICTURE" => imgurl($arFile["SRC"], array("w" => 200)), "PROPERTY_METRO_VALUE" => $arField["PROPERTY_METRO_VALUE"], "PROPERTY_RATING_VALUE" => $arField["PROPERTY_RATING_VALUE"], "PROPERTY_TIME_WORKING_VALUE" => str_replace(";", "<br/>", $arField["PROPERTY_TIME_WORKING_VALUE"]), "PROPERTY_PRICE_COCKTAIL_VALUE" => $arField["PROPERTY_PRICE_COCKTAIL_VALUE"], "PROPERTY_CARDS_VALUE" => $arField["PROPERTY_CARDS_VALUE"]); $clubListID[] = intval($arField["ID"]); } $arResult["CLUB_LIST"] = $result; $arResult["stocksCount"] = Stocks::getCount($clubListID); $arResult["NAV_STRING"] = $res->GetPageNavStringEx($navComponentObject, "", "modern"); //$arResult["NAV"]=$res->NavPrint("События", false, "text","/include/paginator/home.php");; $this->IncludeComponentTemplate();
/** * Возвращаем ID клубов у которых есть акции */ static function getListHaveStocks() { return Stocks::getListHaveStocks(); }
<?php /** * Created by JetBrains PhpStorm. * User: oleg * Date: 05.09.12 * Time: 22:56 * To change this template use File | Settings | File Templates. */ require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php"; CModule::IncludeModule("iblock"); $stockID = intval($_POST['ID']); global $USER; $userRes = new User($USER::GetID()); $props = $userRes->getProps(array("PROPERTY_CLUB")); $clubID = $props['PROPERTY_CLUB_VALUE']; $stock = new Stocks(); $stockInfo = $stock->getInfo($stockID); if ($stockInfo['PROPERTY_CLUB_ID_VALUE'] == $clubID) { if ($stock->published($stockID)) { $kupon = new Kupon(); $kupon->sendNotice(array("{$clubID}" => array($stockID))); } die(json_encode(array("status" => "ok", "class" => $stockInfo['ACTIVE'] == "N" ? "Y" : "N", "text" => $stockInfo['ACTIVE'] == "N" ? "Акция показываетя" : "Акция не показывается."))); } die(json_encode(array("status" => "error", "eee" => $USER::GetID())));
/** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { if (!$id) { return Redirect::route('stocks.index')->with('error', 'Please provide Stock id'); } $stock = Stocks::find($id); $product_id = $stock->product_id; if (empty($stock)) { return Redirect::route('stocks.index')->with('error', 'Stock not found'); } $sales = SalesItems::where('stock_id', '=', $id)->count(); if ($sales) { return Redirect::route('stocks.index')->with('error', 'Stock cannot be delete, since this stock already has sale entry'); } Stocks::destroy($id); Products::updateStock($product_id); return Redirect::route('stocks.index')->with('success', 'Stock deleted successfully'); }
<?php /** * Created by JetBrains PhpStorm. * User: oleg * Date: 05.09.12 * Time: 22:56 * To change this template use File | Settings | File Templates. */ require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php"; CModule::IncludeModule("iblock"); $stockID = intval($_POST['ID']); global $USER; $userRes = new User($USER::GetID()); $props = $userRes->getProps(array("PROPERTY_CLUB")); $clubID = $props['PROPERTY_CLUB_VALUE']; $stock = new Stocks(); $stockInfo = $stock->getInfo($stockID); if ($stockInfo['PROPERTY_CLUB_ID_VALUE'] == $clubID) { $stock->active($stockID, $stockInfo['ACTIVE'] == "N" ? "Y" : "N"); die(json_encode(array("status" => "ok", "class" => $stockInfo['ACTIVE'] == "N" ? "Y" : "N", "text" => $stockInfo['ACTIVE'] == "N" ? "Акция показываетя" : "Акция не показывается."))); } die(json_encode(array("status" => "error", "eee" => $USER::GetID())));
<?php if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== TRUE) { die; } CModule::IncludeModule("iblock"); global $USER; $STOCK_ID = $arParams["STOCK_ID"]; $cache_id = serialize(array($arParams, $_SESSION['CLEAR_CASH'])); $arParams['CACHE_TIME'] = intval($arParams['CACHE_TIME']) > 0 ? $arParams['CACHE_TIME'] : 3600; // $obCache = new CPHPCache(); if ($obCache->InitCache($arParams['CACHE_TIME'], $cache_id, "/stock/")) { $vars = $obCache->GetVars(); $arResult = $vars['arResult']; } elseif ($obCache->StartDataCache()) { $club = new Club($CLUB_ID); $stock = new Stocks(); $stockInfo = $stock->getInfo($STOCK_ID, true); $arResult['stockInfo'] = $stockInfo; $club = new Club($stockInfo['PROPERTY_CLUB_ID_VALUE']); $arResult['club'] = $club->getInfo(array("arSelect" => array("NAME", "ID", "PROPERTY_TYPE_FACILITY"))); $obCache->EndDataCache(array('arResult' => $arResult)); } $APPLICATION->SetTitle($arResult['stockInfo']['NAME']); $APPLICATION->SetPageProperty("Expires", date("r", strtotime("+30 day"))); $this->IncludeComponentTemplate();
<?php /** * User: ���� * Data: 11.06.12 22:14 * Site: http://sForge.ru **/ if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) { die; } CModule::IncludeModule("iblock"); if ($this->StartResultCache()) { $arSelect = array("ID", "NAME", "PREVIEW_TEXT", "PREVIEW_PICTURE", 'PROPERTY_RATING', 'PROPERTY_METRO', 'PROPERTY_TIME_WORKING', 'PROPERTY_PRICE_COCKTAIL', 'PROPERTY_CARDS'); $arFilter = array("IBLOCK_ID" => IB_CLUB_ID, "ACTIVE_DATE" => "Y", "ACTIVE" => "Y"); $res = CIBlockElement::GetList(array("SORT" => "DESC"), $arFilter, false, array("nPageSize" => 50), $arSelect); while ($arField = $res->Fetch()) { $arFile = CFile::GetFileArray($arField["PREVIEW_PICTURE"]); $arFields[] = array("ID" => $arField["ID"], "NAME" => $arField["NAME"], "PREVIEW_TEXT" => $arField["~PREVIEW_TEXT"], "PREVIEW_PICTURE" => $arFile["SRC"], "PROPERTY_METRO_VALUE" => $arField["PROPERTY_METRO_VALUE"], "PROPERTY_RATING_VALUE" => $arField["PROPERTY_RATING_VALUE"], "PROPERTY_TIME_WORKING_VALUE" => $arField["PROPERTY_TIME_WORKING_VALUE"], "PROPERTY_PRICE_COCKTAIL_VALUE" => $arField["PROPERTY_PRICE_COCKTAIL_VALUE"], "PROPERTY_CARDS_VALUE" => $arField["PROPERTY_CARDS_VALUE"]); } $stocksRes = new Stocks(1); $stocksCount = $stocksRes->getCount(); $arResult["stocksCount"] = $stocksCount; $arResult["ClubList"] = $arFields; $arResult["res"] = $res; $this->IncludeComponentTemplate(); }