/** * Creates a new Bank model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Bank(); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->b_id]); } else { return $this->render('create', ['model' => $model]); } }
public function actionImport() { $imported = 0; $dropped = 0; $postData = Yii::$app->request->post(); $file = UploadedFile::getInstanceByName('filename'); if ($file) { $content = file($file->tempName); $lines = 0; try { foreach ($content as $line) { $lines++; echo $lines; $bank = explode('@', $line); $oBank = new Bank(); $oBank->b_id = $bank[0]; $oBank->bezeichnung = $bank[1]; $oBank->klasse = $bank[2]; if ($oBank->save()) { $imported++; } else { $dropped++; } } if ($imported == 0) { return $this->render('upload', ['warning' => "Type option is invalid or not found. Check format of the file", 'imported' => 0, 'dropped' => 0]); } } catch (ErrorException $e) { return $this->render('upload', ['warning' => "Invalid character was found at line " . $lines . ". Imported questions " . $imported, 'imported' => 0, 'dropped' => 0]); } } elseif (!empty($postData)) { return $this->render('upload', ['error' => "No file was selected to import", 'imported' => $imported, 'dropped' => $dropped]); } return $this->render('upload', ['imported' => $imported, 'dropped' => $dropped]); }
public function store(BankRequest $request) { try { DB::transaction(function () use($request) { $inputs = $request->input(); $time = time(); $user = Auth::user(); $year = CommonHelper::get_current_financial_year(); $bank = new Bank(); $chartOfAccount = new ChartOfAccount(); $workspaceLedgerData = new WorkspaceLedger(); // Bank Entry $bank->name = $inputs['name']; $bank->account_name = $inputs['account_name']; $bank->account_no = $inputs['account_no']; $bank->account_director = $inputs['account_director']; $bank->account_type = $inputs['account_type']; $bank->start_date = $inputs['start_date']; $bank->balance = $inputs['opening_balance']; $bank->account_code = $inputs['account_code']; $bank->created_by = $user->id; $bank->created_at = $time; $bank->save(); // Account Head Entry $chartOfAccount->parent = 1; // Asset $chartOfAccount->name = $inputs['name']; $chartOfAccount->code = $inputs['account_code']; $chartOfAccount->save(); // Workspace Ledger Account Head Data (Opening) $workspaceLedgerData->workspace_id = $user->workspace_id; $workspaceLedgerData->year = $year; $workspaceLedgerData->account_code = $inputs['account_code']; $workspaceLedgerData->balance_type = Config::get('common.balance_type_opening'); $workspaceLedgerData->balance = 0; $workspaceLedgerData->created_by = $user->id; $workspaceLedgerData->created_at = $time; $workspaceLedgerData->save(); // Workspace Ledger Account Head Data (Intermediate) $workspaceLedgerData = new WorkspaceLedger(); $workspaceLedgerData->workspace_id = $user->workspace_id; $workspaceLedgerData->year = $year; $workspaceLedgerData->account_code = $inputs['account_code']; $workspaceLedgerData->balance_type = Config::get('common.balance_type_intermediate'); $workspaceLedgerData->balance = 0; $workspaceLedgerData->created_by = $user->id; $workspaceLedgerData->created_at = $time; $workspaceLedgerData->save(); if ($inputs['opening_balance'] > 0) { // Update Workspace Ledger $workspaceLedger = WorkspaceLedger::where(['workspace_id' => $user->workspace_id, 'account_code' => $inputs['account_code'], 'balance_type' => Config::get('common.balance_type_intermediate'), 'year' => $year])->first(); $workspaceLedger->balance += $inputs['opening_balance']; $workspaceLedger->updated_by = $user->id; $workspaceLedger->updated_by = $time; $workspaceLedger->save(); } }); } catch (\Exception $e) { dd($e); Session::flash('error_message', 'Failed to create Bank. Please try again!'); return Redirect::back(); } Session::flash('flash_message', 'Bank created successfully!'); return redirect('banks'); }