+ Add simulator
This commit is contained in:
parent
59570ed16a
commit
987ee7015a
|
@ -23,7 +23,7 @@ defined('BASEPATH') OR exit('No direct script access allowed');
|
|||
| a PHP script and you can easily do that on your own.
|
||||
|
|
||||
*/
|
||||
$config['base_url'] = 'https://'.$_SERVER['SERVER_NAME'].'/backofficeiLinkTest';
|
||||
$config['base_url'] = 'http://'.$_SERVER['SERVER_NAME'].'/backofficeiLinkTest';
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
|
@ -76,9 +76,9 @@ $query_builder = TRUE;
|
|||
$db['default'] = array(
|
||||
'dsn' => '',
|
||||
'hostname' => 'localhost',
|
||||
'username' => 'root',
|
||||
'password' => 'vps@2017GA',
|
||||
'database' => 'iLink_preprod',
|
||||
'username' => 'djery-tom',
|
||||
'password' => 'root',
|
||||
'database' => 'iLink_test2',
|
||||
'wallet_service_url' => 'http://localhost:8081',
|
||||
'dbdriver' => 'mysqli',
|
||||
'dbprefix' => '',
|
||||
|
|
|
@ -1589,6 +1589,8 @@ class Gestion extends CI_Controller
|
|||
$data['taux_sup_r_cart'] = $taux->taux_com_sup_retrait_carte_cash;
|
||||
$data['taux_hyp_r_cart'] = $taux->taux_com_hyp_retrait_carte_cash;
|
||||
$data['taux_bq_r_cart'] = $taux->taux_com_banque_retrait_carte_cash;
|
||||
$data['taux_hyp_r_cart_ilink'] = $taux->taux_com_hyp_retrait_carte_cash_ilink;
|
||||
$data['taux_bq_r_cart_ilink'] = $taux->taux_com_banque_retrait_carte_cash_ilink;
|
||||
}
|
||||
|
||||
$data['transactions'] = $this->user_model->getTransactions(null,null,$network_id);
|
||||
|
@ -1710,7 +1712,8 @@ class Gestion extends CI_Controller
|
|||
$this->insertPalier($plr_agent_cash_cash_national,"agent_cash_cash_national", $idConfig);
|
||||
|
||||
$this->user_model->updateConfigWalletIlink($rows['taux_u_w_cart'],$rows['taux_u_c_w'],$rows['taux_u_c_c'],$rows['taux_ag_d_c_c'],$rows['taux_ag_cart_c'],$rows['taux_ag_cash_c'],$rows['taux_ag_s_c'],$rows['taux_sup_s_c'],$rows['taux_hyp_s_c'],$rows['taux_ag_r_c'],$rows['taux_sup_r_c'],
|
||||
$rows['taux_hyp_r_c'],$rows['taux_ag_d_c'],$rows['taux_sup_d_c'],$rows['taux_hyp_d_c'],$rows['taux_bq_d_c'], $rows['taux_ag_r_cart'],$rows['taux_sup_r_cart'],$rows['taux_hyp_r_cart'],$rows['taux_bq_r_cart'],$idConfig);
|
||||
$rows['taux_hyp_r_c'],$rows['taux_ag_d_c'],$rows['taux_sup_d_c'],$rows['taux_hyp_d_c'],$rows['taux_bq_d_c'], $rows['taux_ag_r_cart'],$rows['taux_sup_r_cart'],$rows['taux_hyp_r_cart'],$rows['taux_bq_r_cart'],
|
||||
$rows['taux_hyp_r_cart_ilink'],$rows['taux_bq_r_cart_ilink'],$idConfig);
|
||||
|
||||
$res = true;
|
||||
}
|
||||
|
|
|
@ -368,6 +368,8 @@ class Hyperviseur_dash extends CI_Controller
|
|||
$data['taux_sup_r_cart'] = $taux->taux_com_sup_retrait_carte_cash;
|
||||
$data['taux_hyp_r_cart'] = $taux->taux_com_hyp_retrait_carte_cash;
|
||||
$data['taux_bq_r_cart'] = $taux->taux_com_banque_retrait_carte_cash;
|
||||
$data['taux_hyp_r_cart_ilink'] = $taux->taux_com_hyp_retrait_carte_cash_ilink;
|
||||
$data['taux_bq_r_cart_ilink'] = $taux->taux_com_banque_retrait_carte_cash_ilink;
|
||||
}
|
||||
|
||||
//Create wallet if it not exist
|
||||
|
@ -650,19 +652,217 @@ class Hyperviseur_dash extends CI_Controller
|
|||
$data['country'] = $this->session->userdata('current_pays');
|
||||
$data['network_id'] = $this->session->userdata('network_id');
|
||||
$data['countries'] = $this->user_model->getWalletsCountries();
|
||||
$data['plr_user_wallet_wallet'] = $this->user_model->getPalierConfigWallet("user_wallet_wallet_international", $data['idConfig']);
|
||||
$data['plr_user_wallet_cash'] = $this->user_model->getPalierConfigWallet("user_wallet_cash_international", $data['idConfig']);
|
||||
$data['plr_agent_depot_wallet_ilink'] = $this->user_model->getPalierConfigWallet("agent_depot_wallet_ilink_international" , $data['idConfig']);
|
||||
$data['plr_agent_depot_autre_wallet'] = $this->user_model->getPalierConfigWallet("agent_depot_autre_wallet_international" , $data['idConfig']);
|
||||
$data['plr_agent_cash_cash'] = $this->user_model->getPalierConfigWallet("agent_cash_cash_international", $data['idConfig']);
|
||||
$showResult = false;
|
||||
$frais = 0;
|
||||
$taxe = 0;
|
||||
$config = $data['hasWallet']->first_row();
|
||||
|
||||
$data['plr_user_wallet_wallet_national'] = $this->user_model->getPalierConfigWallet("user_wallet_wallet_national", $data['idConfig']);
|
||||
$data['plr_user_wallet_cash_national'] = $this->user_model->getPalierConfigWallet("user_wallet_cash_national", $data['idConfig']);
|
||||
$data['plr_agent_depot_wallet_ilink_national'] = $this->user_model->getPalierConfigWallet("agent_depot_wallet_ilink_national" , $data['idConfig']);
|
||||
$data['plr_agent_depot_autre_wallet_national'] = $this->user_model->getPalierConfigWallet("agent_depot_autre_wallet_national" , $data['idConfig']);
|
||||
$data['plr_agent_cash_cash_national'] = $this->user_model->getPalierConfigWallet("agent_cash_cash_national", $data['idConfig']);
|
||||
//Simulateur
|
||||
$com_ag = $this->session->userdata('com_ag') ? $this->session->userdata('com_ag') : 0 ;
|
||||
$com_sup = $this->session->userdata('com_sup') ? $this->session->userdata('com_sup') : 0 ;
|
||||
$com_hyp = $this->session->userdata('com_hyp') ? $this->session->userdata('com_hyp') : 0 ;
|
||||
$com_bq = $this->session->userdata('com_bq') ? $this->session->userdata('com_bq') : 0 ;
|
||||
// $frais_retrait = $this->session->userdata('frais_retrait') ? $this->session->userdata('frais_retrait') : 0 ;
|
||||
|
||||
if (isset($_POST)) {
|
||||
$operation = $this->input->post('operation');
|
||||
$montant = $this->input->post('montant');
|
||||
$init_country = $this->input->post('init_country');
|
||||
$final_country = $this->input->post('final_country');
|
||||
$save = $this->input->post('save');
|
||||
$code = $this->input->post('code');
|
||||
|
||||
|
||||
$taxes = $this->user_model->getTaxes($data['idConfig']);
|
||||
|
||||
$plr_user_wallet_wallet = $this->user_model->getPalierConfigWallet("user_wallet_wallet_international", $data['idConfig']);
|
||||
$plr_user_wallet_cash = $this->user_model->getPalierConfigWallet("user_wallet_cash_international", $data['idConfig']);
|
||||
$plr_agent_depot_wallet_ilink = $this->user_model->getPalierConfigWallet("agent_depot_wallet_ilink_international" , $data['idConfig']);
|
||||
$plr_agent_depot_autre_wallet = $this->user_model->getPalierConfigWallet("agent_depot_autre_wallet_international" , $data['idConfig']);
|
||||
$plr_agent_cash_cash = $this->user_model->getPalierConfigWallet("agent_cash_cash_international", $data['idConfig']);
|
||||
|
||||
$plr_user_wallet_wallet_national= $this->user_model->getPalierConfigWallet("user_wallet_wallet_national", $data['idConfig']);
|
||||
$plr_user_wallet_cash_national = $this->user_model->getPalierConfigWallet("user_wallet_cash_national", $data['idConfig']);
|
||||
$plr_agent_depot_wallet_ilink_national = $this->user_model->getPalierConfigWallet("agent_depot_wallet_ilink_national" , $data['idConfig']);
|
||||
$plr_agent_depot_autre_wallet_national = $this->user_model->getPalierConfigWallet("agent_depot_autre_wallet_national" , $data['idConfig']);
|
||||
$plr_agent_cash_cash_national = $this->user_model->getPalierConfigWallet("agent_cash_cash_national", $data['idConfig']);
|
||||
|
||||
$plr_user_wallet_wallet = $plr_user_wallet_wallet ? $plr_user_wallet_wallet->result() : [];
|
||||
$plr_user_wallet_cash = $plr_user_wallet_cash ? $plr_user_wallet_cash->result() : [];
|
||||
$plr_agent_depot_wallet_ilink = $plr_agent_depot_wallet_ilink ? $plr_agent_depot_wallet_ilink->result() : [];
|
||||
$plr_agent_depot_autre_wallet = $plr_agent_depot_autre_wallet ? $plr_agent_depot_autre_wallet->result() : [];
|
||||
$plr_agent_cash_cash = $plr_agent_cash_cash ? $plr_agent_cash_cash->result() : [];
|
||||
|
||||
$plr_user_wallet_wallet_national = $plr_user_wallet_wallet_national ? $plr_user_wallet_wallet_national->result() : [];
|
||||
$plr_user_wallet_cash_national = $plr_user_wallet_cash_national ? $plr_user_wallet_cash_national->result() : [];
|
||||
$plr_agent_depot_wallet_ilink_national = $plr_agent_depot_wallet_ilink_national ? $plr_agent_depot_wallet_ilink_national->result() : [];
|
||||
$plr_agent_depot_autre_wallet_national = $plr_agent_depot_autre_wallet_national ? $plr_agent_depot_autre_wallet_national->result() : [];
|
||||
$plr_agent_cash_cash_national = $plr_agent_cash_cash_national ? $plr_agent_cash_cash_national->result() : [];
|
||||
|
||||
$taxes = $taxes ? $taxes->result() : [];
|
||||
$taxesNationales = array_filter($taxes, function ($tax) {
|
||||
return $tax->destination == 'national';
|
||||
});
|
||||
|
||||
$taxesInternationales = array_filter($taxes, function ($tax) {
|
||||
return $tax->destination == 'international';
|
||||
});
|
||||
|
||||
if (isset($save)) {
|
||||
$showResult = true;
|
||||
switch ($operation) {
|
||||
case 1: //Envoi wallet à wallet
|
||||
$frais = ($init_country != $final_country) ? $this->calculateFees1($plr_user_wallet_wallet, $montant) : $this->calculateFees1($plr_user_wallet_wallet_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? $this->calculateTax($taxesInternationales , $frais) : $this->calculateTax($taxesNationales ,$frais);
|
||||
|
||||
$com_hyp += $frais ;
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);
|
||||
break;
|
||||
case 2: //Envoi de wallet à carte
|
||||
$frais = $montant * $config->taux_com_user_wallet_carte / 100;
|
||||
// $taxe = ($init_country != $final_country) ? $this->calculateTax($taxesInternationales , $frais) : $this->calculateTax($taxesNationales ,$frais);
|
||||
|
||||
$com_hyp += $frais ;
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);
|
||||
break;
|
||||
case 3: //Envoi de wallet à cash
|
||||
$frais = ($init_country != $final_country) ? $this->calculateFees1($plr_user_wallet_cash, $montant) : $this->calculateFees1($plr_user_wallet_cash_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? $this->calculateTax($taxesInternationales , $frais) : $this->calculateTax($taxesNationales ,$frais);
|
||||
|
||||
$com_hyp += $frais ;
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);
|
||||
// $this->session->set_userdata('frais_retrait',$frais);
|
||||
$code = $this->random_string();
|
||||
$data['message_code'] = ''.$code;
|
||||
$this->user_model->insertSimulateur($frais,$montant-$frais-$taxe,$code);
|
||||
break;
|
||||
case 4: //Envoi de wallet à banque
|
||||
// Non disponible
|
||||
//Pas de taxes
|
||||
break;
|
||||
// case 5: //Envoi de carte à wallet
|
||||
// $frais =$montant * $config->taux_com_user_carte_wallet / 100;
|
||||
//// $taxe = ($init_country != $final_country) ? $this->calculateTax($taxesInternationales , $frais) : $this->calculateTax($taxesNationales ,$frais);
|
||||
// break;
|
||||
// case 6: //Envoi de carte à cash
|
||||
// $frais =$montant * $config->taux_com_user_carte_cash / 100;
|
||||
//// $taxe = ($init_country != $final_country) ? $this->calculateTax($taxesInternationales , $frais) : $this->calculateTax($taxesNationales ,$frais);
|
||||
// break;
|
||||
case 9: // Retrait de wallet en cash
|
||||
$frais = ($init_country != $final_country) ? $this->calculateFees1($plr_user_wallet_cash, $montant) : $this->calculateFees1($plr_user_wallet_cash_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? $this->calculateTax($taxesInternationales , $frais) : $this->calculateTax($taxesNationales ,$frais);
|
||||
|
||||
$com_hyp += $frais ;
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);
|
||||
$code = $this->random_string();
|
||||
$data['message_code'] = ''.$code;
|
||||
$this->user_model->insertSimulateur($frais,$montant-$frais-$taxe,$code);
|
||||
break;
|
||||
case 10: //Retrait de carte vers wallet
|
||||
$frais = $montant * $config->taux_com_user_carte_wallet / 100;
|
||||
|
||||
$com_hyp += $frais * $config->taux_com_hyp_retrait_carte_cash_ilink / 100 ;
|
||||
$com_bq += $frais * $config->taux_com_banque_retrait_carte_cash_ilink / 100 ;
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);$this->session->set_userdata('com_bq',$com_bq);
|
||||
break;
|
||||
case 11: // Retrait de carte vers cash
|
||||
$frais = $montant * $config->taux_com_user_carte_cash / 100;
|
||||
|
||||
$com_hyp += $frais * $config->taux_com_hyp_retrait_carte_cash_ilink / 100 ;
|
||||
$com_bq += $frais * $config->taux_com_banque_retrait_carte_cash_ilink / 100 ;
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);$this->session->set_userdata('com_bq',$com_bq);
|
||||
$code = $this->random_string();
|
||||
$data['message_code'] = ''.$code;
|
||||
$this->user_model->insertSimulateur($frais * $config->taux_com_hyp_retrait_carte_cash / 100,$montant-$frais-$taxe,$code);
|
||||
break;
|
||||
case 12: // Agent - Retrait en cash
|
||||
// empty
|
||||
//Sauvegarder les frais lors de chaque operation d'envoi
|
||||
if(isset($code)){
|
||||
$simulateur = $this->user_model->getSimulateur($code);
|
||||
if($simulateur){
|
||||
$part_ag = $simulateur->first_row()->com_hyp * $config->taux_com_ag_retrait_cash/ 100 ;
|
||||
$part_sup = $simulateur->first_row()->com_hyp * $config->taux_com_sup_retrait_cash/ 100;
|
||||
$com_ag += $part_ag;
|
||||
$com_sup += $part_sup ;
|
||||
$com_hyp -= ($part_ag + $part_sup);
|
||||
$this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);
|
||||
}else{
|
||||
$data['error_simulateur'] = 'Code de retrait incorrect';
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
case 13: // Agent - Retrait de la carte vers cash
|
||||
$frais = $montant * $config->taux_com_wallet_ag_carte_cash / 100;
|
||||
|
||||
$com_ag += $frais * $config->taux_com_ag_retrait_carte_cash/ 100 ;
|
||||
$com_sup += $frais * $config->taux_com_sup_retrait_carte_cash / 100 ;
|
||||
$com_hyp += $frais * $config->taux_com_hyp_retrait_carte_cash / 100 ;
|
||||
$com_bq += $frais * $config->taux_com_banque_retrait_carte_cash / 100 ;
|
||||
$this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);$this->session->set_userdata('com_bq',$com_bq);
|
||||
break;
|
||||
case 14: // Agent - Envoi de cash vers wallet iLink
|
||||
$frais = ($init_country != $final_country) ? $this->calculateFees1($plr_agent_depot_wallet_ilink, $montant) : $this->calculateFees1($plr_agent_depot_wallet_ilink_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? $this->calculateTax($taxesInternationales , $frais) : $this->calculateTax($taxesNationales ,$frais);
|
||||
$com_ag += $frais * $config->taux_com_ag_envoi_cash / 100 ;
|
||||
$com_sup += $frais * $config->taux_com_sup_envoi_cash / 100 ;
|
||||
$com_hyp += $frais * $config->taux_com_hyp_envoi_cash / 100 ;
|
||||
$this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);
|
||||
break;
|
||||
case 15: // Agent - Envoi de cash vers autre wallet
|
||||
$frais = ($init_country != $final_country) ? $this->calculateFees1($plr_agent_depot_autre_wallet, $montant) : $this->calculateFees1($plr_agent_depot_autre_wallet_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? $this->calculateTax($taxesInternationales , $frais) : $this->calculateTax($taxesNationales ,$frais);
|
||||
$com_ag += $frais * $config->taux_com_ag_envoi_cash / 100 ;
|
||||
$com_sup += $frais * $config->taux_com_sup_envoi_cash / 100 ;
|
||||
$com_hyp += $frais * $config->taux_com_hyp_envoi_cash / 100 ;
|
||||
$this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);
|
||||
break;
|
||||
case 16: // Agent - Envoi de cash vers une carte visa
|
||||
$frais = $montant * $config->taux_com_wallet_ag_envoi_cash_carte / 100;
|
||||
$com_ag += $frais * $config->taux_com_ag_depot_cash_carte/ 100 ;
|
||||
$com_sup += $frais * $config->taux_com_sup_depot_cash_carte / 100 ;
|
||||
$com_hyp += $frais * $config->taux_com_hyp_depot_cash_carte / 100 ;
|
||||
$com_bq += $frais * $config->taux_com_banque_depot_cash_carte / 100 ;
|
||||
$this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);$this->session->set_userdata('com_bq',$com_bq);
|
||||
break;
|
||||
case 17: // Agent - Envoi de cash vers cash
|
||||
$frais = ($init_country != $final_country) ? $this->calculateFees1($plr_agent_cash_cash, $montant) : $this->calculateFees1($plr_agent_cash_cash_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? $this->calculateTax($taxesInternationales , $frais) : $this->calculateTax($taxesNationales ,$frais);
|
||||
$com_ag += $frais * $config->taux_com_ag_envoi_cash / 100 ;
|
||||
$com_sup += $frais * $config->taux_com_sup_envoi_cash / 100 ;
|
||||
$com_hyp += $frais * $config->taux_com_hyp_envoi_cash / 100 ;
|
||||
$this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
$this->session->set_userdata('com_hyp',$com_hyp);
|
||||
$code = $this->random_string();
|
||||
$data['message_code'] = ''.$code;
|
||||
$this->user_model->insertSimulateur($frais,$montant-$frais-$taxe,$code);
|
||||
break;
|
||||
case 18: // Agent - Envoi de cash vers banque
|
||||
// Indisponible
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$data['showResult'] = $showResult;
|
||||
$data['frais'] = $frais;
|
||||
$data['taxe'] = $taxe;
|
||||
|
||||
$data['operation'] = $operation;
|
||||
$data['init_country'] = $init_country;
|
||||
$data['final_country'] = $final_country;
|
||||
|
||||
$data['com_ag'] = $com_ag;
|
||||
$data['com_sup'] = $com_sup;
|
||||
$data['com_hyp'] = $com_hyp;
|
||||
$data['com_bq'] = $com_bq;
|
||||
|
||||
$data['taxes'] = $this->user_model->getTaxes($data['idConfig']);
|
||||
$operations = [
|
||||
new Operation(1, $this->lang->line('op1')),
|
||||
new Operation(2, $this->lang->line('op2')),
|
||||
|
@ -693,6 +893,71 @@ class Hyperviseur_dash extends CI_Controller
|
|||
$this->load->view('footer');
|
||||
}
|
||||
}
|
||||
|
||||
//Calcul des frais internationaux
|
||||
function calculateFees1(array $paliers, $montant)
|
||||
{
|
||||
$size = sizeof($paliers);
|
||||
$min = $paliers[0]->min;
|
||||
$max = $size > 0 ? $paliers[$size - 1]->max : 0;
|
||||
$palier = null;
|
||||
foreach ($paliers as $p) {
|
||||
if ($montant >= $p->min && $montant <= $p->max) {
|
||||
$palier = $p;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ($palier) {
|
||||
return (($palier->min + $palier->max) / 2 * $palier->taux / 100);
|
||||
} else {
|
||||
if ($montant < $min)
|
||||
return $min * $paliers[0]->taux / 100;
|
||||
else if ($montant > $max)
|
||||
return $max * $paliers[$size - 1]->taux / 100;
|
||||
}
|
||||
}
|
||||
|
||||
//Calcul des frais nationaux
|
||||
function calculateFees2($min, $max, $taux, $montant)
|
||||
{
|
||||
if ($montant < $min)
|
||||
return $min * $taux / 100;
|
||||
else if ($montant > $max)
|
||||
return $max * $taux / 100;
|
||||
else
|
||||
return $montant * $taux / 100;
|
||||
}
|
||||
|
||||
//Calcul des taxes
|
||||
function calculateTax(array $taxes, $frais)
|
||||
{
|
||||
$sommeTaux = 0;
|
||||
$sommeFixe = 0;
|
||||
foreach ($taxes as $tax) {
|
||||
if ($tax->type == '%')
|
||||
$sommeTaux += $tax->valeur;
|
||||
|
||||
if ($tax->type == 'fixe')
|
||||
$sommeFixe += $tax->valeur;
|
||||
}
|
||||
return ($frais * $sommeTaux / 100) + $sommeFixe;
|
||||
}
|
||||
|
||||
public function random_string()
|
||||
{
|
||||
$character_set_array = array();
|
||||
$character_set_array[] = array('count' => 7, 'characters' => 'abcdefghjkmnpqrstuvwxyz');
|
||||
$character_set_array[] = array('count' => 1, 'characters' => '23456789');
|
||||
$temp_array = array();
|
||||
foreach ($character_set_array as $character_set) {
|
||||
for ($i = 0; $i < $character_set['count']; $i++) {
|
||||
$temp_array[] = $character_set['characters'][rand(0, strlen($character_set['characters']) - 1)];
|
||||
}
|
||||
}
|
||||
shuffle($temp_array);
|
||||
return implode('', $temp_array);
|
||||
}
|
||||
}
|
||||
|
||||
class Operation
|
||||
|
|
|
@ -348,6 +348,8 @@
|
|||
$lang['rate_com_bq_remove_cart'] = 'Taux de commission de la banque sur operation de retrait dans carte ';
|
||||
$lang['rate_com_agent_cart_cash'] = 'Taux de commission de l\'agent géolocalisé sur retrait carte à cash ';
|
||||
$lang['rate_com_agent_cash_cart'] = 'Taux de commission de l\'agent géolocalisé sur depot cash vers carte ';
|
||||
$lang['rate_com_hyp_remove_cart_ilink'] = 'Taux de commission hyperviseur sur operation de retrait dans carte pour utilisateur ';
|
||||
$lang['rate_com_bq_remove_cart_ilink'] = 'Taux de commission hyperviseur sur operation de retrait dans carte ';
|
||||
|
||||
// Gestion de la monnaie
|
||||
$lang['currency'] = 'Monnaie';
|
||||
|
@ -392,5 +394,10 @@ $lang['op15'] = 'Agent - Envoi de cash vers autre wallet';
|
|||
$lang['op16'] = 'Agent - Envoi de cash vers une carte visa';
|
||||
$lang['op17'] = 'Agent - Envoi de cash vers cash';
|
||||
$lang['op18'] = 'Agent - Envoi de cash vers banque';
|
||||
$lang['new_tax'] = 'Nouvelle taxe'
|
||||
$lang['new_tax'] = 'Nouvelle taxe';
|
||||
$lang['ilink_first_rule'] = 'La somme des répartitions de commission sur opération d\'envoi d\'argent doit etre égale à 100 %';
|
||||
$lang['ilink_second_rule'] = 'La somme des répartitions de commission sur opération de retrait d\'argent doit etre égale à 100 %';
|
||||
$lang['ilink_third_rule'] = 'La somme des répartitions de commission sur opération de depot cash vers carte doit etre égale à 100 %';
|
||||
$lang['ilink_fourth_rule'] = 'La somme des répartitions de commission sur opération de retrait dans la carte doit etre égale à 100 %';
|
||||
$lang['ilink_fifth_rule'] = 'La somme des répartitions de commission sur opération de retrait dans la carte pour utilisateur iLink doit etre égale à 100 %';
|
||||
?>
|
||||
|
|
|
@ -2291,11 +2291,11 @@ class User_model extends CI_Model
|
|||
}
|
||||
|
||||
public function updateConfigWalletIlink($taux_u_w_cart,$taux_u_c_w,$taux_u_c_c,$taux_ag_d_c_c,$taux_ag_cart_c,$taux_ag_cash_c,$taux_ag_s_c,$taux_sup_s_c,$taux_hyp_s_c,$taux_ag_r_c,$taux_sup_r_c,$taux_hyp_r_c,
|
||||
$taux_ag_d_c,$taux_sup_d_c,$taux_hyp_d_c,$taux_bq_d_c ,$taux_ag_r_cart,$taux_sup_r_cart,$taux_hyp_r_cart,$taux_bq_r_cart ,$idConfig){
|
||||
$taux_ag_d_c,$taux_sup_d_c,$taux_hyp_d_c,$taux_bq_d_c ,$taux_ag_r_cart,$taux_sup_r_cart,$taux_hyp_r_cart,$taux_bq_r_cart ,$taux_hyp_r_cart_ilink,$taux_bq_r_cart_ilink ,$idConfig){
|
||||
$sql = "UPDATE `configWallet` SET `taux_com_user_wallet_carte` = ?, `taux_com_user_carte_wallet` = ?, `taux_com_user_carte_cash` = ?, `taux_com_wallet_ag_envoi_cash_carte` = ?,`taux_com_wallet_ag_carte_cash` = ?, `taux_com_wallet_ag_depot_carte` = ?, `taux_com_ag_envoi_cash` = ?, `taux_com_sup_envoi_cash` = ?, `taux_com_hyp_envoi_cash` = ?, `taux_com_ag_retrait_cash` = ?, `taux_com_sup_retrait_cash` = ?, `taux_com_hyp_retrait_cash` = ?,
|
||||
`taux_com_ag_depot_cash_carte` = ?, `taux_com_sup_depot_cash_carte` = ?, `taux_com_hyp_depot_cash_carte` = ?, `taux_com_banque_depot_cash_carte` = ?, `taux_com_ag_retrait_carte_cash` = ?, `taux_com_sup_retrait_carte_cash` = ?, `taux_com_hyp_retrait_carte_cash` = ?, `taux_com_banque_retrait_carte_cash` = ? WHERE (`id` = ?);";
|
||||
`taux_com_ag_depot_cash_carte` = ?, `taux_com_sup_depot_cash_carte` = ?, `taux_com_hyp_depot_cash_carte` = ?, `taux_com_banque_depot_cash_carte` = ?, `taux_com_ag_retrait_carte_cash` = ?, `taux_com_sup_retrait_carte_cash` = ?, `taux_com_hyp_retrait_carte_cash` = ?, `taux_com_banque_retrait_carte_cash` = ?, `taux_com_hyp_retrait_carte_cash_ilink` = ?, `taux_com_banque_retrait_carte_cash_ilink` = ? WHERE (`id` = ?);";
|
||||
$query = $this->db->query($sql , array($taux_u_w_cart,$taux_u_c_w,$taux_u_c_c, $taux_ag_d_c_c,$taux_ag_cart_c,$taux_ag_cash_c,$taux_ag_s_c,$taux_sup_s_c,$taux_hyp_s_c,$taux_ag_r_c,$taux_sup_r_c,$taux_hyp_r_c,
|
||||
$taux_ag_d_c,$taux_sup_d_c,$taux_hyp_d_c,$taux_bq_d_c , $taux_ag_r_cart,$taux_sup_r_cart,$taux_hyp_r_cart, $taux_bq_r_cart , $idConfig));
|
||||
$taux_ag_d_c,$taux_sup_d_c,$taux_hyp_d_c,$taux_bq_d_c , $taux_ag_r_cart,$taux_sup_r_cart,$taux_hyp_r_cart, $taux_bq_r_cart , $taux_hyp_r_cart_ilink,$taux_bq_r_cart_ilink,$idConfig));
|
||||
return $query;
|
||||
}
|
||||
|
||||
|
@ -2395,4 +2395,19 @@ class User_model extends CI_Model
|
|||
}
|
||||
}
|
||||
|
||||
public function insertSimulateur($frais , $montant ,$code){
|
||||
$sql = "INSERT INTO `simulateur` (`com_hyp` , `montant_retrait`, `code`) VALUES ( ?, ?, ?);";
|
||||
$query = $this->db->query($sql , array($frais,$montant,$code));
|
||||
return $query;
|
||||
}
|
||||
|
||||
public function getSimulateur($code){
|
||||
$sql = "SELECT * FROM `simulateur` WHERE `code` = ?;";
|
||||
$query = $this->db->query($sql , array($code));
|
||||
if($query->num_rows()>0){
|
||||
return $query;
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,145 +14,207 @@ use Brick\Money\Money;
|
|||
|
||||
extract($_POST);
|
||||
|
||||
$showResult = false;
|
||||
$frais = 0;
|
||||
$taxe = 0;
|
||||
$config = $hasWallet->first_row();
|
||||
//$showResult = false;
|
||||
//$frais = 0;
|
||||
//$taxe = 0;
|
||||
//$config = $hasWallet->first_row();
|
||||
|
||||
$plr_user_wallet_wallet = $plr_user_wallet_wallet ? $plr_user_wallet_wallet->result() : [];
|
||||
$plr_user_wallet_cash = $plr_user_wallet_cash ? $plr_user_wallet_cash->result() : [];
|
||||
$plr_agent_depot_wallet_ilink = $plr_agent_depot_wallet_ilink ? $plr_agent_depot_wallet_ilink->result() : [];
|
||||
$plr_agent_depot_autre_wallet = $plr_agent_depot_autre_wallet ? $plr_agent_depot_autre_wallet->result() : [];
|
||||
$plr_agent_cash_cash = $plr_agent_cash_cash ? $plr_agent_cash_cash->result() : [];
|
||||
////Simulateur
|
||||
//$com_ag = $this->session->userdata('com_ag') ? $this->session->userdata('com_ag') : 0 ;
|
||||
//$com_sup = $this->session->userdata('com_sup') ? $this->session->userdata('com_sup') : 0 ;
|
||||
//$com_hyp = $this->session->userdata('com_hyp') ? $this->session->userdata('com_hyp') : 0 ;
|
||||
//$com_bq = $this->session->userdata('com_bq') ? $this->session->userdata('com_bq') : 0 ;
|
||||
//$frais_retrait = $this->session->userdata('frais_retrait') ? $this->session->userdata('frais_retrait') : 0 ;
|
||||
|
||||
$plr_user_wallet_wallet_national = $plr_user_wallet_wallet_national ? $plr_user_wallet_wallet_national->result() : [];
|
||||
$plr_user_wallet_cash_national = $plr_user_wallet_cash_national ? $plr_user_wallet_cash_national->result() : [];
|
||||
$plr_agent_depot_wallet_ilink_national = $plr_agent_depot_wallet_ilink_national ? $plr_agent_depot_wallet_ilink_national->result() : [];
|
||||
$plr_agent_depot_autre_wallet_national = $plr_agent_depot_autre_wallet_national ? $plr_agent_depot_autre_wallet_national->result() : [];
|
||||
$plr_agent_cash_cash_national = $plr_agent_cash_cash_national ? $plr_agent_cash_cash_national->result() : [];
|
||||
|
||||
$taxes = $taxes ? $taxes->result() : [];
|
||||
$taxesNationales = array_filter($taxes, function ($tax) {
|
||||
return $tax->destination == 'national';
|
||||
});
|
||||
|
||||
$taxesInternationales = array_filter($taxes, function ($tax) {
|
||||
return $tax->destination == 'international';
|
||||
});
|
||||
|
||||
if (isset($save)) {
|
||||
$showResult = true;
|
||||
switch ($operation) {
|
||||
case 1: //Envoi wallet à wallet
|
||||
$frais = ($init_country != $final_country) ? calculateFees1($plr_user_wallet_wallet, $montant) : calculateFees1($plr_user_wallet_wallet_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
break;
|
||||
case 2: //Envoi de wallet à carte
|
||||
$frais = $montant * $config->taux_com_user_wallet_carte / 100;
|
||||
//$plr_user_wallet_wallet = $plr_user_wallet_wallet ? $plr_user_wallet_wallet->result() : [];
|
||||
//$plr_user_wallet_cash = $plr_user_wallet_cash ? $plr_user_wallet_cash->result() : [];
|
||||
//$plr_agent_depot_wallet_ilink = $plr_agent_depot_wallet_ilink ? $plr_agent_depot_wallet_ilink->result() : [];
|
||||
//$plr_agent_depot_autre_wallet = $plr_agent_depot_autre_wallet ? $plr_agent_depot_autre_wallet->result() : [];
|
||||
//$plr_agent_cash_cash = $plr_agent_cash_cash ? $plr_agent_cash_cash->result() : [];
|
||||
//
|
||||
//$plr_user_wallet_wallet_national = $plr_user_wallet_wallet_national ? $plr_user_wallet_wallet_national->result() : [];
|
||||
//$plr_user_wallet_cash_national = $plr_user_wallet_cash_national ? $plr_user_wallet_cash_national->result() : [];
|
||||
//$plr_agent_depot_wallet_ilink_national = $plr_agent_depot_wallet_ilink_national ? $plr_agent_depot_wallet_ilink_national->result() : [];
|
||||
//$plr_agent_depot_autre_wallet_national = $plr_agent_depot_autre_wallet_national ? $plr_agent_depot_autre_wallet_national->result() : [];
|
||||
//$plr_agent_cash_cash_national = $plr_agent_cash_cash_national ? $plr_agent_cash_cash_national->result() : [];
|
||||
//
|
||||
//$taxes = $taxes ? $taxes->result() : [];
|
||||
//$taxesNationales = array_filter($taxes, function ($tax) {
|
||||
// return $tax->destination == 'national';
|
||||
//});
|
||||
//
|
||||
//$taxesInternationales = array_filter($taxes, function ($tax) {
|
||||
// return $tax->destination == 'international';
|
||||
//});
|
||||
//
|
||||
//if (isset($save)) {
|
||||
// $showResult = true;
|
||||
// switch ($operation) {
|
||||
// case 1: //Envoi wallet à wallet
|
||||
// $frais = ($init_country != $final_country) ? calculateFees1($plr_user_wallet_wallet, $montant) : calculateFees1($plr_user_wallet_wallet_national, $montant);
|
||||
// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
break;
|
||||
case 3: //Envoi de wallet à cash
|
||||
$frais = ($init_country != $final_country) ? calculateFees1($plr_user_wallet_cash, $montant) : calculateFees1($plr_user_wallet_cash_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
break;
|
||||
case 4: //Envoi de wallet à banque
|
||||
// Non disponible
|
||||
//Pas de taxes
|
||||
break;
|
||||
// case 5: //Envoi de carte à wallet
|
||||
//
|
||||
// $com_hyp += $frais ;
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);
|
||||
// break;
|
||||
// case 2: //Envoi de wallet à carte
|
||||
// $frais = $montant * $config->taux_com_user_wallet_carte / 100;
|
||||
//// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
//
|
||||
// $com_hyp += $frais ;
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);
|
||||
// break;
|
||||
// case 3: //Envoi de wallet à cash
|
||||
// $frais = ($init_country != $final_country) ? calculateFees1($plr_user_wallet_cash, $montant) : calculateFees1($plr_user_wallet_cash_national, $montant);
|
||||
// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
//
|
||||
// $com_hyp += $frais ;
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);
|
||||
// $this->session->set_userdata('frais_retrait',$frais);
|
||||
// break;
|
||||
// case 4: //Envoi de wallet à banque
|
||||
// // Non disponible
|
||||
// //Pas de taxes
|
||||
// break;
|
||||
//// case 5: //Envoi de carte à wallet
|
||||
//// $frais =$montant * $config->taux_com_user_carte_wallet / 100;
|
||||
////// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
//// break;
|
||||
//// case 6: //Envoi de carte à cash
|
||||
//// $frais =$montant * $config->taux_com_user_carte_cash / 100;
|
||||
////// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
//// break;
|
||||
// case 9: // Retrait de wallet en cash
|
||||
// $frais = ($init_country != $final_country) ? calculateFees1($plr_user_wallet_cash, $montant) : calculateFees1($plr_user_wallet_cash_national, $montant);
|
||||
// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
//
|
||||
// $com_hyp += $frais ;
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);
|
||||
// break;
|
||||
// case 10: //Retrait de carte vers wallet
|
||||
// $frais = $montant * $config->taux_com_user_carte_wallet / 100;
|
||||
//// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
//
|
||||
// $com_hyp += $frais * $config->taux_com_hyp_retrait_carte_cash / 100 ;
|
||||
// $com_bq += $frais * $config->taux_com_banque_retrait_carte_cash / 100 ;
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);$this->session->set_userdata('com_bq',$com_bq);
|
||||
// break;
|
||||
// case 6: //Envoi de carte à cash
|
||||
// case 11: // Retrait de carte vers cash
|
||||
// $frais = $montant * $config->taux_com_user_carte_cash / 100;
|
||||
//// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
//
|
||||
// $com_hyp += $frais * $config->taux_com_hyp_retrait_carte_cash / 100 ;
|
||||
// $com_bq += $frais * $config->taux_com_banque_retrait_carte_cash / 100 ;
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);$this->session->set_userdata('com_bq',$com_bq);
|
||||
// break;
|
||||
case 9: // Retrait de wallet en cash
|
||||
$frais = ($init_country != $final_country) ? calculateFees1($plr_user_wallet_cash, $montant) : calculateFees1($plr_user_wallet_cash_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
break;
|
||||
case 10: //Retrait de carte vers wallet
|
||||
$frais = $montant * $config->taux_com_user_carte_wallet / 100;
|
||||
break;
|
||||
case 11: // Retrait de wallet en cash
|
||||
$frais = $montant * $config->taux_com_user_carte_cash / 100;
|
||||
break;
|
||||
case 12: // Agent - Retrait en cash
|
||||
// empty
|
||||
break;
|
||||
case 13: // Agent - Retrait de la carte vers cash
|
||||
$frais = $montant * $config->taux_com_wallet_ag_carte_cash / 100;
|
||||
break;
|
||||
case 14: // Agent - Envoi de cash vers wallet iLink
|
||||
$frais = ($init_country != $final_country) ? calculateFees1($plr_agent_depot_wallet_ilink, $montant) : calculateFees1($plr_agent_depot_wallet_ilink_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
break;
|
||||
case 15: // Agent - Envoi de cash vers autre wallet
|
||||
$frais = ($init_country != $final_country) ? calculateFees1($plr_agent_depot_autre_wallet, $montant) : calculateFees1($plr_agent_depot_autre_wallet_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
break;
|
||||
case 16: // Agent - Envoi de cash vers une carte visa
|
||||
$frais = $montant * $config->taux_com_wallet_ag_envoi_cash_carte / 100;
|
||||
break;
|
||||
case 17: // Agent - Envoi de cash vers cash
|
||||
$frais = ($init_country != $final_country) ? calculateFees1($plr_agent_cash_cash, $montant) : calculateFees1($plr_agent_cash_cash_national, $montant);
|
||||
$taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
break;
|
||||
case 18: // Agent - Envoi de cash vers banque
|
||||
// Indisponible
|
||||
break;
|
||||
}
|
||||
}
|
||||
// case 12: // Agent - Retrait en cash
|
||||
//// empty
|
||||
////Sauvegarder les frais lors de chaque operation d'envoi
|
||||
// $com_ag += $frais_retrait * $config->taux_com_ag_retrait_cash/ 100 ;
|
||||
// $com_sup += $frais_retrait * $config->taux_com_sup_retrait_cash/ 100 ;
|
||||
// $com_hyp -= ($com_ag + $com_sup);
|
||||
// $this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);
|
||||
// break;
|
||||
// case 13: // Agent - Retrait de la carte vers cash
|
||||
// $frais = $montant * $config->taux_com_wallet_ag_carte_cash / 100;
|
||||
//
|
||||
// $com_ag += $frais * $config->taux_com_ag_retrait_carte_cash/ 100 ;
|
||||
// $com_sup += $frais * $config->taux_com_sup_retrait_carte_cash / 100 ;
|
||||
// $com_hyp += $frais * $config->taux_com_hyp_retrait_carte_cash / 100 ;
|
||||
// $com_bq += $frais * $config->taux_com_banque_retrait_carte_cash / 100 ;
|
||||
// $this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);$this->session->set_userdata('com_bq',$com_bq);
|
||||
// break;
|
||||
// case 14: // Agent - Envoi de cash vers wallet iLink
|
||||
// $frais = ($init_country != $final_country) ? calculateFees1($plr_agent_depot_wallet_ilink, $montant) : calculateFees1($plr_agent_depot_wallet_ilink_national, $montant);
|
||||
// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
// $com_ag += $frais * $config->taux_com_ag_envoi_cash / 100 ;
|
||||
// $com_sup += $frais * $config->taux_com_sup_envoi_cash / 100 ;
|
||||
// $com_hyp += $frais * $config->taux_com_hyp_envoi_cash / 100 ;
|
||||
// $this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);
|
||||
// break;
|
||||
// case 15: // Agent - Envoi de cash vers autre wallet
|
||||
// $frais = ($init_country != $final_country) ? calculateFees1($plr_agent_depot_autre_wallet, $montant) : calculateFees1($plr_agent_depot_autre_wallet_national, $montant);
|
||||
// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
// $com_ag += $frais * $config->taux_com_ag_envoi_cash / 100 ;
|
||||
// $com_sup += $frais * $config->taux_com_sup_envoi_cash / 100 ;
|
||||
// $com_hyp += $frais * $config->taux_com_hyp_envoi_cash / 100 ;
|
||||
// $this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);
|
||||
// break;
|
||||
// case 16: // Agent - Envoi de cash vers une carte visa
|
||||
// $frais = $montant * $config->taux_com_wallet_ag_envoi_cash_carte / 100;
|
||||
// $com_ag += $frais * $config->taux_com_ag_depot_cash_carte/ 100 ;
|
||||
// $com_sup += $frais * $config->taux_com_sup_depot_cash_carte / 100 ;
|
||||
// $com_hyp += $frais * $config->taux_com_hyp_depot_cash_carte / 100 ;
|
||||
// $com_bq += $frais * $config->taux_com_banque_depot_cash_carte / 100 ;
|
||||
// $this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);$this->session->set_userdata('com_bq',$com_bq);
|
||||
// break;
|
||||
// case 17: // Agent - Envoi de cash vers cash
|
||||
// $frais = ($init_country != $final_country) ? calculateFees1($plr_agent_cash_cash, $montant) : calculateFees1($plr_agent_cash_cash_national, $montant);
|
||||
// $taxe = ($init_country != $final_country) ? calculateTax($taxesInternationales , $frais) : calculateTax($taxesNationales ,$frais);
|
||||
// $com_ag += $frais * $config->taux_com_ag_envoi_cash / 100 ;
|
||||
// $com_sup += $frais * $config->taux_com_sup_envoi_cash / 100 ;
|
||||
// $com_hyp += $frais * $config->taux_com_hyp_envoi_cash / 100 ;
|
||||
// $this->session->set_userdata('com_ag',$com_ag);$this->session->set_userdata('com_sup',$com_sup);
|
||||
// $this->session->set_userdata('com_hyp',$com_hyp);
|
||||
// break;
|
||||
// case 18: // Agent - Envoi de cash vers banque
|
||||
// // Indisponible
|
||||
// break;
|
||||
// }
|
||||
//}
|
||||
|
||||
//Calcul des frais internationaux
|
||||
function calculateFees1(array $paliers, $montant)
|
||||
{
|
||||
$size = sizeof($paliers);
|
||||
$min = $paliers[0]->min;
|
||||
$max = $size > 0 ? $paliers[$size - 1]->max : 0;
|
||||
$palier = null;
|
||||
foreach ($paliers as $p) {
|
||||
if ($montant >= $p->min && $montant <= $p->max) {
|
||||
$palier = $p;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ($palier) {
|
||||
return (($palier->min + $palier->max) / 2 * $palier->taux / 100);
|
||||
} else {
|
||||
if ($montant < $min)
|
||||
return $min * $paliers[0]->taux / 100;
|
||||
else if ($montant > $max)
|
||||
return $max * $paliers[$size - 1]->taux / 100;
|
||||
}
|
||||
}
|
||||
|
||||
//Calcul des frais nationaux
|
||||
function calculateFees2($min, $max, $taux, $montant)
|
||||
{
|
||||
if ($montant < $min)
|
||||
return $min * $taux / 100;
|
||||
else if ($montant > $max)
|
||||
return $max * $taux / 100;
|
||||
else
|
||||
return $montant * $taux / 100;
|
||||
}
|
||||
|
||||
//Calcul des taxes
|
||||
function calculateTax(array $taxes, $frais)
|
||||
{
|
||||
$sommeTaux = 0;
|
||||
$sommeFixe = 0;
|
||||
foreach ($taxes as $tax) {
|
||||
if ($tax->type == '%')
|
||||
$sommeTaux += $tax->valeur;
|
||||
|
||||
if ($tax->type == 'fixe')
|
||||
$sommeFixe += $tax->valeur;
|
||||
}
|
||||
return ($frais * $sommeTaux / 100) + $sommeFixe;
|
||||
}
|
||||
////Calcul des frais internationaux
|
||||
//function calculateFees1(array $paliers, $montant)
|
||||
//{
|
||||
// $size = sizeof($paliers);
|
||||
// $min = $paliers[0]->min;
|
||||
// $max = $size > 0 ? $paliers[$size - 1]->max : 0;
|
||||
// $palier = null;
|
||||
// foreach ($paliers as $p) {
|
||||
// if ($montant >= $p->min && $montant <= $p->max) {
|
||||
// $palier = $p;
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// if ($palier) {
|
||||
// return (($palier->min + $palier->max) / 2 * $palier->taux / 100);
|
||||
// } else {
|
||||
// if ($montant < $min)
|
||||
// return $min * $paliers[0]->taux / 100;
|
||||
// else if ($montant > $max)
|
||||
// return $max * $paliers[$size - 1]->taux / 100;
|
||||
// }
|
||||
//}
|
||||
//
|
||||
////Calcul des frais nationaux
|
||||
//function calculateFees2($min, $max, $taux, $montant)
|
||||
//{
|
||||
// if ($montant < $min)
|
||||
// return $min * $taux / 100;
|
||||
// else if ($montant > $max)
|
||||
// return $max * $taux / 100;
|
||||
// else
|
||||
// return $montant * $taux / 100;
|
||||
//}
|
||||
//
|
||||
////Calcul des taxes
|
||||
//function calculateTax(array $taxes, $frais)
|
||||
//{
|
||||
// $sommeTaux = 0;
|
||||
// $sommeFixe = 0;
|
||||
// foreach ($taxes as $tax) {
|
||||
// if ($tax->type == '%')
|
||||
// $sommeTaux += $tax->valeur;
|
||||
//
|
||||
// if ($tax->type == 'fixe')
|
||||
// $sommeFixe += $tax->valeur;
|
||||
// }
|
||||
// return ($frais * $sommeTaux / 100) + $sommeFixe;
|
||||
//}
|
||||
|
||||
// set to whatever your rates are relative to
|
||||
$baseCurrency = 'USD';
|
||||
|
@ -223,7 +285,7 @@ $converter = new CurrencyConverter($provider);
|
|||
<!---->
|
||||
<!-- </div>-->
|
||||
<div class="box-body">
|
||||
<form id="calculatorForm" class="form-content" method="post">
|
||||
<form id="calculatorForm" class="form-content" method="post" action="<?php echo base_url('index.php/Hyperviseur_dash/calculator') ?>">
|
||||
<div class="form-group">
|
||||
<div class="row">
|
||||
<div class="col-lg-3">
|
||||
|
@ -360,6 +422,63 @@ $converter = new CurrencyConverter($provider);
|
|||
</div>
|
||||
</div>
|
||||
<?php } ?>
|
||||
<div class="login-box" style="width: 600px;">
|
||||
<h5><strong style="text-decoration: underline;">Simulateur</strong></h5>
|
||||
<div class="login-box-body">
|
||||
<div class="row" style="margin-bottom: 10px">
|
||||
<div class="col-lg-6">
|
||||
<label for="code">Code de retrait</label>
|
||||
<input type="text" class="form-control" id="code"
|
||||
name="code" value="">
|
||||
</div>
|
||||
<?php if(isset($error_simulateur)) {?>
|
||||
<div class="col-lg-6">
|
||||
<label for="code" class="text-red"><?= $error_simulateur?></label>
|
||||
</div>
|
||||
<?php } ?>
|
||||
<?php if(isset($message_code)) {?>
|
||||
<div class="col-lg-6">
|
||||
<label for="code" class="text-green">Votre code de retrait</label>
|
||||
<h4 class="text-green"><?= $message_code?></h4>
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
<div class="row">
|
||||
<?php
|
||||
$currency = @$d->currency_code ? @$d->currency_code : 'XAF';
|
||||
$moneyComAg = Money::of(round(@$com_ag, 0),$currency);
|
||||
$moneyComSup = Money::of(round(@$com_sup, 0),$currency);
|
||||
$moneyComHyp = Money::of(round(@$com_hyp, 0),$currency);
|
||||
$moneyComBq = Money::of(round(@$com_bq, 0),$currency);
|
||||
?>
|
||||
<div class="col-lg-3 col-md-6">
|
||||
<div>
|
||||
<label>Commission de l'agent</label>
|
||||
<h4> <?= $moneyComAg->formatTo('fr_FR')?></h4>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 col-md-6">
|
||||
<div>
|
||||
<label>Commission du superviseur</label>
|
||||
<h4> <?= $moneyComSup->formatTo('fr_FR')?></h4>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 col-md-6">
|
||||
<div>
|
||||
<label>Commission de l'hyperviseur </label>
|
||||
<h4> <?= $moneyComHyp->formatTo('fr_FR')?> </h4>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 col-md-6">
|
||||
<div>
|
||||
<label>Commission de la banque </label>
|
||||
<h4> <?= $moneyComBq->formatTo('fr_FR')?> </h4>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit"
|
||||
name="save"
|
||||
class="btn btn-warning btn-block openModal"><?php echo $this->lang->line('calculate'); ?></button>
|
||||
|
|
|
@ -519,7 +519,7 @@
|
|||
</div>
|
||||
<div class="row">
|
||||
<!--Taux commission wallet agent carte client et Taux commission wallet agent carte client-->
|
||||
<div class="col-lg-2 col-lg-offset-2 col-xs-6">
|
||||
<div class="col-lg-2 col-xs-6">
|
||||
<div class="small-box bg-orange">
|
||||
<div class="inner">
|
||||
<h3><?php echo $taux_ag_r_cart; ?><sup style="font-size: 20px">%</sup></h3>
|
||||
|
@ -568,6 +568,30 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 col-xs-6">
|
||||
<div class="small-box bg-teal-active">
|
||||
<div class="inner">
|
||||
<h3><?php echo $taux_hyp_r_cart_ilink; ?><sup style="font-size: 20px">%</sup></h3>
|
||||
<p><?php echo $this->lang->line('rate_com_hyp_remove_cart_ilink') ?> </p>
|
||||
</div>
|
||||
<div class="icon">
|
||||
<i class="ion ion-android-arrow-up"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 col-xs-6">
|
||||
<div class="small-box bg-teal-active">
|
||||
<div class="inner">
|
||||
<h3><?php echo $taux_bq_r_cart_ilink; ?><sup style="font-size: 20px">%</sup></h3>
|
||||
<p><?php echo $this->lang->line('rate_com_bq_remove_cart_ilink') ?> </p>
|
||||
</div>
|
||||
<div class="icon">
|
||||
<i class="ion ion-android-arrow-up"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="row centered">
|
||||
<div class="col-lg-3 col-xs-12">
|
||||
|
@ -1557,6 +1581,18 @@
|
|||
<input type="number" min="0" step=".01" required class="form-control"
|
||||
name="taux_bq_r_cart" id="taux_bq_r_cart" value="<?= $taux_bq_r_cart ?>">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="taux_hyp_r_cart_ilink"
|
||||
class="col-form-label"><?php echo $this->lang->line('rate_com_hyp_remove_cart_ilink') . ' (%)'; ?></label>
|
||||
<input type="number" min="0" step=".01" required class="form-control"
|
||||
name="taux_hyp_r_cart_ilink" id="taux_hyp_r_cart_ilink" value="<?= $taux_hyp_r_cart_ilink ?>">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="taux_bq_r_cart_ilink"
|
||||
class="col-form-label"><?php echo $this->lang->line('rate_com_bq_remove_cart_ilink') . ' (%)'; ?></label>
|
||||
<input type="number" min="0" step=".01" required class="form-control"
|
||||
name="taux_bq_r_cart_ilink" id="taux_bq_r_cart_ilink" value="<?= $taux_bq_r_cart_ilink ?>">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
@ -1829,6 +1865,39 @@
|
|||
$('#updateWallet').click(function () {
|
||||
const network_id = $(this).data('network-id');
|
||||
const id_config = $(this).data('id-config');
|
||||
|
||||
// Verification des taux de commission
|
||||
// total répartition commission du réseau opération envoi-cash (les frais)
|
||||
const total1 = parseFloat($('#taux_ag_s_c').val()) + parseFloat($('#taux_sup_s_c').val()) + parseFloat($('#taux_hyp_s_c').val());
|
||||
|
||||
// total répartition commission du réseau opération retrait-cash (les frais)
|
||||
const total2 = parseFloat($('#taux_ag_r_c').val()) + parseFloat($('#taux_sup_r_c').val()) + parseFloat($('#taux_hyp_r_c').val());
|
||||
|
||||
// total répartition commission réseau dépôt cash-carte chez agent (frais)
|
||||
const total3 = parseFloat($('#taux_ag_d_c').val()) + parseFloat($('#taux_sup_d_c').val()) + parseFloat($('#taux_hyp_d_c').val())
|
||||
+ parseFloat($('#taux_bq_d_c').val());
|
||||
|
||||
// total répartition commission réseau retrait carte-cash chez agent (retrait)
|
||||
const total4 = parseFloat($('#taux_ag_r_cart').val()) + parseFloat($('#taux_sup_r_cart').val()) + parseFloat($('#taux_hyp_r_cart').val())
|
||||
+ parseFloat($('#taux_bq_r_cart').val());
|
||||
|
||||
// total répartition commission réseau retrait carte-cash utilisateur ilink (retrait)
|
||||
const total5 = parseFloat($('#taux_hyp_r_cart_ilink').val()) + parseFloat($('#taux_bq_r_cart_ilink').val());
|
||||
|
||||
|
||||
if(total1 != 100){
|
||||
toastr.error("<?php echo $this->lang->line('ilink_first_rule')?>", "<?php echo $this->lang->line('management_rule')?>");
|
||||
} else if (total2 != 100) {
|
||||
toastr.error("<?php echo $this->lang->line('ilink_second_rule')?>", "<?php echo $this->lang->line('management_rule')?>");
|
||||
} else if (total3 != 100) {
|
||||
toastr.error("<?php echo $this->lang->line('ilink_third_rule')?>", "<?php echo $this->lang->line('management_rule')?>");
|
||||
} else if (total4 != 100) {
|
||||
toastr.error("<?php echo $this->lang->line('ilink_fourth_rule')?>", "<?php echo $this->lang->line('management_rule')?>");
|
||||
} else if (total5 != 100) {
|
||||
toastr.error("<?php echo $this->lang->line('ilink_fifth_rule')?>", "<?php echo $this->lang->line('management_rule')?>");
|
||||
} else {
|
||||
if ($('#walletForm')[0].checkValidity()) {
|
||||
|
||||
// Paliers
|
||||
var plr_user_wallet_wallet = [];
|
||||
var plr_user_wallet_cash = [];
|
||||
|
@ -1927,33 +1996,6 @@
|
|||
plr_agent_cash_cash_national.push(arrayItem);
|
||||
});
|
||||
|
||||
// console.log('data',plr_user_wallet_wallet )
|
||||
const min1 = parseFloat($('#u_w_w_min').val());
|
||||
const max1 = parseFloat($('#u_w_w_max').val());
|
||||
|
||||
const min2 = parseFloat($('#u_w_c_min').val());
|
||||
const max2 = parseFloat($('#u_w_c_max').val());
|
||||
|
||||
const min3 = parseFloat($('#ag_d_w_min').val());
|
||||
const max3 = parseFloat($('#ag_d_w_max').val());
|
||||
|
||||
const min4 = parseFloat($('#ag_c_c_min').val());
|
||||
const max4 = parseFloat($('#ag_c_c_max').val());
|
||||
|
||||
if(min1 >= max1){
|
||||
$('#u_w_w_min').addClass("error");
|
||||
// $('#u_w_w_min')[0].reportValidity();
|
||||
} else if (min2 >= max2) {
|
||||
$('#u_w_c_min').addClass("error");
|
||||
// $('#u_w_c_min')[0].reportValidity();
|
||||
} else if (min3 >= max3) {
|
||||
$('#ag_d_w_min').addClass("error");
|
||||
// $('#ag_d_w_min)[0].reportValidity();
|
||||
} else if (min4 >= max4) {
|
||||
$('#ag_c_c_min').addClass("error");
|
||||
// $('#ag_c_c_min')[0].reportValidity();
|
||||
} else {
|
||||
if ($('#walletForm')[0].checkValidity()) {
|
||||
|
||||
$.ajax({
|
||||
url: '<?php echo base_url('index.php/Gestion/config_wallet/update')?>',
|
||||
|
|
|
@ -116,8 +116,13 @@
|
|||
$net = 0;
|
||||
$banque = 0;
|
||||
if($row->type_transac == 'credit'){
|
||||
if($row->montant < 0){
|
||||
$commission = (-$row->montant * $config->taux_com_client_depot / 100 ) + $config->frais_min_banque_depot;
|
||||
$net = $row->montant + $commission;
|
||||
}else{
|
||||
$commission = ( $row->montant * $config->taux_com_client_depot / 100 ) + $config->frais_min_banque_depot;
|
||||
$net = $row->montant - $commission;
|
||||
}
|
||||
$banque = $row->montant * (1 - ($config->taux_com_client_depot / 100));
|
||||
}else{
|
||||
$net = $row->montant ;
|
||||
|
|
Loading…
Reference in New Issue