/** * makeDeposit * Data insert into deposit, transaction and roirecords table * Upade carries table * * @return string */ public function makeDeposit(Request $request) { // return $request->pmethod; $depositAmount = $request->deposit; if ($depositAmount) { if ($request->pmethod == 'pm') { return "Processing with Perfect Money"; } else { $account = Account::where('user_id', Auth::user()->id)->first(); if ($account->balance < $depositAmount) { return redirect()->back()->with('message', 'You do not have sufficient balance'); } else { Deposit::insert(['user_id' => Auth::user()->id, 'amount' => $depositAmount, 'pmnt_method' => $request->pmethod, 'pmnt_account' => 'Wallet Balance', 'rcvd_date' => Carbon::now()]); // return "Successfully deposited"; $newDepBalance = $account->balance - $depositAmount; Account::where('user_id', Auth::user()->id)->update(['balance' => $newDepBalance]); // return "Successfully updated"; Transaction::insert(['tnx_id' => 'nd_' . rand(1, 99999999), 'amount' => $depositAmount, 'sign' => '-', 'purpose' => 11, 'date' => Carbon::now(), 'user_id' => Auth::user()->id]); // return "Successfully transaction inserted"; // Create ROI (Return of Income) Schedule $depositTableRow = Deposit::where('user_id', Auth::user()->id)->first(); $roiAmount = $depositAmount * 20 / 100; for ($i = 1; $i <= 10; $i++) { Roirecord::insert(['deposit_id' => $depositTableRow->id, 'amount' => $roiAmount, 'pmnt_date' => Carbon::now()->addMonths($i), 'terms' => $i, 'status' => 0]); } // end for loop // Create ROI (Return of Income) Schedule End // Add Referrar's Comission $referrarId = Auth::user()->referrar_id; $comissionAmount = 10 * $depositAmount / 100; $referrarBalance = Account::where('user_id', $referrarId)->first()->balance; $newRefBalance = $referrarBalance + $comissionAmount; Account::where('user_id', $referrarId)->update(['balance' => $newRefBalance]); // Add Referrar's Comission End //Insert Transaction Table Start Transaction::insert(['tnx_id' => 'drc_' . rand(1, 99999999), 'amount' => $comissionAmount, 'sign' => '+', 'purpose' => 12, 'date' => Carbon::now(), 'user_id' => $referrarId, 'related_id' => Auth::user()->id]); //Insert Transaction Table End $this->carry(Auth::user()->id, Auth::user()->upline_id, $depositAmount); $this->updateMatchingQualify(); return redirect()->back()->with('message', "Successfully Deposited"); } } } else { return redirect()->back()->with('message', 'Request could not processd'); } }
public function payFromWallet() { $accountTable = Account::where('user_id', Auth::user()->id)->first(); if ($accountTable->balance < 25) { return redirect()->back()->with('message', 'You have not sufficent balance'); } else { $newBalance = $accountTable->balance - 25; Account::where('user_id', Auth::user()->id)->update(['balance' => $newBalance]); Transaction::insert(['tnx_id' => 'aa_' . rand(1, 99999999), 'amount' => 25, 'sign' => '-', 'purpose' => 10, 'date' => Carbon::now(), 'user_id' => Auth::user()->id]); User::where('id', Auth::user()->id)->update(['status' => 1]); return redirect()->back()->with('message', 'Successfully Activated'); } }
/** * rtrBalanceTransfer function * Deduct from users roi balance of Account table * Insert deduct transaction on transaction table, Add amount to receiver roi balance again insert adding transaction * @return string */ public function wtwBalanceTransfer($wtwAmount, $receiverName) { // return $wtwAmount; // return $receiverName; if ($wtwAmount) { $balanceRecord = Account::where('user_id', Auth::id())->first(); $receiverInfo = User::where('username', $receiverName)->first(); // for getting receiver id if ($wtwAmount < $balanceRecord->balance) { $newBalanceAfterDeduct = $balanceRecord->balance - $wtwAmount; Account::where('user_id', Auth::id())->update(['balance' => $newBalanceAfterDeduct]); $tnx_id = 'w2w_' . rand(1, 99999999); Transaction::insert(['tnx_id' => $tnx_id, 'amount' => $wtwAmount, 'sign' => '-', 'purpose' => 5, 'date' => Carbon::now(), 'user_id' => Auth::id(), 'related_id' => $receiverInfo->id]); $receiverAccount = Account::where('user_id', $receiverInfo->id)->first(); $preBalance = $receiverAccount->balance; $newBalanceAfterRoiAdded = $preBalance + $wtwAmount; Account::where('user_id', $receiverInfo->id)->update(['balance' => $newBalanceAfterRoiAdded]); Transaction::insert(['tnx_id' => 'w2w_' . rand(1, 99999999), 'amount' => $wtwAmount, 'sign' => '+', 'purpose' => 5, 'date' => Carbon::now(), 'user_id' => Auth::id(), 'related_id' => $receiverInfo->id]); // Sending Email to both with success message and information // return redirect()->back()->with('message','Successfully Balance Transferd'); $tnx = Crypt::encrypt($tnx_id); return redirect()->route('user.transfer.confirm', $tnx); } else { return redirect()->back()->with('message', 'You do not have sufficient balance'); } } else { return redirect()->back()->with('message', 'Request could not processd'); } }