/** * @name validAjout($pData) * @return AchatCommandeVR * @desc Test la validite de l'élément */ public static function validAjout($pData) { $lVr = new AchatCommandeVR(); //Tests inputs if (!isset($pData['id'])) { $lVr->setValid(false); $lVr->getId()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId()->addErreur($lErreur); } if (!isset($pData['idCompte'])) { $lVr->setValid(false); $lVr->getIdCompte()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getIdCompte()->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['produitsSolidaire'])) { $lVr->setValid(false); $lVr->getProduitsSolidaire()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getProduitsSolidaire()->addErreur($lErreur); } if ($lVr->getValid()) { //Tests Techniques if (!is_int((int) $pData['id'])) { $lVr->setValid(false); $lVr->getId()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_104_CODE); $lErreur->setMessage(MessagesErreurs::ERR_104_MSG); $lVr->getId()->addErreur($lErreur); } if (!TestFonction::checkLength($pData['idCompte'], 0, 11)) { $lVr->setValid(false); $lVr->getIdCompte()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getIdCompte()->addErreur($lErreur); } if (!is_int((int) $pData['idCompte'])) { $lVr->setValid(false); $lVr->getIdCompte()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getIdCompte()->addErreur($lErreur); } //Tests Fonctionnels $lCommande = CommandeManager::select($pData['id']); if ($lCommande->getId() != $pData['id']) { $lVr->setValid(false); $lVr->getId()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getId()->addErreur($lErreur); } // Le marche doit être ouvert if ($lCommande->getArchive() != 0) { $lVr->setValid(false); $lVr->getId()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_239_CODE); $lErreur->setMessage(MessagesErreurs::ERR_239_MSG); $lVr->getId()->addErreur($lErreur); } $lNbProduit = 0; if (!is_array($pData['produits'])) { $lVr->setValid(false); $lVr->getLog()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_110_CODE); $lErreur->setMessage(MessagesErreurs::ERR_110_MSG); $lVr->getLog()->addErreur($lErreur); } else { foreach ($pData['produits'] as $lProduit) { if ($lProduit['quantite'] != 0 && !empty($lProduit['quantite'])) { $lProduit['idCommande'] = $pData['id']; $lVrDetail = MarcheDetailAchatValid::validAjout($lProduit); if (!$lVrDetail->getValid()) { $lVr->setValid(false); } $lVr->addProduits($lVrDetail); $lNbProduit++; } } } if (!is_array($pData['produitsSolidaire'])) { $lVr->setValid(false); $lVr->getLog()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_110_CODE); $lErreur->setMessage(MessagesErreurs::ERR_110_MSG); $lVr->getLog()->addErreur($lErreur); } else { foreach ($pData['produitsSolidaire'] as $lProduit) { if ($lProduit['quantite'] != 0 && !empty($lProduit['quantite'])) { $lProduit['idCommande'] = $pData['id']; $lVrDetail = MarcheDetailAchatValid::validAjout($lProduit); if (!$lVrDetail->getValid()) { $lVr->setValid(false); } $lVr->addProduitsSolidaire($lVrDetail); $lNbProduit++; } } } if ($lNbProduit == 0) { $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); } if (empty($pData['id'])) { $lVr->setValid(false); $lVr->getId()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getId()->addErreur($lErreur); } if (empty($pData['idCompte'])) { $lVr->setValid(false); $lVr->getIdCompte()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getIdCompte()->addErreur($lErreur); } // Les compte existe $lCompteService = new CompteService(); if (!$lCompteService->existe($pData['idCompte'])) { $lVr->setValid(false); $lVr->getIdCompte()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getIdCompte()->addErreur($lErreur); } if (!isset($pData['rechargement']['montant'])) { $lVr->setValid(false); $lVr->getRechargement()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getRechargement()->addErreur($lErreur); } if (!empty($pData['rechargement']['montant']) && $pData['rechargement']['montant'] != 0) { $lValidRechargement = new RechargementCompteValid(); $lVr->setRechargement($lValidRechargement->validAjout($pData['rechargement'])); if (!$lVr->getRechargement()->getValid()) { $lVr->setValid(false); } } } return $lVr; }
/** * @name validModifierAchat($pData) * @return ModifierAchatAdherentVR * @desc Test la validite de l'élément */ public static function validModifierAchat($pData) { $lVr = new ModifierAchatAdherentVR(); //Tests inputs if (!isset($pData["achat"])) { $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()) { $pData = $pData["achat"]; if (!isset($pData['idAchat'])) { $lVr->setValid(false); $lVr->getIdAchat()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getIdAchat()->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 (!isset($pData['produits'])) { $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 (!TestFonction::checkLength($pData['idAchat'], 0, 11)) { $lVr->setValid(false); $lVr->getIdAchat()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getIdAchat()->addErreur($lErreur); } if (!is_int((int) $pData['idAchat'])) { $lVr->setValid(false); $lVr->getIdAchat()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_108_CODE); $lErreur->setMessage(MessagesErreurs::ERR_108_MSG); $lVr->getIdAchat()->addErreur($lErreur); } if (!TestFonction::checkLength($pData['idAchat'], 0, 12) || $pData['idAchat'] > 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((float)$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 (!is_array($pData['produits'])) { $lVr->setValid(false); $lVr->getProduits()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_115_CODE); $lErreur->setMessage(MessagesErreurs::ERR_115_MSG); $lVr->getProduits()->addErreur($lErreur); } //Tests Fonctionnels if (empty($pData['idAchat'])) { $lVr->setValid(false); $lVr->getIdAchat()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getIdAchat()->addErreur($lErreur); } /* if(empty($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 (empty($pData['produits'])) { $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()) { /* 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); }*/ $lOperationService = new OperationService(); $lOperation = $lOperationService->get($pData['idAchat']); if (!is_null($lOperation->getId())) { foreach ($pData['produits'] as $lProduit) { $lProduit['idCommande'] = $lOperation->getIdCommande(); $lVrDetail = MarcheDetailAchatValid::validAjout($lProduit); if (!$lVrDetail->getValid()) { $lVr->setValid(false); } $lVr->addProduits($lVrDetail); } } } } } return $lVr; }