Exemplo n.º 1
0
 /**
  * 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');
     }
 }
Exemplo n.º 2
0
 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');
     }
 }
Exemplo n.º 3
0
 /**
  * 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');
     }
 }