/** * @name getListePaiement() * @desc Donne liste des paiements non enregistrés */ public function getListePaiement() { $lOperationService = new OperationService(); $lResponse = new ListePaiementResponse(); $lResponse->setListeCheque($lOperationService->getListeChequeAssociationNonEnregistre()); $lResponse->setListeEspece($lOperationService->getListeEspeceAssociationNonEnregistre()); $lBanqueService = new BanqueService(); $lResponse->setBanques($lBanqueService->getAllActif()); $lTypePaiementService = new TypePaiementService(); $lResponse->setTypePaiement($lTypePaiementService->selectVisible()); return $lResponse; }
/** * @name getInfoRechargement($pParam) * @return InfoRechargementResponse * @desc Retourne les infos pour le rechargement d'un compte */ public function getInfoRechargement($pParam) { $lVr = RechargerCompteValid::validInfo($pParam); if ($lVr->getValid()) { $lResponse = new InfoRechargementResponse(); $lAdherentService = new AdherentService(); $lAdherent = $lAdherentService->get($pParam['id']); $lResponse->setNumero($lAdherent->getAdhNumero()); $lResponse->setIdCompte($lAdherent->getAdhIdCompte()); $lResponse->setCompte($lAdherent->getCptLabel()); $lResponse->setPrenom($lAdherent->getAdhPrenom()); $lResponse->setNom($lAdherent->getAdhNom()); $lResponse->setSolde($lAdherent->getCptSolde()); $lBanqueService = new BanqueService(); $lResponse->setBanques($lBanqueService->getAllActif()); return $lResponse; } return $lVr; }
/** * @name supprimerBanque($pBanque) * @return VR * @desc Supprime une banque */ public function supprimerBanque($pBanque) { $lVr = BanqueValid::validDelete($pBanque); if ($lVr->getValid()) { $lBanqueService = new BanqueService(); $lBanque = $lBanqueService->delete($pBanque['id']); } return $lVr; }
/** * @name getInfoOperation($pParam) * @return InfoOperationResponse * @desc Retourne les infos pour l'ajout d'une opération */ public function getInfoOperation() { $lTypePaiementService = new TypePaiementService(); $lBanqueService = new BanqueService(); return new InfoOperationResponse($lTypePaiementService->selectVisible(), $lBanqueService->getAllActif()); }
/** * @name getInfoAchatMarche($pParam) * @return InfoAchatCommandeResponse * @desc Retourne les infos de réservation d'un adhérent */ public function getInfoAchatMarche($pParam) { $lVr = AchatValid::validInfoAchatMarche($pParam); if ($lVr->getValid()) { $lResponse = new InfoAchatCommandeResponse(); $lProduitsAchat = array(); $lIdMarche = 0; $lIdCompte = 0; if (!empty($pParam["id_commande"])) { $lIdMarche = $pParam["id_commande"]; } if (!empty($pParam["id"])) { $lAchatService = new AchatService(); $lAchat = $lAchatService->get($pParam["id"]); $lProduitsAchat = $lAchat->getProduits(); $lResponse->setAchats($lAchat); // L'achat if (!is_null($lAchat->getOperationAchat())) { $lIdCompte = $lAchat->getOperationAchat()->getIdCompte(); $lChcp = $lAchat->getOperationAchat()->getChampComplementaire(); if (isset($lChcp[1])) { $lIdMarche = $lChcp[1]->getValeur(); } } if (!is_null($lAchat->getOperationAchatSolidaire())) { $lIdCompte = $lAchat->getOperationAchatSolidaire()->getIdCompte(); $lChcp = $lAchat->getOperationAchatSolidaire()->getChampComplementaire(); if (isset($lChcp[1])) { $lIdMarche = $lChcp[1]->getValeur(); } } } if ($pParam["id_adherent"] > 0) { // Si c'est un compte adhérent $lData = $lVr->getData(); $lIdCompte = $lData['adherent']->getAdhIdCompte(); $lResponse->setAdherent($lData['adherent']); $lAdhesionService = new AdhesionService(); $lResponse->setNbAdhesionEnCours($lAdhesionService->getNbAdhesionEnCoursSurAdherent($pParam["id_adherent"])); } $lStockService = new StockService(); $lStockProduitsDisponible = $lStockService->getProduitsDisponible(); $lStock = array(); $lProduitsMarche = array(); if ($lIdMarche != 0) { // Si ce n'est pas la caisse permanente $lMarcheService = new MarcheService(); $lMarche = $lMarcheService->get($lIdMarche); $lProduitsMarche = $lMarche->getProduits(); $lResponse->setMarche($lMarche); // Les informations du marché } // Fusion des stocks $lLotsProduits = array(); foreach ($lStockProduitsDisponible as $lProduitStock) { $lAjout = true; foreach ($lProduitsMarche as $lProduitMarche) { if ($lProduitStock->getIdNom() == $lProduitMarche->getIdNom() && $lProduitStock->getUnite() == $lProduitMarche->getUnite()) { $lAjout = false; } } if ($lAjout) { if (!isset($lStock[$lProduitStock->getCproNom()])) { $lStock[$lProduitStock->getCproNom()] = array("cproId" => $lProduitStock->getIdCategorie(), "cproNom" => $lProduitStock->getCproNom(), "produits" => array()); } $lUnite = !is_null($lProduitStock->getUnite()) ? $lProduitStock->getUnite() : $lProduitStock->getUniteSolidaire(); $lStock[$lProduitStock->getCproNom()]["produits"][$lProduitStock->getNom() . $lProduitStock->getUnite()] = new ProduitDetailAchatAfficheVO($lProduitStock->getIdNom(), null, null, null, null, null, null, null, null, null, $lUnite, null, $lUnite, null, null, $lProduitStock->getIdCategorie(), $lProduitStock->getCproNom(), null, $lProduitStock->getNom()); $lLotsProduits[$lProduitStock->getIdNom() . $lProduitStock->getUnite()] = array("nom" => $lProduitStock->getNom(), "type" => "modele", "lots" => $lProduitStock->getLots()); } } foreach ($lProduitsMarche as $lProduitMarche) { if (!isset($lStock[$lProduitMarche->getCproNom()])) { $lStock[$lProduitMarche->getCproNom()] = array("cproId" => $lProduitMarche->getIdCategorie(), "cproNom" => $lProduitMarche->getCproNom(), "produits" => array()); } $lUnite = !is_null($lProduitMarche->getUnite()) ? $lProduitMarche->getUnite() : $lProduitMarche->getUniteSolidaire(); $lStock[$lProduitMarche->getCproNom()]["produits"][$lProduitMarche->getNom() . $lProduitMarche->getUnite()] = new ProduitDetailAchatAfficheVO($lProduitMarche->getIdNom(), null, null, null, null, null, null, null, null, null, $lUnite, null, $lUnite, null, null, $lProduitMarche->getIdCategorie(), $lProduitMarche->getCproNom(), null, $lProduitMarche->getNom()); $lLotsProduits[$lProduitMarche->getIdNom() . $lProduitMarche->getUnite()] = array("nom" => $lProduitMarche->getNom(), "type" => "marche", "lots" => $lProduitMarche->getLots()); } foreach ($lProduitsAchat as $lProduitAchat) { $lUnite = !is_null($lProduitAchat->getUnite()) ? $lProduitAchat->getUnite() : $lProduitAchat->getUniteSolidaire(); if (!is_null($lUnite)) { if (isset($lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite])) { $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setIdStock($lProduitAchat->getIdStock()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setIdStockSolidaire($lProduitAchat->getIdStockSolidaire()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setIdDetailCommande($lProduitAchat->getIdDetailCommande()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setIdModeleLot($lProduitAchat->getIdModeleLot()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setIdDetailCommandeSolidaire($lProduitAchat->getIdDetailCommandeSolidaire()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setIdModeleLotSolidaire($lProduitAchat->getIdModeleLotSolidaire()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setQuantite($lProduitAchat->getQuantite()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setQuantiteSolidaire($lProduitAchat->getQuantiteSolidaire()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setMontant($lProduitAchat->getMontant()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setMontantSolidaire($lProduitAchat->getMontantSolidaire()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setIdDetailOperation($lProduitAchat->getIdDetailOperation()); $lStock[$lProduitAchat->getCproNom()][$lProduitAchat->getNproNom()][$lUnite]->setIdDetailOperationSolidaire($lProduitAchat->getIdDetailOperationSolidaire()); } else { if (!isset($lStock[$lProduitAchat->getCproNom()])) { $lStock[$lProduitAchat->getCproNom()] = array("cproId" => $lProduitAchat->getCproId(), "cproNom" => $lProduitAchat->getCproNom(), "produits" => array()); } $lProduitAchat->setUnite($lUnite); $lProduitAchat->setUniteSolidaire($lUnite); $lStock[$lProduitAchat->getCproNom()]["produits"][$lProduitAchat->getNproNom() . $lUnite] = $lProduitAchat; // Ajout des lots $lModelesLot = ModeleLotManager::selectByIdNomProduit($lProduitAchat->getIdNomProduit()); // Récupère même les lots supprimés car il y a peut être eu un achat sur ce lot précédemment $lLots = array(); foreach ($lModelesLot as $lModeleLot) { $lLot = new DetailMarcheVO(); $lLot->setId($lModeleLot->getId()); $lLot->setTaille($lModeleLot->getQuantite()); $lLot->setPrix($lModeleLot->getPrix()); $lLots[$lModeleLot->getId()] = $lLot; } $lLotsProduits[$lProduitAchat->getIdNomProduit() . $lUnite] = array("nom" => $lProduitAchat->getNproNom(), "type" => "modele", "lots" => $lLots); } } } ksort($lStock); $lResponse->setStock($lStock); // Stock de produit disponible $lResponse->setLots($lLotsProduits); // Lots des produits $lBanqueService = new BanqueService(); $lTypePaiementService = new TypePaiementService(); $lResponse->setTypePaiement($lTypePaiementService->selectVisible()); // Type de paiment $lResponse->setBanques($lBanqueService->getAllActif()); // Liste des banques $lResponse->setIdRequete(uniqid()); return $lResponse; } return $lVr; }
/** * @name validUpdate($pData, $pTypePaiement) * @return ChampComplementaireVR * @desc Test la validite de l'élément */ public static function validUpdate($pData, $pTypePaiement) { $lVr = new ChampComplementaireVR(); //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['valeur'])) { $lVr->setValid(false); $lVr->getValeur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getValeur()->addErreur($lErreur); } if (!isset($pTypePaiement)) { $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 (!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['valeur'], 0, 50)) { $lVr->setValid(false); $lVr->getValeur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getValeur()->addErreur($lErreur); } //Tests Fonctionnels 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); } else { // Champ Obligatoire if ($pTypePaiement == 1 && empty($pData['valeur'])) { $lVr->setValid(false); $lVr->getValeur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_201_CODE); $lErreur->setMessage(MessagesErreurs::ERR_201_MSG); $lVr->getValeur()->addErreur($lErreur); } // Selon le type de champ switch ($pData['id']) { case 1: // IdMarche if (!is_int((int) $pData['valeur'])) { $lVr->setValid(false); $lVr->getValeur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_104_CODE); $lErreur->setMessage(MessagesErreurs::ERR_104_MSG); $lVr->getValeur()->addErreur($lErreur); } $lMarche = CommandeManager::select($pData['valeur']); if ($lMarche->getId() != $pData['valeur']) { $lVr->setValid(false); $lVr->getValeur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_216_CODE); $lErreur->setMessage(MessagesErreurs::ERR_216_MSG); $lVr->getValeur()->addErreur($lErreur); } else { $lVr->setData(array('marche' => $lMarche)); } break; case 4: // Id Operation Reception // Id Operation Reception case 5: // Id Operation émission // Id Operation émission case 6: // Id Produit // Id Produit case 7: // Id info Operation Livraison // Id info Operation Livraison case 8: // Id Operation soeur if (!is_int((int) $pData['valeur'])) { $lVr->setValid(false); $lVr->getValeur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_104_CODE); $lErreur->setMessage(MessagesErreurs::ERR_104_MSG); $lVr->getValeur()->addErreur($lErreur); } break; case 2: // Banque $lBanqueService = new BanqueService(); if (!$lBanqueService->existe($pData['valeur'])) { $lVr->setValid(false); $lVr->getValeur()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_261_CODE); $lErreur->setMessage(MessagesErreurs::ERR_261_MSG); $lVr->getValeur()->addErreur($lErreur); } break; case 3: // Numéro break; } } } return $lVr; }
/** * @name validDelete($pData) * @return BanqueVR * @desc Test la validite de l'élément */ public static function validDelete($pData) { $lVr = new BanqueVR(); //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 ($lVr->getValid()) { if (!TestFonction::checkLength($pData['id'], 0, 11)) { $lVr->setValid(false); $lVr->getId()->setValid(false); $lErreur = new VRerreur(); $lErreur->setCode(MessagesErreurs::ERR_101_CODE); $lErreur->setMessage(MessagesErreurs::ERR_101_MSG); $lVr->getId()->addErreur($lErreur); } 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); } //Tests Fonctionnels 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); } // La banque doit exister $lBanqueService = new BanqueService(); if (!$lBanqueService->existe($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); } } return $lVr; }
/** * @name getFacture($pParam) * @return FactureResponse * @desc Retourne la facture */ public function getFacture($pParam) { $lVr = FactureValid::validDelete($pParam); if ($lVr->getValid()) { $lBanqueService = new BanqueService(); $lTypePaiementService = new TypePaiementService(); $lFermeService = new FermeService(); $lData = $lVr->getData(); $lFermes = $lFermeService->getByIdCompte($lData['facture']->getId()->getIdCompte()); $lFerme = $lFermes[0]; return new FactureResponse($lData['facture'], $lBanqueService->getAllActif(), $lTypePaiementService->selectVisible(), $lFerme, ListeNomProduitViewManager::select($lFerme->getId())); } return $lVr; }
/** * @name getInfoModificationAdhesionAdherent($pParam) * @return InfoModificationAdhesionAdherentResponse * @desc Retourne les informations sur l'adhésion d'un adhérent à une adhésion */ public function getInfoModificationAdhesionAdherent($pParam) { $lVr = AdhesionAdherentValid::validDelete($pParam); if ($lVr->getValid()) { $lAdhesionService = new AdhesionService(); $lTypePaiementService = new TypePaiementService(); $lBanqueService = new BanqueService(); $lAdhesionAdherent = $lAdhesionService->getAdhesionAdherent($pParam['id']); $lAdhesion = $lAdhesionAdherent->getAdhesionDetail(); $lPerimetre = $lAdhesionService->getTypeAdhesion($lAdhesionAdherent->getAdhesionAdherent()->getIdTypeAdhesion())->getIdPerimetre(); if ($lPerimetre == 1) { // Si seul adhérent sur le compte ne propose pas les adhésions sur périmètre adhérent $lFiltrePerimetre = 1; } else { // Si plusieurs adhérents uniquement les types adhésion compte $lFiltrePerimetre = 2; } $lTypes = array(); foreach ($lAdhesion->getTypes() as $i => $lType) { if ($lType->getPerId() == $lFiltrePerimetre) { array_push($lTypes, $lType); } } $lAdhesion->setTypes($lTypes); return new InfoAjoutAdhesionAdherentResponse($lAdhesion, $lTypePaiementService->selectVisible(), $lBanqueService->getAllActif(), $lAdhesionAdherent); } return $lVr; }