/** * Creates a new Stock model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Stock(); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->idproducto]); } else { return $this->render('create', ['model' => $model]); } }
/** * @param Request $request * @return \Illuminate\Http\JsonResponse */ public function addStock(Request $request) { $product_id = $request->input('product_id'); $quality = $request->input('quality'); $quantity = $request->input('quantity'); $price = $request->input('price'); $stock = new Stock(); $stock->product_id = $product_id; $stock->quality = $quality; $stock->quantity = $quantity; $stock->price = $price; if ($stock->save()) { $product = Product::where('id', '=', $product_id)->get(); if ($product->count()) { $type = $product->first()->type; $name = $product->first()->name; } return response()->json(['added' => true, 'type' => $type, 'name' => $name, 'id' => $stock->id]); } else { return response()->json(['added' => false]); } }
/** * Store a newly created resource in storage. * * @return Response */ public function store(StockRequest $request) { $stock = new Stock(); $stock->item_id = $request->item_id; $stock->lot = $request->lot; $stock->batch_no = $request->batch_no; $stock->expiry_date = $request->expiry_date; $stock->manufacturer = $request->manufacturer; $stock->supplier_id = $request->supplier_id; $stock->quantity_supplied = $request->quantity_supplied; $stock->cost_per_unit = $request->cost_per_unit; $stock->date_of_reception = $request->date_of_reception; $stock->remarks = $request->remarks; $stock->user_id = Auth::user()->id; try { $stock->save(); $url = session('SOURCE_URL'); return redirect()->to($url)->with('message', trans('messages.record-successfully-saved'))->with('activestock', $stock->id); } catch (QueryException $e) { Log::error($e); } }
/** * Creates a new Productos model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Productos(); $fotos = new UploadForm(); if ($model->load(Yii::$app->request->post()) && $model->save()) { $request = Yii::$app->request; $fotos->imageFiles = UploadedFile::getInstances($fotos, 'imageFiles'); if ($fotos->upload($model->id)) { // file is uploaded successfully } if ($model->tipo == 0) { return $this->redirect(['view', 'id' => $model->id]); } else { if ($model->tipo == 1) { $porTiempo = new Temporales(); $porTiempo->fecha = $request->post('fecha'); $porTiempo->idproducto = $model->id; $porTiempo->save(); return $this->redirect(['view', 'id' => $model->id]); } else { $stock = new Stock(); $cantidad = $request->post('cant'); $stock->stock = $cantidad; $stock->idproducto = $model->id; $stock->save(); return $this->redirect(['view', 'id' => $model->id]); } } } else { $img_model = new UploadForm(); $searchModel = new CategoriasSearch(); $dataProvider = $searchModel->search(Yii::$app->request->queryParams); return $this->render('create', ['model' => $model, 'categorias' => $dataProvider, 'img_model' => $img_model]); } }
public function store(ProductionRegisterRequest $request) { try { DB::transaction(function () use($request) { $currentYear = CommonHelper::get_current_financial_year(); $workspace_id = Auth::user()->workspace_id; $count = sizeof($request->input('product_id')); $productInput = $request->input('product_id'); $productionInput = $request->input('production'); for ($i = 0; $i < $count; $i++) { $today = ProductionRegister::where(['date' => strtotime($request->input('date')), 'product_id' => $productInput[$i]])->first(); if ($today) { $today->production += $productionInput[$i]; $today->updated_by = Auth::user()->id; $today->updated_by = time(); $today->update(); } else { $productionRegister = new ProductionRegister(); $productionRegister->date = $request->input('date'); $productionRegister->year = $currentYear; $productionRegister->product_id = $productInput[$i]; $productionRegister->production = $productionInput[$i]; $productionRegister->created_by = Auth::user()->id; $productionRegister->created_at = time(); $productionRegister->save(); } $existingStock = DB::table('stocks')->where(['stock_type' => Config::get('common.balance_type_intermediate'), 'year' => $currentYear, 'workspace_id' => 1, 'product_id' => $productInput[$i]])->first(); $product_length = DB::table('products')->where('id', $productInput[$i])->value('length'); if ($existingStock) { $stock = Stock::findOrFail($existingStock->id); $stock->quantity = $productionInput[$i] * $product_length + $existingStock->quantity; $stock->updated_by = Auth::user()->id; $stock->updated_at = time(); $stock->update(); } else { // Opening Stock Entry $stock = new Stock(); $stock->year = $currentYear; $stock->stock_type = Config::get('common.balance_type_opening'); $stock->workspace_id = $workspace_id; $stock->product_id = $productInput[$i]; $stock->quantity = $productionInput[$i] * $product_length; $stock->created_by = Auth::user()->id; $stock->created_at = time(); $stock->save(); // Intermediate Stock Entry $stock = new Stock(); $stock->year = $currentYear; $stock->stock_type = Config::get('common.balance_type_intermediate'); $stock->workspace_id = $workspace_id; $stock->product_id = $productInput[$i]; $stock->quantity = $productionInput[$i] * $product_length; $stock->created_by = Auth::user()->id; $stock->created_at = time(); $stock->save(); } } }); } catch (\Exception $e) { Session()->flash('error_message', 'Production Register not done!'); return redirect('productionRegisters'); } Session()->flash('flash_message', 'Production Registered Successfully!'); return redirect('productionRegisters'); }
public function store(Request $request) { $workspace_id = Auth::user()->workspace_id; $closedWorkspace = AccountClosing::where(['year' => CommonHelper::get_current_financial_year(), 'type' => 1, 'workspace_id' => $workspace_id])->lists('workspace_id'); if (sizeof($closedWorkspace) == 0) { try { DB::transaction(function () use($request) { $workspace_id = Auth::user()->workspace_id; $levelZeros = ChartOfAccount::where(['parent' => 0, 'status' => 1])->select('id', 'name', 'code')->get(); foreach ($levelZeros as $levelZero) { $workspaceData = WorkspaceLedger::where(['workspace_id' => $workspace_id, 'account_code' => $levelZero->code, 'balance_type' => Config::get('common.balance_type_intermediate'), 'year' => CommonHelper::get_current_financial_year()])->first(); $balance = isset($workspaceData->balance) ? $workspaceData->balance : 0; $a[] = [$levelZero->id, $levelZero->code, '', $balance]; } for ($ci = 0; isset($a[$ci][0]); $ci++) { $nextLevels = ChartOfAccount::where(['parent' => $a[$ci][0], 'status' => 1])->get(['code', 'id']); foreach ($nextLevels as $nextLevel) { $NextLevelWorkspaceData = WorkspaceLedger::where(['workspace_id' => $workspace_id, 'account_code' => $nextLevel->code, 'balance_type' => Config::get('common.balance_type_intermediate'), 'year' => CommonHelper::get_current_financial_year()])->first(); $nextLevelBalance = isset($NextLevelWorkspaceData->balance) ? $NextLevelWorkspaceData->balance : 0; $a[] = [$nextLevel->id, $nextLevel->code, $ci, $nextLevelBalance]; } } $ci = sizeof($a) - 1; for (; $ci >= 0; $ci--) { if (isset($a[$a[$ci][2]][3])) { $contra = ChartOfAccount::where(['contra_status' => 1, 'id' => $a[$ci][0]])->first(); if ($contra) { $a[$a[$ci][2]][3] -= $a[$ci][3]; } else { $a[$a[$ci][2]][3] += $a[$ci][3]; } } // Closing Balance $workspaceLedger = new WorkspaceLedger(); $workspaceLedger->workspace_id = $workspace_id; $workspaceLedger->year = CommonHelper::get_current_financial_year(); $workspaceLedger->account_code = $a[$ci][1]; $workspaceLedger->balance_type = Config::get('common.balance_type_closing'); $workspaceLedger->balance = $a[$ci][3]; $workspaceLedger->created_by = Auth::user()->id; $workspaceLedger->created_at = time(); $workspaceLedger->save(); if (substr($a[$ci][1], 0, 1) == 1 || substr($a[$ci][1], 0, 1) == 4 || substr($a[$ci][1], 0, 1) == 6) { // Initial Balance Next Year $workspaceLedger = new WorkspaceLedger(); $workspaceLedger->workspace_id = $workspace_id; $workspaceLedger->year = CommonHelper::get_next_financial_year(); $workspaceLedger->account_code = $a[$ci][1]; $workspaceLedger->balance_type = Config::get('common.balance_type_opening'); $workspaceLedger->balance = $a[$ci][3]; $workspaceLedger->created_by = Auth::user()->id; $workspaceLedger->created_at = time(); $workspaceLedger->save(); // Intermediate Balance Next Year $workspaceLedger = new WorkspaceLedger(); $workspaceLedger->workspace_id = $workspace_id; $workspaceLedger->year = CommonHelper::get_next_financial_year(); $workspaceLedger->account_code = $a[$ci][1]; $workspaceLedger->balance_type = Config::get('common.balance_type_intermediate'); $workspaceLedger->balance = $a[$ci][3]; $workspaceLedger->created_by = Auth::user()->id; $workspaceLedger->created_at = time(); $workspaceLedger->save(); } else { // Initial Balance Next Year $workspaceLedger = new WorkspaceLedger(); $workspaceLedger->workspace_id = $workspace_id; $workspaceLedger->year = CommonHelper::get_next_financial_year(); $workspaceLedger->account_code = $a[$ci][1]; $workspaceLedger->balance_type = Config::get('common.balance_type_opening'); $workspaceLedger->balance = 0; $workspaceLedger->created_by = Auth::user()->id; $workspaceLedger->created_at = time(); $workspaceLedger->save(); // Intermediate Balance Next Year $workspaceLedger = new WorkspaceLedger(); $workspaceLedger->workspace_id = $workspace_id; $workspaceLedger->year = CommonHelper::get_next_financial_year(); $workspaceLedger->account_code = $a[$ci][1]; $workspaceLedger->balance_type = Config::get('common.balance_type_intermediate'); $workspaceLedger->balance = 0; $workspaceLedger->created_by = Auth::user()->id; $workspaceLedger->created_at = time(); $workspaceLedger->save(); } } // Workspace Account Close Info $accountClosing = new AccountClosing(); $accountClosing->workspace_id = $workspace_id; $accountClosing->year = CommonHelper::get_current_financial_year(); $accountClosing->save(); // Workspace Stock Closing $existingStocks = Stock::where(['stock_type' => Config::get('common.balance_type_intermediate'), 'workspace_id' => $workspace_id, 'year' => CommonHelper::get_current_financial_year()])->get(); if (sizeof($existingStocks) > 0) { foreach ($existingStocks as $existingStock) { // Current Year Closing Balance $stock = new Stock(); $stock->year = CommonHelper::get_current_financial_year(); $stock->stock_type = Config::get('common.balance_type_closing'); $stock->workspace_id = $workspace_id; $stock->product_id = $existingStock->product_id; $stock->quantity = $existingStock->quantity; $stock->created_by = Auth::user()->id; $stock->created_at = time(); $stock->save(); // Next Year Opening Balance $stock = new Stock(); $stock->year = CommonHelper::get_next_financial_year(); $stock->stock_type = Config::get('common.balance_type_opening'); $stock->workspace_id = $workspace_id; $stock->product_id = $existingStock->product_id; $stock->quantity = $existingStock->quantity; $stock->created_by = Auth::user()->id; $stock->created_at = time(); $stock->save(); // Next Year Intermediate Balance $stock = new Stock(); $stock->year = CommonHelper::get_next_financial_year(); $stock->stock_type = Config::get('common.balance_type_intermediate'); $stock->workspace_id = $workspace_id; $stock->product_id = $existingStock->product_id; $stock->quantity = $existingStock->quantity; $stock->created_by = Auth::user()->id; $stock->created_at = time(); $stock->save(); } } }); } catch (\Exception $e) { Session()->flash('error_message', 'Workspace Account Closing Not Done!'); return redirect('workspace_closing'); } Session()->flash('flash_message', 'Workspace Account Closed Successfully!'); return redirect('workspace_closing'); } else { Session()->flash('warning_message', 'Workspace Account Closed Already For This Year!'); return redirect('workspace_closing'); } }