+ Update User - Envoi wallet à wallet

This commit is contained in:
Djery-Tom 2020-06-22 16:09:26 +01:00
parent ffd6d77a1e
commit 492444fc7f
6 changed files with 43 additions and 7 deletions

View File

@ -126,18 +126,31 @@ class iLinkTransactionController extends Controller
}else{
// Emettre requete SSL vers le reseau correspondant
}
$destinatire = User::where('user_code', $request->id_destinataire)->first();
if($destinatire){ // Si c'est un wallet ilink
$walletDestinataire = WalletsUser::where('idUser',$destinatire->id)->firstOrFail();
if(isset($request->phone_destinataire)){
$destinataire = User::where('phone', $request->phone_destinataire)->first();
if($destinataire)
$transaction->id_destinataire = $destinataire->user_code;
else
return $this->errorResponse(trans('errors.user_phone_not_exist'));
}elseif (isset($request->id_destinataire)){
$destinataire = User::where('user_code', $request->id_destinataire)->first();
}
if($destinataire){ // Si c'est un wallet ilink
$walletDestinataire = WalletsUser::where('idUser',$destinataire->id)->firstOrFail();
$walletDestinataire->balance += $montantDepot;
$walletDestinataire->save();
}else{
//Emettre requete SSL vers wallet correspondant
//Emettre requete SSL vers wallet extene correspondant pour recharger le compte
return $this->errorResponse(trans('errors.external_wallet_not_defined'));
}
$walletUser->balance -= $transaction->montant;
$walletHyperviseur->save();
$walletUser->save();
$transaction->save();
$this->sendMail($user->email, trans('messages.successful_transaction'), trans('messages.successful_user_send_to_wallet',
['id_transaction' => $transaction->id, 'amount' => $this->toMoney($transaction->montant, $request->init_country), 'net_init' => $this->toMoney($montantDepot, $request->init_country),
'net_final' => $this->convertMoney($montantDepot, $request->init_country, $request->final_country), 'fees' => $this->toMoney($frais, $request->init_country), 'tax' => $this->toMoney($taxe, $request->init_country),
'user_code' => $transaction->id_destinataire]));
return $this->successResponse(trans('messages.successful_transaction'));
} else {
return $this->errorResponse(trans('messages.incorrect_user_password'));

View File

@ -212,7 +212,10 @@ class WalletIlinkTransaction extends Model
return [
'init_country' =>'required|integer|min:0|not_in:0',
'final_country' =>'required|integer|min:0|not_in:0',
'id_destinataire' =>'required|integer|min:0|not_in:0',
'type_document_destinataire'=>'required',
'id_document_destinataire'=>'required',
'id_destinataire' =>'required_without:phone_destinataire',
'phone_destinataire'=>'required_without:id_destinataire',
'network_destinataire'=>'required|integer|min:0|not_in:0',
];
}

View File

@ -9,4 +9,5 @@ return [
'visa_api_failed'=> 'Request to API visa failed',
'failed_transaction' => 'Failed transaction',
'user_phone_not_exist' => 'This customer number does not exist',
'external_wallet_not_defined' => 'This code does not correspond to an iLink wallet and no external wallet is defined'
];

View File

@ -44,5 +44,14 @@ Transaction information:
- Net amount of the destination country : :net_final
- Fees : :fees
- Tax : :tax
- Withdrawal code : :code'
- Withdrawal code : :code',
'successful_user_send_to_wallet' => 'Money sent to a wallet.
Transaction information:
- Transaction ID : :id_transaction
- Amount of the transaction : :amount
- Net amount of the country of departure : :net_init
- Net amount of the destination country : :net_final
- Fees : :fees
- Tax : :tax
- Recipient wallet code : :code',
];

View File

@ -9,4 +9,5 @@ return [
'visa_api_failed'=> 'La requete vers l\'api visa a échouée',
'failed_transaction' => 'Transaction échouée',
'user_phone_not_exist' => 'Ce numéro client n\'existe pas',
'external_wallet_not_defined' => 'Ce code ne correspond pas à un wallet iLink et aucun wallet externe n\'est defini'
];

View File

@ -36,7 +36,7 @@ Informations de la transaction :
- Montant net du pays de destination : :net_final
- Frais : :fees
- Taxe : :tax',
'successful_send_cash' => 'Envoi effectué par :sender_name à :receiver_name.
'successful_send_cash' => 'Envoi d\'argent effectué par :sender_name à :receiver_name.
Informations de la transaction :
- Transaction ID : :id_transaction
- Montant de la transaction : :amount
@ -45,4 +45,13 @@ Informations de la transaction :
- Frais : :fees
- Taxe : :tax
- Code de retrait : :code',
'successful_user_send_to_wallet' => 'Envoi d\'argent vers un wallet effectué.
Informations de la transaction :
- Transaction ID : :id_transaction
- Montant de la transaction : :amount
- Montant net du pays de départ : :net_init
- Montant net du pays de destination : :net_final
- Frais : :fees
- Taxe : :tax
- Code wallet du destinataire : :code',
];