/**
  * @name detailProduitMarche($pParam)
  * @param IdProduit
  * @desc Retourne le détail d'un produit
  */
 public function detailProduitMarche($pParam)
 {
     $lVr = ProduitMarcheValid::validDelete($pParam);
     if ($lVr->getValid()) {
         $lMarcheService = new MarcheService();
         $lReservationService = new ReservationService();
         $lProduit = $lMarcheService->selectProduit($pParam["id"]);
         $lId = $lProduit->getIdNom();
         $lModelesLot = ModeleLotViewManager::selectByIdNomProduit($lId);
         $lResponse = new DetailProduitResponse();
         $lResponse->setModelesLot($lModelesLot);
         $lNvLots = array();
         foreach ($lProduit->getLots() as $lLot) {
             $lReservation = $lReservationService->getReservationSurLot($lLot->getId());
             $lNvLot = new DetailMarcheReservationVO();
             $lNvLot->setId($lLot->getId());
             $lNvLot->setTaille($lLot->getTaille());
             $lNvLot->setPrix($lLot->getPrix());
             if (!is_null($lReservation[0]->getStoId())) {
                 $lNvLot->setReservation(true);
             }
             array_push($lNvLots, $lNvLot);
         }
         $lProduit->setLots($lNvLots);
         $lResponse->setProduit($lProduit);
         return $lResponse;
     }
     return $lVr;
 }