diff --git a/Controleur/ControleurAjaxgraphiquesinistres.php b/Controleur/ControleurAjaxgraphiquesinistres.php index b80fbc5..a732cc8 100755 --- a/Controleur/ControleurAjaxgraphiquesinistres.php +++ b/Controleur/ControleurAjaxgraphiquesinistres.php @@ -3,56 +3,52 @@ require_once 'Framework/Controleur.php'; require_once 'Modele/Synthese.php'; class ControleurAjaxgraphiquesinistres extends Controleur { - private $menuvue; private $synthese; public function __construct() { - $this->synthese = new Synthese(); } public function index() { - // Répartition sinistres - $claims = $this->synthese->getClaims(); - - $tabclaims = [ - 'claimsLabels' => array_column($claims, 'claimsLabels'), - 'claimsValues' => array_column($claims, 'claimsValues') + $claims = $this->synthese->getClaims(); + $tabclaims = [ + 'claimsLabels' => array_column($claims, 'claimsLabels'), + 'claimsValues' => array_column($claims, 'claimsValues') ]; - $dataTabClaims = json_encode($tabclaims, JSON_NUMERIC_CHECK); - - // Evolution des sinistres - $claimsMonth = $this->synthese->getClaimsMonth(); - $claimsSingleMonth = $this->synthese->getClaimsSingleMonth(); - - $tabclaimsMonth = [ + $claimsMonth = $this->synthese->getClaimsMonth(); + $claimsSingleMonth = $this->synthese->getClaimsSingleMonth(); + $tabclaimsMonth = [ 'months' => array_column($claimsMonth, 'months'), 'monthlyClaims' => array_column($claimsMonth, 'monthlyClaims'), 'singleClaims' => array_column($claimsSingleMonth, 'singleClaims') ]; - $dataTabClaimsMonth = json_encode($tabclaimsMonth, JSON_NUMERIC_CHECK); - - // SINISTRALITÉ - $claimsLossRatio = $this->synthese->getClaimsLossRatio(); - - $tabLossRatio = [ + // Sinistralité + $claimsLossRatio = $this->synthese->getClaimsLossRatio(); + $tabLossRatio = [ 'lossRatioLabels' => array_column($claimsLossRatio, 'months'), 'lossRatioValues' => array_column($claimsLossRatio, 'ratio') ]; - $dataLossRatio = json_encode($tabLossRatio, JSON_NUMERIC_CHECK); + // --- Mode API JSON brut --- + if (isset($_GET['api']) && $_GET['api'] == '1') { + header('Content-Type: application/json'); + echo json_encode([ + 'claims' => $tabclaims, + 'claimsMonth' => $tabclaimsMonth, + 'lossRatio' => $tabLossRatio + ], JSON_NUMERIC_CHECK); + exit; + } - $this->genererVueAjax( - array - ( - 'dataTabClaims' => $dataTabClaims, - 'dataTabClaimsMonth' => $dataTabClaimsMonth, - 'dataLossRatio' => $dataLossRatio - ) - ); + // --- Mode Vue Ajax HTML --- + $this->genererVueAjax([ + 'dataTabClaims' => json_encode($tabclaims, JSON_NUMERIC_CHECK), + 'dataTabClaimsMonth' => json_encode($tabclaimsMonth, JSON_NUMERIC_CHECK), + 'dataLossRatio' => json_encode($tabLossRatio, JSON_NUMERIC_CHECK) + ]); } -} +} \ No newline at end of file diff --git a/Js/fonctions.js b/Js/fonctions.js index 9e2b8d4..e26d73a 100755 --- a/Js/fonctions.js +++ b/Js/fonctions.js @@ -808,8 +808,8 @@ function afficher_adherents_police() }); } -function graphique_sinistre() -{ +function graphique_sinistre() { + // Spinner pendant le chargement $("#div_graphique").html(`
Affichage des graphiques en cours...