/**
  * @name getListeFerme()
  * @return ListeFermeResponse
  * @desc Recherche la liste des Fermes
  */
 public function getListeFerme()
 {
     // Lancement de la recherche
     $lResponse = new ListeFermeResponse();
     $lFermeService = new FermeService();
     $lResponse->setListeFerme($lFermeService->get());
     return $lResponse;
 }
 /**
  * @name getInfoCompte()
  * @desc Donne les infos sur le compte du zeybu
  */
 public function getListeAdherent()
 {
     // Lancement de la recherche
     $lResponse = new ListeAdherentResponse();
     $lResponse->setListeAdherent(AdherentViewManager::selectAll());
     $lFermeService = new FermeService();
     $lResponse->setListeProducteur($lFermeService->get());
     return $lResponse;
 }
 /**
  * @name getFactureCSV($pParam)
  * @return Un Fichier CSV
  * @desc Retournela facture en format CSV
  */
 public function getFactureCSV($pParam)
 {
     $lVr = FactureValid::validDelete($pParam);
     if ($lVr->getValid()) {
         $lCSV = new CSV();
         $lCSV->setNom('BonDeLivraison.csv');
         // Le Nom
         // L'entete
         $lEntete = array("Ferme", "Ref.", "Produit", "Quantite", "", "Prix", "", "Solidaire", "");
         $lCSV->setEntete($lEntete);
         // Les données
         $lData = $lVr->getData();
         $lFacture = $lData['facture'];
         $lFermeService = new FermeService();
         $lFermes = $lFermeService->getByIdCompte($lFacture->getId()->getIdCompte());
         $lFerme = $lFermes[0];
         $lContenuTableau = array();
         $lId = 0;
         foreach ($lFacture->getProduits() as $lProduit) {
             $lQuantite = '';
             $lUnite = '';
             $lMontant = 0;
             $lSigleMontant = SIGLE_MONETAIRE;
             $lQteTest = $lProduit->getQuantite();
             if (!is_null($lProduit->getQuantite()) && !empty($lQteTest)) {
                 $lQuantite = $lQteTest;
                 $lUnite = $lProduit->getUnite();
                 $lMontant = $lProduit->getMontant();
             }
             $lQuantiteSolidaire = '';
             $lUniteSolidaire = '';
             $lQteSolTest = $lProduit->getQuantiteSolidaire();
             if (!is_null($lProduit->getQuantiteSolidaire()) && !empty($lQteSolTest)) {
                 $lQuantiteSolidaire = $lQteSolTest;
                 $lUniteSolidaire = $lProduit->getUniteSolidaire();
             }
             $lNomFerme = '';
             if ($lId == 0) {
                 $lNomFerme = $lFerme->getNom();
                 $lId++;
             }
             $lLignecontenu = array($lNomFerme, $lProduit->getNproNumero(), $lProduit->getNproNom(), $lQuantite, $lUnite, $lMontant, $lSigleMontant, $lQuantiteSolidaire, $lUniteSolidaire);
             array_push($lContenuTableau, $lLignecontenu);
         }
         $lLignecontenu = array("", "", "", "", "Total : ", $lFacture->getId()->getMontant(), SIGLE_MONETAIRE, "", "");
         array_push($lContenuTableau, $lLignecontenu);
         $lCSV->setData($lContenuTableau);
         // Export en CSV
         $lCSV->output();
     } else {
         return $lVr;
     }
 }