/**
  * Store a newly created resource in storage.
  *
  * @param Deposit $deposit
  * @param  \Illuminate\Http\Request $request
  * @return \Illuminate\Http\Response
  */
 public function store(Deposit $deposit, Request $request)
 {
     if ((int) $request->input('amount') > Auth::user()->balance) {
         \Session::flash('message', 'Недостаточно средств!');
         return redirect('/profile');
     } elseif ($request->input('amount') <= 0) {
         \Session::flash('message', 'Введите корректную сумму!');
         return back();
     } else {
         $bank = Banks::where('banks_profiles_id', 2)->first();
         $data = $request->all();
         $data['days'] = $request->input('days');
         $data['percent'] = $request->input('percent');
         $data['conclusion'] = Carbon::now()->addDays((int) $request->input('days'));
         $user = User::find($request->input('user_id'));
         $plan = Plan::find($request->input('currency_id'));
         $deposit->fill($data);
         $deposit->user()->associate($user);
         $deposit->plan()->associate($plan);
         $bank->amount += (int) $request->input('amount');
         $bank->update();
         $user->balance -= (int) $request->input('amount');
         $user->update();
         $deposit->save();
         \Session::flash('message', 'Вы успешно сделали вклад! Для получения информации по вкладам перейдите в "Мои операции"');
         return redirect('/profile');
     }
 }
 /**
  * @GET("profile/transactions", as="profile.transactions")
  * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
  */
 public function index()
 {
     $user_id = \Auth::user()->id;
     $purchases = Purchase::where('user_id', $user_id)->get();
     $deposits = Deposit::where('user_id', $user_id)->get();
     $pulloffmoneys = PullOffMoney::where('user_id', $user_id)->get();
     return view('transactions.index', compact('purchases', 'deposits', 'pulloffmoneys'));
 }
 /**
  * @POST("/profile/deposits/{id}")
  * @param $id
  * @param Request $request
  * @return \Illuminate\Http\RedirectResponse
  */
 public function update($id, Request $request)
 {
     $user = \Auth::user();
     $bank = Banks::where('banks_profiles_id', 2)->first();
     $deposit = Deposit::findOrFail($id);
     if ($deposit->conclusion <= new \DateTime() && $deposit->status == 0) {
         $deposit->status = $request->input('status');
         $deposit->update();
         $bank->amount -= $deposit->total;
         $bank->update();
         $user->balance += $deposit->total;
         $user->update();
         \Session::flash('message', 'Вывод успешно завершен! Спасибо, что доверяете нам!');
         return redirect()->route('profile.index');
     } else {
         return redirect()->route('profile.index')->with('message', 'Ошибка вывода!');
     }
 }
 /**
  * @GET("/deposits", as="admin.deposits.index")
  *
  * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
  */
 public function index()
 {
     $deposits = Deposit::all();
     return view('admin.deposits.index', compact('deposits'));
 }