/** * @name validGetListeProduitCommande($pData) * @return GetListeProduitCommandeVR * @desc Test la validite de l'élément */ public static function validGetListeProduitCommande($pData) { $lVr = new GetListeProduitCommandeVR(); //Tests inputs if (!isset($pData['id_commande'])) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (!isset($pData['id_compte_ferme'])) { $lVr->setValid(false); $lVr->getId_CompteProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_CompteProducteur()->addErreur($lErreur); } if ($lVr->getValid()) { //Tests Techniques if (!TestFonction::checkLength($pData['id_commande'], 0, 11)) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (!is_int((int) $pData['id_commande'])) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (!TestFonction::checkLength($pData['id_compte_ferme'], 0, 11)) { $lVr->setValid(false); $lVr->getId_CompteProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getId_CompteProducteur()->addErreur($lErreur); } if (!is_int((int) $pData['id_compte_ferme'])) { $lVr->setValid(false); $lVr->getId_CompteProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getId_CompteProducteur()->addErreur($lErreur); } //Tests Fonctionnels if (empty($pData['id_commande'])) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (empty($pData['id_compte_ferme'])) { $lVr->setValid(false); $lVr->getId_CompteProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_CompteProducteur()->addErreur($lErreur); } $lCommande = CommandeManager::select($pData['id_commande']); if ($lCommande->getId() != $pData['id_commande']) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getId_commande()->addErreur($lErreur); } $lFerme = FermeManager::selectByIdCompte($pData['id_compte_ferme']); if ($lFerme[0]->getIdCompte() != $pData['id_compte_ferme']) { $lVr->setValid(false); $lVr->getId_CompteProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getId_CompteProducteur()->addErreur($lErreur); } } return $lVr; }
/** * @name validAjout($pData) * @return FactureVR * @desc Test la validite de l'élément */ public static function validEnregistrer($pData) { $lVr = new FactureVR(); //Tests Techniques if (!isset($pData['id'])) { $lVr->setValid(false); $lVr->getOperation()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getOperation()->addErreur($lErreur); } if (!isset($pData['operationProducteur'])) { $lVr->setValid(false); $lVr->getOperationProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getOperationProducteur()->addErreur($lErreur); } if (!isset($pData['operationZeybu'])) { $lVr->setValid(false); $lVr->getOperationZeybu()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getOperationZeybu()->addErreur($lErreur); } if (!isset($pData['produits'])) { $lVr->setValid(false); $lVr->getProduits()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getProduits()->addErreur($lErreur); } if (!isset($pData['operationProducteur']['idCompte'])) { $lVr->setValid(false); $lVr->getOperationProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getOperationProducteur()->addErreur($lErreur); } if (!isset($pData['operationProducteur']['montant'])) { $lVr->setValid(false); $lVr->getMontant()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getMontant()->addErreur($lErreur); } if (!isset($pData['operationProducteur']['typePaiement'])) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if (!isset($pData['operationProducteur']['champComplementaire'])) { $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()) { // Dans le cas d'une modification if ($pData['id']['id'] != '' && !TestFonction::checkLength($pData['id']['id'], 0, 11)) { $lVr->setValid(false); $lVr->getOperation()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_CODE); $lVr->getOperation()->addErreur($lErreur); } if ($pData['id']['id'] != '' && !is_int((int) $pData['id']['id'])) { $lVr->setValid(false); $lVr->getOperation()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getOperation()->addErreur($lErreur); } // Pour création ou modification if (!TestFonction::checkLength($pData['operationProducteur']['idCompte'], 0, 11)) { $lVr->setValid(false); $lVr->getOperationProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getOperationProducteur()->addErreur($lErreur); } if (!is_int((int) $pData['operationProducteur']['idCompte'])) { $lVr->setValid(false); $lVr->getOperationProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getOperationProducteur()->addErreur($lErreur); } if (!TestFonction::checkLength($pData['operationProducteur']['montant'], 0, 12) || $pData['operationProducteur']['montant'] > 999999999.99) { $lVr->setValid(false); $lVr->getMontant()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getMontant()->addErreur($lErreur); } if (!is_float((double) $pData['operationProducteur']['montant'])) { $lVr->setValid(false); $lVr->getMontant()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_109_CODE); $lErreur->setMessage(MessagesErreurs::ERR_109_MSG); $lVr->getMontant()->addErreur($lErreur); } if (!TestFonction::checkLength($pData['operationProducteur']['typePaiement'], 0, 11)) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if (!is_int((int) $pData['operationProducteur']['typePaiement'])) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if (!is_array($pData['operationProducteur']['champComplementaire'])) { $lVr->setValid(false); $lVr->getLog()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_115_CODE); $lErreur->setMessage(MessagesErreurs::ERR_115_MSG); $lVr->getLog()->addErreur($lErreur); } if (!is_array($pData['produits'])) { $lVr->setValid(false); $lVr->getProduits()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_110_CODE); $lErreur->setMessage(MessagesErreurs::ERR_110_MSG); $lVr->getProduits()->addErreur($lErreur); } //Tests Fonctionnels if (empty($pData['operationProducteur']['idCompte'])) { $lVr->setValid(false); $lVr->getOperationProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getOperationProducteur()->addErreur($lErreur); } if (empty($pData['operationProducteur']['typePaiement']) && $pData['operationProducteur']['typePaiement'] != 0) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if ($pData['operationProducteur']['typePaiement'] < 0) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_236_CODE); $lErreur->setMessage(MessagesErreurs::ERR_236_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if (empty($pData['produits'])) { $lVr->setValid(false); $lVr->getProduits()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getProduits()->addErreur($lErreur); } if (isset($pData['id']['champComplementaire'][1])) { // Si Marché $lVrChampComplementaire = ChampComplementaireValid::validUpdate($pData['id']['champComplementaire'][1], 0); if (!$lVrChampComplementaire->getValid()) { $lVr->setValid(false); } $lVr->setChampComplementaire(array(1 => $lVrChampComplementaire)); } if ($pData['id']['id'] != '') { // Modification // La facture doit exister $lOperationService = new OperationService(); $lOperationId = $lOperationService->get($pData['id']['id']); if ($lOperationId->getId() != $pData['id']['id']) { $lVr->setValid(false); $lVr->getOperation()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getOperation()->addErreur($lErreur); } } if (empty($pData['operationProducteur']['montant']) && $pData['operationProducteur']['montant'] != 0) { $lVr->setValid(false); $lVr->getMontant()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getMontant()->addErreur($lErreur); } if ($pData['operationProducteur']['montant'] < 0) { $lVr->setValid(false); $lVr->getMontant()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_215_CODE); $lErreur->setMessage(MessagesErreurs::ERR_215_MSG); $lVr->getMontant()->addErreur($lErreur); } // Il est autorisé d'enregistrer un facture (réception de produit) sans payer. if ($pData['operationProducteur']['montant'] == 0 && $pData['operationProducteur']['typePaiement'] != 0 || $pData['operationProducteur']['montant'] != 0 && $pData['operationProducteur']['typePaiement'] == 0) { $lVr->setValid(false); $lVr->getMontant()->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getMontant()->addErreur($lErreur); $lVr->getTypePaiement()->addErreur($lErreur); } $lFerme = FermeManager::selectByIdCompte($pData['operationProducteur']['idCompte']); if ($lFerme[0]->getIdCompte() != $pData['operationProducteur']['idCompte']) { $lVr->setValid(false); $lVr->getOperationProducteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getOperationProducteur()->addErreur($lErreur); } $lTypePaiementService = new TypePaiementService(); $lTypePaiement = $lTypePaiementService->selectVisible($pData['operationProducteur']['typePaiement']); // Il est autorisé d'enregistrer un facture (réception de produit) sans payer. if ($lTypePaiement->getId() != $pData['operationProducteur']['typePaiement'] && $pData['operationProducteur']['typePaiement'] != 0) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } else { $lChampComplementaire = array(); foreach ($pData['operationProducteur']['champComplementaire'] as $lChamp) { if (!is_null($lChamp)) { $lObligatoire = NULL; foreach ($lTypePaiement->getChampComplementaire() as $lChampTypePaiement) { if ($lChampTypePaiement->getId() == $lChamp['id']) { $lObligatoire = $lChampTypePaiement->getObligatoire(); } } $lVrChampComplementaire = ChampComplementaireValid::validUpdate($lChamp, $lObligatoire); if (!$lVrChampComplementaire->getValid()) { $lVr->setValid(false); } $lChampComplementaire[$lChamp['id']] = $lVrChampComplementaire; } } $lVr->setChampComplementaire($lChampComplementaire); } if (is_array($pData['produits'])) { $lValidProduit = new ProduitDetailFactureValid(); //$i = 0; //while(isset($pData['produits'][$i])) { foreach ($pData['produits'] as $lIndice => $lProduit) { if (!is_null($pData['produits'][$lIndice])) { $lVrProduit = $lValidProduit->validAjout($pData['produits'][$lIndice], $lFerme[0]->getId()); if (!$lVrProduit->getValid()) { $lVr->setValid(false); } $lVr->addProduits($lVrProduit); } // $i++; } } } return $lVr; }
/** * @name validAjout($pData) * @return ProduitsBonDeCommandeVR * @desc Test la validite de l'élément */ public static function validAjout($pData) { $lVr = new ProduitsBonDeCommandeVR(); //Tests inputs if (!isset($pData['id_commande'])) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (!isset($pData['id_compte_ferme'])) { $lVr->setValid(false); $lVr->getId_producteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_producteur()->addErreur($lErreur); } if (!isset($pData['produits'])) { $lVr->setValid(false); $lVr->getProduits()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getProduits()->addErreur($lErreur); } if ($lVr->getValid()) { //Tests Techniques if (!TestFonction::checkLength($pData['id_commande'], 0, 11)) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (!is_int((int) $pData['id_commande'])) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (!TestFonction::checkLength($pData['id_compte_ferme'], 0, 11)) { $lVr->setValid(false); $lVr->getId_producteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getId_producteur()->addErreur($lErreur); } if (!is_int((int) $pData['id_compte_ferme'])) { $lVr->setValid(false); $lVr->getId_producteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getId_producteur()->addErreur($lErreur); } if (!is_array($pData['produits'])) { $lVr->setValid(false); $lVr->getProduits()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_110_CODE); $lErreur->setMessage(MessagesErreurs::ERR_110_MSG); $lVr->getProduits()->addErreur($lErreur); } //Tests Fonctionnels if (empty($pData['id_commande'])) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (empty($pData['id_compte_ferme'])) { $lVr->setValid(false); $lVr->getId_producteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_producteur()->addErreur($lErreur); } if (empty($pData['produits'])) { $lVr->setValid(false); $lVr->getProduits()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getProduits()->addErreur($lErreur); } $lCommande = CommandeManager::select($pData['id_commande']); if ($lCommande->getId() != $pData['id_commande']) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getId_commande()->addErreur($lErreur); } $lFerme = FermeManager::selectByIdCompte($pData['id_compte_ferme']); if ($lFerme[0]->getIdCompte() != $pData['id_compte_ferme']) { $lVr->setValid(false); $lVr->getId_producteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getId_producteur()->addErreur($lErreur); } if (is_array($pData['produits'])) { $lValidProduit = new ProduitBonDeCommandeValid(); $i = 0; while (isset($pData['produits'][$i])) { $lVrProduit = $lValidProduit->validAjout($pData['produits'][$i]); if (!$lVrProduit->getValid()) { $lVr->setValid(false); } $lVr->addProduits($lVrProduit); $i++; } } } return $lVr; }
/** * @name getByIdCompte($pId) * @param integer id du compte de la ferme * @return FermeVO * @desc Retourne une Ferme */ public function getByIdCompte($pId = null) { return FermeManager::selectByIdCompte($pId); }
/** * @name validAjout($pData) * @return ProduitsBonDeLivraisonVR * @desc Test la validite de l'élément */ public static function validAjout($pData) { $lVr = new ProduitsBonDeLivraisonVR(); //Tests inputs if (!isset($pData['id_commande'])) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (!isset($pData['id_compte_ferme'])) { $lVr->setValid(false); $lVr->getId_producteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_producteur()->addErreur($lErreur); } if (!isset($pData['produits'])) { $lVr->setValid(false); $lVr->getProduits()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getProduits()->addErreur($lErreur); } if (!isset($pData['typePaiement'])) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if (!isset($pData['total'])) { $lVr->setValid(false); $lVr->getTotal()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getTotal()->addErreur($lErreur); } if ($lVr->getValid()) { //Tests Techniques if (!TestFonction::checkLength($pData['id_commande'], 0, 11)) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (!is_int((int) $pData['id_commande'])) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (!TestFonction::checkLength($pData['id_compte_ferme'], 0, 11)) { $lVr->setValid(false); $lVr->getId_producteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getId_producteur()->addErreur($lErreur); } if (!is_int((int) $pData['id_compte_ferme'])) { $lVr->setValid(false); $lVr->getId_producteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getId_producteur()->addErreur($lErreur); } if (!is_array($pData['produits'])) { $lVr->setValid(false); $lVr->getProduits()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_110_CODE); $lErreur->setMessage(MessagesErreurs::ERR_110_MSG); $lVr->getProduits()->addErreur($lErreur); } if (!TestFonction::checkLength($pData['typePaiement'], 0, 11)) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if (!is_int((int) $pData['typePaiement'])) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if (!TestFonction::checkLength($pData['total'], 0, 12) || $pData['total'] > 999999999.99) { $lVr->setValid(false); $lVr->getTotal()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getTotal()->addErreur($lErreur); } if (!is_float((double) $pData['total'])) { $lVr->setValid(false); $lVr->getTotal()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_109_CODE); $lErreur->setMessage(MessagesErreurs::ERR_109_MSG); $lVr->getTotal()->addErreur($lErreur); } if ($pData['typePaiementChampComplementaire'] != '' && !TestFonction::checkLength($pData['typePaiementChampComplementaire'], 0, 50)) { $lVr->setValid(false); $lVr->getTypePaiementChampComplementaire()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getTypePaiementChampComplementaire()->addErreur($lErreur); } //Tests Fonctionnels if (empty($pData['id_commande'])) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_commande()->addErreur($lErreur); } if (empty($pData['id_compte_ferme'])) { $lVr->setValid(false); $lVr->getId_producteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId_producteur()->addErreur($lErreur); } if (empty($pData['produits'])) { $lVr->setValid(false); $lVr->getProduits()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getProduits()->addErreur($lErreur); } if (empty($pData['typePaiement'])) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if ($pData['total'] == '') { $lVr->setValid(false); $lVr->getTotal()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getTotal()->addErreur($lErreur); } if ($pData['typePaiement'] <= 0) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_236_CODE); $lErreur->setMessage(MessagesErreurs::ERR_236_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if ($pData['total'] < 0) { $lVr->setValid(false); $lVr->getTotal()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_215_CODE); $lErreur->setMessage(MessagesErreurs::ERR_215_MSG); $lVr->getTotal()->addErreur($lErreur); } $lCommande = CommandeManager::select($pData['id_commande']); if ($lCommande->getId() != $pData['id_commande']) { $lVr->setValid(false); $lVr->getId_commande()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getId_commande()->addErreur($lErreur); } $lFerme = FermeManager::selectByIdCompte($pData['id_compte_ferme']); if ($lFerme[0]->getIdCompte() != $pData['id_compte_ferme']) { $lVr->setValid(false); $lVr->getId_producteur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getId_producteur()->addErreur($lErreur); } $lTypePaiementService = new TypePaiementService(); $lTypePaiement = $lTypePaiementService->selectVisible($pData['typePaiement']); if ($lTypePaiement[0]->getId() != $pData['typePaiement']) { $lVr->setValid(false); $lVr->getTypePaiement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getTypePaiement()->addErreur($lErreur); } if (is_array($pData['produits'])) { $lValidProduit = new ProduitBonDeLivraisonValid(); $i = 0; while (isset($pData['produits'][$i])) { $lVrProduit = $lValidProduit->validAjout($pData['produits'][$i]); if (!$lVrProduit->getValid()) { $lVr->setValid(false); } $lVr->addProduits($lVrProduit); $i++; } } } return $lVr; }
/** * @name getBComPdf($pParam) * @return Un Fichier Pdf * @desc Retourne le bon de commande en pdf */ public function getBComPdf($pParam) { $lVr = ExportBonCommandeValid::validAjout($pParam); if ($lVr->getValid()) { // Récupération es informations $lLignesBonCommande = $this->getBonCommandeExport($pParam); $lFerme = FermeManager::selectByIdCompte($pParam['idCompteFerme']); $lFerme = $lFerme[0]; $lMarche = CommandeManager::select($pParam['id_commande']); $lProduit = array(); foreach ($lLignesBonCommande as $lLigne) { if (isset($lProduit[$lLigne->getProId()])) { $lProduit[$lLigne->getProId()] = 2; } else { $lProduit[$lLigne->getProId()] = 1; } } // get the HTML ob_start(); include CHEMIN_TEMPLATE . MOD_GESTION_COMMANDE . '/PDF/BonDeCommande.php'; $content = ob_get_clean(); // convert to PDF try { $html2pdf = new HTML2PDF('P', 'A4', 'fr'); $html2pdf->pdf->SetDisplayMode('fullpage'); $html2pdf->writeHTML($content, 0); $html2pdf->Output('Bon de Commande.pdf', 'D'); } catch (HTML2PDF_exception $e) { // Initialisation du Logger $lLogger =& Log::singleton('file', CHEMIN_FICHIER_LOGS); $lLogger->setMask(Log::MAX(LOG_LEVEL)); $lLogger->log("Erreur de génération du PDF bon de Commande : " . $e, PEAR_LOG_DEBUG); // Maj des logs } } else { return $lVr->exportToJson(); } }