/** * @name rechargerCompte($pParam) * @return VR * @desc Recharge le compte d'un adhérent */ public function rechargerCompte($pParam) { $lVr = RechargementCompteValid::validAjout($pParam); if ($lVr->getValid()) { $lOperationService = new OperationService(); $lOperationService->set(OperationDetailToVO::convertFromArray($pParam)); } return $lVr; }
/** * @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 validUpdate($pData) * @return RechargementCompteVR * @desc Test la validite de l'élément */ public static function validUpdate($pData) { $lVr = RechargementCompteValid::validDelete($pData); if ($lVr->getValid()) { return RechargementCompteValid::validAjout($pData); } return $lVr; }