Sinistralité

This commit is contained in:
KONE SOREL 2025-12-26 11:52:53 +00:00
parent b2b05daf76
commit f9156ba9db
3 changed files with 44 additions and 21 deletions

View File

@ -42,6 +42,7 @@ class ControleurAccueil extends Controleur {
$dataTabClaims = json_encode($tabclaims, JSON_NUMERIC_CHECK); $dataTabClaims = json_encode($tabclaims, JSON_NUMERIC_CHECK);
// Evolution des sinistres par mois // Evolution des sinistres par mois
$claimsMonth = $this->synthese->getClaimsMonth(); $claimsMonth = $this->synthese->getClaimsMonth();
$claimsSingleMonth = $this->synthese->getClaimsSingleMonth(); $claimsSingleMonth = $this->synthese->getClaimsSingleMonth();
@ -55,8 +56,17 @@ class ControleurAccueil extends Controleur {
$dataTabClaimsMonth = json_encode($tabclaimsMonth, JSON_NUMERIC_CHECK); $dataTabClaimsMonth = json_encode($tabclaimsMonth, JSON_NUMERIC_CHECK);
// SINISTRALITÉ // SINISTRALITÉ
$lossRatioLabels = ["Jan", "Fév", "Mar", "Avr", "Mai", "Juin"]; $claimsLossRatio = $this->synthese->getClaimsLossRatio();
$lossRatioValues = [62, 68, 71, 65, 73, 69]; // %
$tabLossRatio = [
'lossRatioLabels' => array_column($claimsLossRatio, 'months'),
'lossRatioValues' => array_column($claimsLossRatio, 'ratio')
];
$dataLossRatio = json_encode($tabLossRatio, JSON_NUMERIC_CHECK);
//$lossRatioLabels = ["Jan", "Fév", "Mar", "Avr", "Mai", "Juin"];
//$lossRatioValues = [62, 68, 71, 65, 73, 69]; // %
// Polices // Polices
$polices = $this->synthese->getPolices(); $polices = $this->synthese->getPolices();
@ -65,13 +75,12 @@ class ControleurAccueil extends Controleur {
array array
( (
'kpis' => $kpis, 'kpis' => $kpis,
'polices' => $polices,
'activities' => $activities, 'activities' => $activities,
'alerts' => $alerts, 'alerts' => $alerts,
'lossRatioLabels' => $lossRatioLabels,
'lossRatioValues' => $lossRatioValues,
'dataTabClaims' => $dataTabClaims, 'dataTabClaims' => $dataTabClaims,
'dataTabClaimsMonth' => $dataTabClaimsMonth, 'dataTabClaimsMonth' => $dataTabClaimsMonth,
'polices' => $polices 'dataLossRatio' => $dataLossRatio
) )
); );
} }

View File

@ -63,6 +63,17 @@ class Synthese extends Modele {
$resultat = $this->executerRequete($sql, array($idClient)); $resultat = $this->executerRequete($sql, array($idClient));
return $resultat->fetchAll();
}
public function getClaimsLossRatio()
{
$idClient = $_SESSION['idClient_C'];
$sql = 'call sp_c_sinistralites_mois(?)';
$resultat = $this->executerRequete($sql, array($idClient));
return $resultat->fetchAll(); return $resultat->fetchAll();
} }
} }

View File

@ -25,14 +25,15 @@
<div class="card"> <div class="card">
<h3><?= _('Primes')?></h3> <h3><?= _('Primes')?></h3>
<div class="sub-values"> <div class="sub-values">
<div class="sub-item">
<span><?= _('TTC') ?> :</span>
<strong><?= format_N($kpis["primeTtc"]).' '.$_SESSION['devise_C'] ?></strong>
</div>
<div class="sub-item"> <div class="sub-item">
<span><?= _('Statistique') ?> :</span> <span><?= _('Statistique') ?> :</span>
<strong class="text-success"><?= format_N($kpis["primeNetteStat"]).' '.$_SESSION['devise_C'] ?></strong> <strong class="text-success"><?= format_N($kpis["primeNetteStat"]).' '.$_SESSION['devise_C'] ?></strong>
</div> </div>
<div class="sub-item">
<span><?= _('TTC') ?> :</span>
<strong><?= format_N($kpis["primeTtc"]).' '.$_SESSION['devise_C'] ?></strong>
</div>
</div> </div>
</div> </div>
@ -322,13 +323,15 @@
}); });
// Sinistralité // Sinistralité
const dataLossRatio = <?= $dataLossRatio ?>;
new Chart(document.getElementById('lossRatioBar'), { new Chart(document.getElementById('lossRatioBar'), {
type: 'bar', type: 'bar',
data: { data: {
labels: <?= json_encode($lossRatioLabels) ?>, labels: dataLossRatio.lossRatioLabels,
datasets: [{ datasets: [{
label: "Sinistralité (%)", label: "Sinistralité (%)",
data: <?= json_encode($lossRatioValues) ?> data: dataLossRatio.lossRatioValues
}] }]
}, },
options: { options: {