+ Add User - Envoi wallet à cash
This commit is contained in:
parent
41b8afdad5
commit
522cd8bafa
|
@ -23,8 +23,10 @@ class HelperController extends Controller
|
||||||
//
|
//
|
||||||
}
|
}
|
||||||
|
|
||||||
public function countries()
|
public function countries($id_wallet_user)
|
||||||
{
|
{
|
||||||
|
$walletUser = WalletsUser::findOrFail($id_wallet_user);
|
||||||
|
$init_country = $walletUser->user->network->country->id;
|
||||||
$countries = DB::select('SELECT id , name , code_dial , code_country FROM countries_currencies WHERE id IN (
|
$countries = DB::select('SELECT id , name , code_dial , code_country FROM countries_currencies WHERE id IN (
|
||||||
SELECT distinct c.id FROM networks n INNER JOIN countries_currencies c ON n.country_id=c.id INNER JOIN configWallet cw ON cw.id_network = n.id WHERE status = 1
|
SELECT distinct c.id FROM networks n INNER JOIN countries_currencies c ON n.country_id=c.id INNER JOIN configWallet cw ON cw.id_network = n.id WHERE status = 1
|
||||||
);');
|
);');
|
||||||
|
|
|
@ -180,16 +180,13 @@ class iLinkTransactionController extends Controller
|
||||||
$walletUser->save();
|
$walletUser->save();
|
||||||
$reseauPayeur->save();
|
$reseauPayeur->save();
|
||||||
$transaction->save();
|
$transaction->save();
|
||||||
$this->sendMail($user->email, trans('messages.successful_transaction'), trans('messages.successful_user_send_to_wallet',
|
$message = trans('messages.successful_user_send_to_wallet',
|
||||||
['id_transaction' => $transaction->id_transaction, 'amount' => $this->toMoney($transaction->montant, $init_country), 'net_init' => $this->toMoney($montantDepot, $init_country),
|
['id_transaction' => $transaction->id_transaction, 'amount' => $this->toMoney($transaction->montant, $init_country), 'net_init' => $this->toMoney($montantDepot, $init_country),
|
||||||
'net_final' => $this->toMoneyWithCurrency($montantDepot, $init_country, $request->final_country), 'fees' => $this->toMoney($frais + $taxe, $init_country),
|
'net_final' => $this->toMoneyWithCurrency($montantDepot, $init_country, $request->final_country), 'fees' => $this->toMoney($frais + $taxe, $init_country),
|
||||||
'init_country' => $this->getCountryName($init_country), 'final_country' => $this->getCountryName($request->final_country),
|
'init_country' => $this->getCountryName($init_country), 'final_country' => $this->getCountryName($request->final_country),
|
||||||
'sender_code' => $user->user_code, 'receiver_code' => $transaction->id_destinataire]));
|
'sender_code' => $user->user_code, 'receiver_code' => $transaction->id_destinataire]);
|
||||||
return $this->successResponse(trans('messages.successful_user_send_to_wallet_2',
|
$this->sendMail($user->email, trans('messages.successful_transaction'), $message);
|
||||||
['amount' => $this->toMoney($transaction->montant, $init_country), 'net_init' => $this->toMoney($montantDepot, $init_country),
|
return $this->successResponse($message.trans('messages.sent_by_mail'));
|
||||||
'net_final' => $this->toMoneyWithCurrency($montantDepot, $init_country, $request->final_country), 'fees' => $this->toMoney($frais + $taxe, $init_country),
|
|
||||||
'init_country' => $this->getCountryName($init_country), 'final_country' => $this->getCountryName($request->final_country),
|
|
||||||
'sender_code' => $user->user_code, 'receiver_code' => $transaction->id_destinataire]));
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
return $this->errorResponse(trans('messages.incorrect_user_password'));
|
return $this->errorResponse(trans('messages.incorrect_user_password'));
|
||||||
|
@ -229,14 +226,12 @@ class iLinkTransactionController extends Controller
|
||||||
$walletUser->save();
|
$walletUser->save();
|
||||||
$transaction->id_transaction = $this->getTransactionID();
|
$transaction->id_transaction = $this->getTransactionID();
|
||||||
$transaction->save();
|
$transaction->save();
|
||||||
$this->sendMail($user->email, trans('messages.successful_transaction'), trans('messages.successful_user_send_to_cart',
|
$message = trans('messages.successful_user_send_to_cart',
|
||||||
['id_transaction' => $transaction->id_transaction, 'amount' => $this->toMoney($transaction->montant, $init_country),
|
['id_transaction' => $transaction->id_transaction, 'amount' => $this->toMoney($transaction->montant, $init_country),
|
||||||
'net' => $this->toMoney($montantDepot, $init_country), 'fees' => $this->toMoney($frais, $init_country),
|
'net' => $this->toMoney($montantDepot, $init_country), 'fees' => $this->toMoney($frais, $init_country),
|
||||||
'sender_code' => $user->user_code, 'cart_number' => wordwrap($request->numero_carte, 4, ' ', true)]));
|
'sender_code' => $user->user_code, 'cart_number' => wordwrap($request->numero_carte, 4, ' ', true)]);
|
||||||
return $this->successResponse(trans('messages.successful_user_send_to_cart_2',
|
$this->sendMail($user->email, trans('messages.successful_transaction'), $message);
|
||||||
['amount' => $this->toMoney($transaction->montant, $init_country),
|
return $this->successResponse($message.trans('messages.sent_by_mail'));
|
||||||
'net' => $this->toMoney($montantDepot, $init_country), 'fees' => $this->toMoney($frais, $init_country),
|
|
||||||
'sender_code' => $user->user_code, 'cart_number' => wordwrap($request->numero_carte, 4, ' ', true)]));
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
return $this->errorResponse(trans('errors.visa_api_failed'), Response::HTTP_INTERNAL_SERVER_ERROR);
|
return $this->errorResponse(trans('errors.visa_api_failed'), Response::HTTP_INTERNAL_SERVER_ERROR);
|
||||||
|
@ -247,7 +242,41 @@ class iLinkTransactionController extends Controller
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 3: //User - Envoi de wallet à cash
|
case 3: //User - Envoi de wallet à cash
|
||||||
|
$this->validate($request, $transaction->send_wallet_cash_rules());
|
||||||
|
$user = $walletUser->user;
|
||||||
|
if ($this->checkPassword($request->password, $user->encrypted_password, $user->salt)) {
|
||||||
|
if ($request->montant > $walletUser->balance) {
|
||||||
|
return $this->errorResponse(trans('errors.insufficient_balance'));
|
||||||
|
} else {
|
||||||
|
$transaction->frais = $frais = ($init_country != $request->final_country) ? $this->calculateFees($plr_user_wallet_cash, $request->montant) : $this->calculateFees($plr_user_wallet_cash_national, $request->montant);
|
||||||
|
$transaction->taxe = $taxe = ($init_country != $request->final_country) ? $this->calculateTax($taxesInternationales, $frais) : $this->calculateTax($taxesNationales, $frais);
|
||||||
|
$transaction->montant_retrait = $montantRetrait = $transaction->montant - $frais - $taxe;
|
||||||
|
|
||||||
|
$walletUser->balance -= $transaction->montant;
|
||||||
|
$transaction->commission_hyp = $frais;
|
||||||
|
$walletHyperviseur->balance_com += $frais;
|
||||||
|
$code_retrait = $this->random_string();
|
||||||
|
$hash = $this->hashSSHA($code_retrait);
|
||||||
|
$transaction->encrypted_code_retrait = $hash['encrypted'];
|
||||||
|
$transaction->code_retrait_salt = $hash['salt'];
|
||||||
|
|
||||||
|
$transaction->id_wallet_hyp = $walletHyperviseur->id;
|
||||||
|
$transaction->id_transaction = $this->getTransactionID();
|
||||||
|
|
||||||
|
$walletHyperviseur->save();
|
||||||
|
$walletUser->save();
|
||||||
|
$transaction->save();
|
||||||
|
$message = trans('messages.successful_user_send_to_cash',
|
||||||
|
['id_transaction' => $transaction->id_transaction, 'amount' => $this->toMoney($transaction->montant, $init_country), 'net_init' => $this->toMoney($montantRetrait, $init_country),
|
||||||
|
'net_final' => $this->toMoneyWithCurrency($montantRetrait, $init_country, $request->final_country), 'fees' => $this->toMoney($frais + $taxe, $init_country),
|
||||||
|
'init_country' => $this->getCountryName($init_country), 'final_country' => $this->getCountryName($request->final_country),'code' => wordwrap($code_retrait, 4, ' ', true),
|
||||||
|
'sender_code' => $user->user_code, 'receiver_code' => $transaction->id_destinataire,'receiver_name' => $request->prenom_destinataire . ' ' . $request->nom_destinataire]);
|
||||||
|
$this->sendMail($user->email, trans('messages.successful_transaction'),$message );
|
||||||
|
return $this->successResponse($message.trans('messages.sent_by_mail'));
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return $this->errorResponse(trans('messages.incorrect_user_password'));
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 4: //User - Envoi de wallet à banque
|
case 4: //User - Envoi de wallet à banque
|
||||||
// Non disponible
|
// Non disponible
|
||||||
|
@ -544,7 +573,7 @@ class iLinkTransactionController extends Controller
|
||||||
$walletHyperviseur->save();
|
$walletHyperviseur->save();
|
||||||
$transaction->save();
|
$transaction->save();
|
||||||
$this->sendMail($request->email_emetteur, trans('messages.successful_transaction'), trans('messages.successful_send_cash',
|
$this->sendMail($request->email_emetteur, trans('messages.successful_transaction'), trans('messages.successful_send_cash',
|
||||||
['sender_name' => $request->prenom_emetteur . ' ' . $request->nom_emetteur, 'receiver_name' => $request->prenom_destinataire . ' ' . $request->prenom_destinataire,
|
['sender_name' => $request->prenom_emetteur . ' ' . $request->nom_emetteur, 'receiver_name' => $request->prenom_destinataire . ' ' . $request->nom_destinataire,
|
||||||
'id_transaction' => $transaction->id, 'amount' => $this->toMoney($transaction->montant, $request->init_country), 'net_init' => $this->toMoney($montantRetrait, $request->init_country),
|
'id_transaction' => $transaction->id, 'amount' => $this->toMoney($transaction->montant, $request->init_country), 'net_init' => $this->toMoney($montantRetrait, $request->init_country),
|
||||||
'net_final' => $this->toMoneyWithCurrency($montantRetrait, $request->init_country, $request->final_country), 'fees' => $this->toMoney($frais, $request->init_country), 'tax' => $this->toMoney($taxe, $request->init_country),
|
'net_final' => $this->toMoneyWithCurrency($montantRetrait, $request->init_country, $request->final_country), 'fees' => $this->toMoney($frais, $request->init_country), 'tax' => $this->toMoney($taxe, $request->init_country),
|
||||||
'code' => wordwrap($code_retrait, 4, ' ', true)]));
|
'code' => wordwrap($code_retrait, 4, ' ', true)]));
|
||||||
|
|
|
@ -212,7 +212,7 @@ class WalletIlinkTransaction extends Model
|
||||||
'code_retrait' =>'required|size:16',
|
'code_retrait' =>'required|size:16',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
/// User Operation rules
|
||||||
public function send_wallet_wallet_rules(){
|
public function send_wallet_wallet_rules(){
|
||||||
return [
|
return [
|
||||||
'final_country' =>'required|integer|min:0|not_in:0',
|
'final_country' =>'required|integer|min:0|not_in:0',
|
||||||
|
@ -222,4 +222,16 @@ class WalletIlinkTransaction extends Model
|
||||||
'network_destinataire'=>'required|integer|min:0|not_in:0',
|
'network_destinataire'=>'required|integer|min:0|not_in:0',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function send_wallet_cash_rules(){
|
||||||
|
return [
|
||||||
|
'final_country' =>'required|integer|min:0|not_in:0',
|
||||||
|
'nom_destinataire'=>'required',
|
||||||
|
'prenom_destinataire'=>'required',
|
||||||
|
'type_document_destinataire'=>'required',
|
||||||
|
'id_document_destinataire'=>'required',
|
||||||
|
'id_destinataire' =>'required_without:phone_destinataire',
|
||||||
|
'network_destinataire'=>'required|integer|min:0|not_in:0',
|
||||||
|
];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,9 +45,9 @@ Transaction information:
|
||||||
- Fees : :fees
|
- Fees : :fees
|
||||||
- Tax : :tax
|
- Tax : :tax
|
||||||
- Withdrawal code : :code',
|
- Withdrawal code : :code',
|
||||||
'successful_user_send_to_wallet' => 'Money sent to a wallet.
|
'successful_user_send_to_wallet' => 'Sending money account to account.
|
||||||
Transaction information :
|
Transaction information :
|
||||||
- Transaction ID : :id_transaction
|
- ID : :id_transaction
|
||||||
- Amount of the transaction : :amount
|
- Amount of the transaction : :amount
|
||||||
- Fees + Taxes : :fees
|
- Fees + Taxes : :fees
|
||||||
- Country of departure : :init_country
|
- Country of departure : :init_country
|
||||||
|
@ -56,33 +56,27 @@ Transaction information :
|
||||||
- Net amount : :net_final
|
- Net amount : :net_final
|
||||||
- Issuer account : :sender_code
|
- Issuer account : :sender_code
|
||||||
- Recipient account : :receiver_code',
|
- Recipient account : :receiver_code',
|
||||||
'successful_user_send_to_wallet_2' => 'Money sent to a wallet.
|
'sent_by_mail' => '
|
||||||
Transaction information :
|
|
||||||
- Amount of the transaction : :amount
|
|
||||||
- Fees + Taxes : :fees
|
|
||||||
- Country of departure: :init_country
|
|
||||||
- Net amount : :net_init
|
|
||||||
- Country of destination : :final_country
|
|
||||||
- Net amount : :net_final
|
|
||||||
- Issuer account : :sender_code
|
|
||||||
- Recipient account : :receiver_code
|
|
||||||
|
|
||||||
This message was sent to the sender\'s email',
|
This message was sent to the sender\'s email',
|
||||||
'successful_user_send_to_cart' => 'Sending money to a visa card made.
|
'successful_user_send_to_cart' => 'Sending money to a visa card made.
|
||||||
Transaction information :
|
Transaction information :
|
||||||
- Transaction ID : :id_transaction
|
- ID : :id_transaction
|
||||||
- Amount of the transaction : :amount
|
- Amount of the transaction : :amount
|
||||||
- Fees : :fees
|
- Fees : :fees
|
||||||
- Net shipping amount : :net
|
- Net shipping amount : :net
|
||||||
- Issuer account :sender_code
|
- Issuer account :sender_code
|
||||||
- Recipient\'s card number: :cart_number',
|
- Recipient\'s card number: :cart_number',
|
||||||
'successful_user_send_to_cart_2' => 'Sending money to a visa card made.
|
'successful_user_send_to_cash' => 'Sending money from account to cash
|
||||||
Transaction information :
|
Transaction information :
|
||||||
|
- Number: :id_transaction
|
||||||
- Amount of the transaction: :amount
|
- Amount of the transaction: :amount
|
||||||
- Fees : :fees
|
- Fees and Taxes: :fees
|
||||||
- Net shipping amount : :net
|
- Country of departure: :init_country
|
||||||
- Issuer account :sender_code
|
- Net amount: :net_init
|
||||||
- Recipient\'s card number: :cart_number
|
- Country of destination: :final_country
|
||||||
|
- Net amount: :net_final
|
||||||
This message was sent to the sender\'s email',
|
- Issuer account: :sender_code
|
||||||
|
- Recipient names: :receiver_name.
|
||||||
|
- Withdrawal code: :code ',
|
||||||
];
|
];
|
||||||
|
|
|
@ -45,10 +45,10 @@ Informations de la transaction :
|
||||||
- Frais : :fees
|
- Frais : :fees
|
||||||
- Taxe : :tax
|
- Taxe : :tax
|
||||||
- Code de retrait : :code',
|
- Code de retrait : :code',
|
||||||
'successful_user_send_to_wallet' => 'Envoi d\'argent vers un wallet effectué.
|
'successful_user_send_to_wallet' => 'Envoi d\'argent compte à compte.
|
||||||
Informations de la transaction :
|
Informations de la transaction :
|
||||||
- Transaction ID : :id_transaction
|
- Numéro : :id_transaction
|
||||||
- Montant de la transaction : :amount
|
- Montant : :amount
|
||||||
- Frais et Taxes : :fees
|
- Frais et Taxes : :fees
|
||||||
- Pays de départ : :init_country
|
- Pays de départ : :init_country
|
||||||
- Montant net : :net_init
|
- Montant net : :net_init
|
||||||
|
@ -56,8 +56,20 @@ Informations de la transaction :
|
||||||
- Montant net : :net_final
|
- Montant net : :net_final
|
||||||
- Compte émetteur : :sender_code
|
- Compte émetteur : :sender_code
|
||||||
- Compte destinataire : :receiver_code',
|
- Compte destinataire : :receiver_code',
|
||||||
'successful_user_send_to_wallet_2' => 'Envoi d\'argent vers un wallet effectué.
|
'sent_by_mail' => '
|
||||||
|
|
||||||
|
Ce message a été envoyé dans le mail de l\'émetteur',
|
||||||
|
'successful_user_send_to_cart' => 'Envoi d\'argent vers une carte visa effectué.
|
||||||
Informations de la transaction :
|
Informations de la transaction :
|
||||||
|
- Numéro : :id_transaction
|
||||||
|
- Montant de la transaction : :amount
|
||||||
|
- Frais : :fees
|
||||||
|
- Montant net d\'envoi: :net
|
||||||
|
- Compte émetteur : :sender_code
|
||||||
|
- Numero de la carte du destinataire : :cart_number',
|
||||||
|
'successful_user_send_to_cash' => 'Envoi d\'argent compte à cash
|
||||||
|
Informations de la transaction :
|
||||||
|
- Numéro : :id_transaction
|
||||||
- Montant de la transaction : :amount
|
- Montant de la transaction : :amount
|
||||||
- Frais et Taxes : :fees
|
- Frais et Taxes : :fees
|
||||||
- Pays de départ : :init_country
|
- Pays de départ : :init_country
|
||||||
|
@ -65,22 +77,6 @@ Informations de la transaction :
|
||||||
- Pays de destination : :final_country
|
- Pays de destination : :final_country
|
||||||
- Montant net : :net_final
|
- Montant net : :net_final
|
||||||
- Compte émetteur : :sender_code
|
- Compte émetteur : :sender_code
|
||||||
- Compte destinataire : :receiver_code
|
- Noms du destinataire : :receiver_name.
|
||||||
|
- Code de retrait : :code',
|
||||||
Ce message a été envoyé dans le mail de l\'émetteur',
|
|
||||||
'successful_user_send_to_cart' => 'Envoi d\'argent vers une carte visa effectué.
|
|
||||||
Informations de la transaction :
|
|
||||||
- Transaction ID : :id_transaction
|
|
||||||
- Montant de la transaction : :amount
|
|
||||||
- Frais : :fees
|
|
||||||
- Montant net d\'envoi: :net
|
|
||||||
- Compte émetteur : :sender_code
|
|
||||||
- Numero de la carte du destinataire : :cart_number',
|
|
||||||
'successful_user_send_to_cart_2' => 'Envoi d\'argent vers une carte visa effectué.
|
|
||||||
Informations de la transaction :
|
|
||||||
- Montant de la transaction : :amount
|
|
||||||
- Frais : :fees
|
|
||||||
- Montant net d\'envoi: :net
|
|
||||||
- Numero du wallet émetteur : :sender_code
|
|
||||||
- Numero de la carte du destinataire : :cart_number',
|
|
||||||
];
|
];
|
||||||
|
|
Loading…
Reference in New Issue