/**
  * @name validUpdate($pData)
  * @return CommandeReservationVR
  * @desc Test la validite de l'élément
  */
 public static function validUpdate($pData)
 {
     $lVr = ReservationMarcheValid::validAjout($pData);
     //Tests inputs
     if (!isset($pData['id_commande'])) {
         $lVr->setValid(false);
         $lVr->getLog()->setValid(false);
         $lErreur = new VRerreur();
         $lErreur->setCode(MessagesErreurs::ERR_201_CODE);
         $lErreur->setMessage(MessagesErreurs::ERR_201_MSG);
         $lVr->getLog()->addErreur($lErreur);
     }
     if ($lVr->getValid()) {
         //Tests Techniques
         if (!is_int((int) $pData['id_commande'])) {
             $lVr->setValid(false);
             $lVr->getLog()->setValid(false);
             $lErreur = new VRerreur();
             $lErreur->setCode(MessagesErreurs::ERR_104_CODE);
             $lErreur->setMessage(MessagesErreurs::ERR_104_MSG);
             $lVr->getLog()->addErreur($lErreur);
         }
         //Tests Fonctionnels
         if (empty($pData['id_commande'])) {
             $lVr->setValid(false);
             $lVr->getLog()->setValid(false);
             $lErreur = new VRerreur();
             $lErreur->setCode(MessagesErreurs::ERR_207_CODE);
             $lErreur->setMessage(MessagesErreurs::ERR_207_MSG);
             $lVr->getLog()->addErreur($lErreur);
         }
         $lIdReservation = new IdReservationVO();
         $lIdReservation->setIdCompte($pData['idCompte']);
         $lIdReservation->setIdCommande($pData['id_commande']);
         $lReservationService = new ReservationService();
         $lOperations = $lReservationService->selectOperationReservation($lIdReservation);
         $lOperation = $lOperations[0];
         $lIdOperation = $lOperation->getId();
         // Si la réservation n'est pas déjà achetée
         if (!is_null($lIdOperation) && $lOperation->getTypePaiement() == 22) {
             $lVr->setValid(false);
             $lVr->getLog()->setValid(false);
             $lErreur = new VRerreur();
             $lErreur->setCode(MessagesErreurs::ERR_274_CODE);
             $lErreur->setMessage(MessagesErreurs::ERR_274_MSG);
             $lVr->getLog()->addErreur($lErreur);
         }
     }
     return $lVr;
 }
 /**
  * @name supprimerReservation($pParam)
  * @return ListeReservationCommandeVR
  * @desc Supprime une réservation
  */
 public function supprimerReservation($pParam)
 {
     $pParam['idCompte'] = $_SESSION[ID_COMPTE];
     $lVr = ReservationMarcheValid::validDelete($pParam);
     if ($lVr->getValid()) {
         $lReservationService = new ReservationService();
         $lIdReservation = new IdReservationVO();
         $lIdReservation->setIdCompte($pParam['idCompte']);
         $lIdReservation->setIdCommande($pParam["id_commande"]);
         $lReservationService->delete($lIdReservation);
         // Repositionne une réservations sur les abonnements
         $lAbonnementService = new AbonnementService();
         $lAbonnementService->ajoutReservation($pParam['idCompte'], $pParam["id_commande"]);
     }
     return $lVr;
 }