Commit 5a4bd5e1 authored by Jean-Baptiste Oellers's avatar Jean-Baptiste Oellers
Browse files

Vérification si la personne a rempli des feuilles de temps

parent aa98e30b
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
<?php

namespace Oscar\Exception;

class OscarDeletePersonNotPossibleException extends OscarException
{

}
 No newline at end of file
+7 −0
Original line number Diff line number Diff line
@@ -3,6 +3,8 @@
namespace Oscar\Service;

use Oscar\Entity\Person;
use Oscar\Entity\TimeSheet;
use Oscar\Exception\OscarDeletePersonNotPossibleException;
use Oscar\Exception\OscarException;
use Oscar\Provider\Privileges;
use Oscar\Traits\UseEntityManager;
@@ -21,5 +23,10 @@ class PersonDeleteService implements UseOscarUserContextService, UseEntityManage
        if ($person === NULL) {
            throw new OscarException("La personne avec l'identifiant $person_id n'est pas présente dans la base de données.");
        }

        $timesheets = $this->getEntityManager()->getRepository(TimeSheet::class)->findBy(['person' => $person]);
        if (count($timesheets) > 0) {
            throw new OscarDeletePersonNotPossibleException("Impossible de supprimer la personne avec l'identifiant $person_id car elle a rempli des feuilles de temps.");
        }
    }
}