From bbc31bffbb86ea6f43fbd29428f0aa1ee84f67bf Mon Sep 17 00:00:00 2001 From: DJERY-TOM Date: Fri, 1 May 2020 08:25:55 +0100 Subject: [PATCH] + Update treatDemand algorithm --- app/Http/Controllers/CreditController.php | 32 ++++++++++++++++++----- resources/lang/en/messages.php | 2 +- resources/lang/fr/messages.php | 2 +- 3 files changed, 27 insertions(+), 9 deletions(-) diff --git a/app/Http/Controllers/CreditController.php b/app/Http/Controllers/CreditController.php index 0314051..24cd4b1 100644 --- a/app/Http/Controllers/CreditController.php +++ b/app/Http/Controllers/CreditController.php @@ -26,10 +26,12 @@ class CreditController extends Controller // } - public function treatDemand($id_demand,Twilio $twilio){ + public function treatDemand(Request $request , $id_demand,Twilio $twilio){ $demand = DemandeCredit::where('id',$id_demand)->firstOrFail(); if($demand->status == 1) return $this->errorResponse(trans('messages.treated_demand'),Response::HTTP_BAD_REQUEST); + else if ($demand->status == 2) + return $this->errorResponse(trans('messages.canceled_demand'),Response::HTTP_BAD_REQUEST); $agent = AgentPlus::where('code_membre',$demand->code_membre)->firstOrFail(); $parrain = AgentPlus::where('code_membre',$demand->code_parrain)->firstOrFail(); @@ -39,13 +41,29 @@ class CreditController extends Controller $walletAgent = Wallet::where('id_networkAgent',$demand->network_agent_id)->firstOrFail(); $walletParrain = Wallet::findOrFail($walletAgentParrain->wallet_id); - if($walletParrain->balance_princ < $demand->montant) - return $this->errorResponse(trans('messages.princ_balance_inf_to_demand_amount'),Response::HTTP_BAD_REQUEST); + if(isset($request->montant)){ + $rules = [ + 'montant'=>'required|integer|min:0|not_in:0' + ]; + $this->validate($request,$rules); - $walletAgent->balance_princ += $demand->montant; - $walletParrain->balance_princ -= $demand->montant; + if($walletParrain->balance_princ < $request->montant) + return $this->errorResponse(trans('messages.princ_balance_inf_to_demand_amount') . 'modified',Response::HTTP_BAD_REQUEST); + + $walletAgent->balance_princ += $request->montant; + $walletParrain->balance_princ -= $request->montant; + + DB::update('UPDATE demandeCredits SET montant = ? , `status` = \'1\' , date_modification = CURRENT_TIMESTAMP WHERE ( id = ? );',[$request->montant,$demand->id]); + }else{ + if($walletParrain->balance_princ < $demand->montant) + return $this->errorResponse(trans('messages.princ_balance_inf_to_demand_amount'),Response::HTTP_BAD_REQUEST); + + $walletAgent->balance_princ += $demand->montant; + $walletParrain->balance_princ -= $demand->montant; + + DB::update('UPDATE demandeCredits SET `status` = \'1\' , date_modification = CURRENT_TIMESTAMP WHERE ( id = ? );',[$demand->id]); + } - DB::update('UPDATE demandeCredits SET status = 1 , date_modification = CURRENT_TIMESTAMP WHERE ( id = ? );',[$demand->id]); $walletAgent->save(); $walletParrain->save(); @@ -59,7 +77,7 @@ class CreditController extends Controller } public function cancelDemand($id_demand ,Twilio $twilio){ - DB::update('UPDATE demandeCredits SET canceled = 1 WHERE ( id = ? );',[$id_demand]); + DB::update('UPDATE demandeCredits SET status = \'2\' WHERE ( id = ? );',[$id_demand]); // try { // $twilio->notify($agent->phone, 'Votre demande de credit de '.$demand->montant .' aupres de '.$parrain->lastname.' '.$parrain->lastname.'a été traitée'); // }catch (\Exception $e){ diff --git a/resources/lang/en/messages.php b/resources/lang/en/messages.php index 7dc3fce..4da3115 100644 --- a/resources/lang/en/messages.php +++ b/resources/lang/en/messages.php @@ -3,6 +3,6 @@ return [ 'empty_com_balance' => 'Commission balance is empty', 'treated_demand' => 'Credit request already processed', 'canceled_demand' => 'Canceled credit request', - 'princ_balance_inf_to_demand_amount' => 'Sponsor\'s principal balance less than the claim amount', + 'princ_balance_inf_to_demand_amount' => 'Your main balance is less than the amount of the request', 'new_wallet_added' => 'New wallet added' ]; diff --git a/resources/lang/fr/messages.php b/resources/lang/fr/messages.php index fe41b7f..9ce2e42 100644 --- a/resources/lang/fr/messages.php +++ b/resources/lang/fr/messages.php @@ -3,6 +3,6 @@ return [ 'empty_com_balance' => 'Solde de commission est vide', 'treated_demand' => 'Demande de crédit deja traitée', 'canceled_demand' => 'Demande de credit annullée', - 'princ_balance_inf_to_demand_amount' => 'Solde principal du parrain inférieur au montant de la demande', + 'princ_balance_inf_to_demand_amount' => 'Votre solde principal est inférieur au montant de la demande', 'new_wallet_added' => 'Nouveau wallet ajouté' ];