/**
  * @name getDetailAbonne($pParam)
  * @desc Donne le détail d'un abonne
  */
 public function getDetailAbonne($pParam)
 {
     $lVr = ListeAbonneValid::validGetDetailAbonne($pParam);
     if ($lVr->getValid()) {
         $lAdherent = AbonnementListeAdherentViewManager::select($pParam["id"]);
         $lAdherent = $lAdherent[0];
         $lResponse = new DetailAbonneResponse();
         $lResponse->setAdherent($lAdherent);
         $lAbonnementService = new AbonnementService();
         //$lResponse->setProduits($lAbonnementService->getProduitsAbonne($lAdherent->getCptId()));
         $lProduits = $lAbonnementService->getProduitsAbonne($lAdherent->getCptId());
         $lDerniereFerme = $lProduits[0]->getFerNom();
         $lDerniereCategorie = $lProduits[0]->getCproNom();
         $lListeProduit = new ListeProduitVO();
         $lFerme = new ListeProduitFermeVO();
         $lFerme->setNom($lProduits[0]->getFerNom());
         $lCategorie = new ListeProduitFermeCategorieVO();
         $lCategorie->setNom($lProduits[0]->getCproNom());
         foreach ($lProduits as $lProduit) {
             if ($lDerniereFerme != $lProduit->getFerNom()) {
                 $lFerme->addCategories($lCategorie);
                 $lListeProduit->addFermes($lFerme);
                 $lFerme = new ListeProduitFermeVO();
                 $lFerme->setNom($lProduit->getFerNom());
                 $lCategorie = new ListeProduitFermeCategorieVO();
                 $lCategorie->setNom($lProduit->getCproNom());
             } else {
                 if ($lDerniereCategorie != $lProduit->getCproNom()) {
                     $lFerme->addCategories($lCategorie);
                     $lCategorie = new ListeProduitFermeCategorieVO();
                     $lCategorie->setNom($lProduit->getCproNom());
                 }
             }
             $lPdt = new ListeProduitFermeCategorieProduitAbonnementVO();
             $lPdt->setId($lProduit->getCptAboIdProduitAbonnement());
             $lPdt->setIdAbonnement($lProduit->getCptAboId());
             $lPdt->setNom($lProduit->getNproNom());
             $lPdt->setQuantite($lProduit->getCptAboQuantite());
             $lPdt->setUnite($lProduit->getProAboUnite());
             $lPdt->setDateDebutSuspension($lProduit->getCptAboDateDebutSuspension());
             $lPdt->setDateFinSuspension($lProduit->getCptAboDateFinSuspension());
             $lCategorie->addProduits($lPdt);
             $lDerniereCategorie = $lProduit->getCproNom();
             $lDerniereFerme = $lProduit->getFerNom();
         }
         $lFerme->addCategories($lCategorie);
         $lListeProduit->addFermes($lFerme);
         $lResponse->setProduits($lListeProduit);
         return $lResponse;
     }
     return $lVr;
 }
 /**
  * @name getListeProduitAbonnement()
  * @desc Donne la liste des Produits 
  */
 public function getListeProduitAbonnement()
 {
     $lResponse = new ListeProduitAbonnementResponse();
     $lAbonnementService = new AbonnementService();
     $lProduits = $lAbonnementService->getProduit();
     $lDerniereFerme = $lProduits[0]->getFerNom();
     $lDerniereCategorie = $lProduits[0]->getCproNom();
     $lListeProduit = new ListeProduitVO();
     $lFerme = new ListeProduitFermeVO();
     $lFerme->setNom($lProduits[0]->getFerNom());
     $lCategorie = new ListeProduitFermeCategorieVO();
     $lCategorie->setNom($lProduits[0]->getCproNom());
     foreach ($lProduits as $lProduit) {
         if ($lDerniereFerme != $lProduit->getFerNom()) {
             $lFerme->addCategories($lCategorie);
             $lListeProduit->addFermes($lFerme);
             $lFerme = new ListeProduitFermeVO();
             $lFerme->setNom($lProduit->getFerNom());
             $lCategorie = new ListeProduitFermeCategorieVO();
             $lCategorie->setNom($lProduit->getCproNom());
         } else {
             if ($lDerniereCategorie != $lProduit->getCproNom()) {
                 $lFerme->addCategories($lCategorie);
                 $lCategorie = new ListeProduitFermeCategorieVO();
                 $lCategorie->setNom($lProduit->getCproNom());
             }
         }
         $lPdt = new ListeProduitFermeCategorieProduitVO();
         $lPdt->setId($lProduit->getProAboId());
         $lPdt->setNom($lProduit->getNproNom());
         $lCategorie->addProduits($lPdt);
         $lDerniereCategorie = $lProduit->getCproNom();
         $lDerniereFerme = $lProduit->getFerNom();
     }
     $lFerme->addCategories($lCategorie);
     $lListeProduit->addFermes($lFerme);
     $lResponse->setProduits($lListeProduit);
     return $lResponse;
 }