Parcourir la source

calculation done

master
Daniel il y a 2 ans
Parent
révision
15905d91cd
1 fichiers modifiés avec 22 ajouts et 12 suppressions
  1. +22
    -12
      httpdocs/src/Controller/UserController.php

+ 22
- 12
httpdocs/src/Controller/UserController.php Voir le fichier

@@ -124,15 +124,10 @@ class UserController extends AbstractController
{
$params = $request->request->all();
$benchmark = $this->getDoctrine()->getRepository(DinAssetBenchmark::class)->find($params['benchmark']);
/** @var DinAsset $asset */
$asset = $benchmark->getDinAsset();
$userCycle = $params['cycle'];

$cycleDeviation = 1 - ($userCycle / ($asset->getCycleMonthsRecMaintenance()));
$costsCurrentPerYear = (12 / $userCycle) * $benchmark->getAverageCosts();
$costsRecPerYear = (12 / $asset->getCycleMonthsRecMaintenance()) * $benchmark->getAverageCosts();
$costsDiffPerYear = $costsRecPerYear - $costsCurrentPerYear;
$costsDiff5Years = $costsDiffPerYear * 5;

$pointsFailure = Utils::$riskFailure[$params['failure']][1];
$pointsCosts = Utils::$riskCosts[$params['costs']][1];
if ($params['costs'] === Utils::PERSON_DAMAGE_INDEX) {
@@ -140,16 +135,31 @@ class UserController extends AbstractController
}
$riskPoints = $pointsFailure + $pointsCosts;
$riskFactor = Utils::$riskPoints[$riskPoints]['factor'];
$recCycle = (int) ($asset->getCycleMonthsMax() * $riskFactor);

$recCycleMaintenance = $asset->getCycleMonthsMax();
if ( ((int)$params['maintenance']) === 1 && ((int)$params['check']) === 1 ) {
$recCycleMaintenance = (int) ($asset->getCycleMonthsMax() * $riskFactor);
if ($recCycleMaintenance < $asset->getCycleMonthsMin()) {
$recCycleMaintenance = $asset->getCycleMonthsMin();
}
}
$costsCurrentPerYear = (12 / $userCycle) * $benchmark->getAverageCosts();
$costsRecPerYear = (12 / $recCycle) * $benchmark->getAverageCosts();

$costsRecPerYear = (12 / $recCycleMaintenance) * $benchmark->getAverageCosts();

$recCycleInspection = $asset->getCycleMonthsMax();
if ( ((int)$params['inspection']) === 1 ) {
$recCycleInspection = (int) ($asset->getCycleMonthsMax() * $riskFactor);
if ($recCycleInspection < $asset->getCycleMonthsMin()) {
$recCycleInspection = $asset->getCycleMonthsMin();
}
}
$costDiffCurCycleRecCycle = $costsCurrentPerYear - $costsRecPerYear;
$costDiffCurRecPercentage = 1 - ($userCycle / $recCycleMaintenance);

$res = [];
$res['cycleRecMaintenance'] = $asset->getCycleMonthsRecMaintenance();
$res['cycleRecInspection'] = $asset->getCycleMonthsRecInspection();
$res['recCycleMaintenance'] = $recCycleMaintenance;
$res['recCycleInspection'] = $recCycleInspection;
$res['costDiffCurCycleRecCycle'] = $costDiffCurCycleRecCycle;
$res['costDiffCurRecPercentage'] = $costDiffCurRecPercentage;
return $this->json($res);
}



Chargement…
Annuler
Enregistrer