diff --git a/module/Paiement/src/Service/DemandesService.php b/module/Paiement/src/Service/DemandesService.php index bed9e389ce852d71e113976d42915e4b44a71549..bb3d7cec23bc76751a674a9935c31c01b180501e 100755 --- a/module/Paiement/src/Service/DemandesService.php +++ b/module/Paiement/src/Service/DemandesService.php @@ -678,7 +678,7 @@ class DemandesService extends AbstractService $totalHeuresAPayer += $dmep['TOTAL_HEURES_A_PAYER']; if ($serviceReferentielId === $dmep['SERVICE_REFERENTIEL_ID'] || $serviceId === $dmep['SERVICE_ID'] || $missionId === $dmep['MISSION_ID']) { $soldeHeures = ($dmep['TOTAL_HEURES_A_PAYER'] - $dmep['TOTAL_HEURES_DEMANDEES']); - if ($heuresDemandees > $soldeHeures) { + if (bccomp((string)$heuresDemandees, (string)$soldeHeures,2) > 0) { if ($soldeHeures >= 0) { throw new \Exception('Demande de mise en paiement impossible, vous demandez ' . $heuresDemandees . ' hetd(s) alors que vous pouvez demander maximum ' . ($dmep['TOTAL_HEURES_A_PAYER'] - $dmep['TOTAL_HEURES_DEMANDEES']) . ' hetd(s)', self::EXCEPTION_DMEP_INVALIDE); } else { @@ -698,7 +698,7 @@ class DemandesService extends AbstractService } } //On vérifie en dernier si l'ensemble des heures déjà payé ne dépasse pas le nombre d'heures réalisées tout service confondu. - if (($totalHeuresAPayer - $totalHeuresDemandees) < $heuresDemandees) { + if (bccomp((string)($totalHeuresAPayer - $totalHeuresDemandees), (string)$heuresDemandees, 2) < 0) { throw new \Exception('Demande de mise en paiement impossible, la somme des heures déjà demandée en paiement pour tous les services confondus ne permet plus de demander en paiement les ' . $heuresDemandees . ' hetd(s)', self::EXCEPTION_DMEP_INVALIDE); }