/** * @name delete($pId) * @param IdAchatVO * @desc Supprime un achat */ public function delete($pId) { $lAchatValid = new NAMESPACE_CLASSE\NAMESPACE_VALIDATEUR\MOD_SERVICE\AchatValid(); if (!is_null($pId) && $lAchatValid->select($pId)) { $lAchatActuel = $this->select($pId); $lOperationService = new OperationService(); // Suppression des opérations if (!is_null($lAchatActuel->getRechargement())) { // Rechargement $lOperationService->delete($lAchatActuel->getRechargement()->getId()); } $lIdCompte = 0; $lIdMarche = 0; $lIdOperationAchat = 0; if (!is_null($lAchatActuel->getOperationAchat())) { // Achat avec Ope Zeybu $lIdOperationAchat = $lAchatActuel->getOperationAchat()->getId(); $lOperationService->delete($lAchatActuel->getOperationAchat()->getId()); $lOperationAchatChampComp = $lAchatActuel->getOperationAchat()->getChampComplementaire(); $lOperationService->delete($lOperationAchatChampComp[8]->getValeur()); $lIdCompte = $lAchatActuel->getOperationAchat()->getIdCompte(); $lIdMarche = $lOperationAchatChampComp[1]->getValeur(); } $lIdOperationAchatSolidaire = 0; if (!is_null($lAchatActuel->getOperationAchatSolidaire())) { // Achat solidaire avec ope zeybu $lIdOperationAchatSolidaire = $lAchatActuel->getOperationAchatSolidaire()->getId(); $lOperationService->delete($lAchatActuel->getOperationAchatSolidaire()->getId()); $lOperationAchatSolidaireChampComp = $lAchatActuel->getOperationAchatSolidaire()->getChampComplementaire(); $lOperationService->delete($lOperationAchatSolidaireChampComp[8]->getValeur()); $lIdCompte = $lAchatActuel->getOperationAchatSolidaire()->getIdCompte(); $lIdMarche = $lOperationAchatSolidaireChampComp[1]->getValeur(); } // Suppression de l'ensemble des lignes de produit DetailAchatManager::delete($lIdOperationAchat, $lIdOperationAchatSolidaire); $lDetailOperationService = new DetailOperationService(); $lStockService = new StockService(); foreach ($lAchatActuel->getProduits() as $lProduitInital) { $lStockService->delete($lProduitInital->getIdStock()); $lDetailOperationService->delete($lProduitInital->getIdDetailOperation()); $lStockService->delete($lProduitInital->getIdStockSolidaire()); $lDetailOperationService->delete($lProduitInital->getIdDetailOperationSolidaire()); } // Suppression de la réservation $lReservationService = new ReservationService(); $lIdReservation = new IdReservationVO(); $lIdReservation->setIdCompte($lIdCompte); $lIdReservation->setIdCommande($lIdMarche); $lReservationService->delete($lIdReservation); return true; } return false; }
/** * @name delete($pId) * @param IdReservationVO * @desc Met à jour une réservation */ public function delete($pIdReservation) { $lReservationsActuelle = $this->get($pIdReservation); $lOperations = $this->selectOperationReservation($pIdReservation); $lOperation = $lOperations[0]; $lIdOperation = $lOperation->getId(); // Suppression de l'opération $lOperationService = new OperationService(); $lOperationService->delete($lIdOperation); $lStockService = new StockService(); $lDetailOperationService = new DetailOperationService(); foreach ($lReservationsActuelle->getDetailReservation() as $lReservationActuelle) { // Suppression du stock et du detail operation $lStockService->delete($lReservationActuelle->getId()->getIdStock()); $lDetailOperationService->delete($lReservationActuelle->getId()->getIdDetailOperation()); } }
/** * @name delete($pIdFacture) * @param integer * @desc Supprime une facture */ public function delete($pIdFacture) { $lFactureValid = new NAMESPACE_CLASSE\NAMESPACE_VALIDATEUR\MOD_SERVICE\FactureValid(); if ($lFactureValid->delete($pIdFacture)) { $lFacture = $this->select($pIdFacture); $lOperationService = new OperationService(); // Suppression des opérations // $lOperationService->delete($pIdFacture); $lOperationService->delete($lFacture->getOperationProducteur()->getId()); // $lOperationService->delete($lFacture->getOperationZeybu()->getId()); // Suppression du détail de facture DetailFactureManager::delete($pIdFacture); $lDetailOperationService = new DetailOperationService(); $lStockService = new StockService(); foreach ($lFacture->getProduits() as $lProduit) { $lStockService->delete($lProduit->getIdStock()); $lDetailOperationService->delete($lProduit->getIdDetailOperation()); $lStockService->delete($lProduit->getIdStockSolidaire()); } } }
/** * @name enregistrerBonDeCommande($pParam) * @return AfficheListeProduitBonDeCommandeResponse * @desc Enregistre le bon de commande. */ public function enregistrerBonDeCommande($pParam) { $lVr = ProduitsBonDeCommandeValid::validAjout($pParam); if ($lVr->getValid()) { $lIdMarche = $pParam["id_commande"]; $lIdCompteFerme = $pParam["id_compte_ferme"]; $lProduits = $pParam["produits"]; // On enregistre uniquement les produits avec à minima quantité (même si prix à 0) // Calcul du total $lTotal = 0; $lProduitsValide = array(); foreach ($lProduits as $lProduit) { if ($lProduit["quantite"] > 0) { array_push($lProduitsValide, $lProduit); } $lTotal += $lProduit["prix"]; } // Récupère l'opération Bon de commande si elle existe $lOperationService = new OperationService(); $lOperations = $lOperationService->getBonCommande($lIdMarche, $lIdCompteFerme); $lIdOperation = $lOperations[0]->getId(); if (is_null($lIdOperation)) { // Si il n'y a pas d'opération de Bon de commande $lOperation = new OperationDetailVO(); $lOperation->setIdCompte($lIdCompteFerme); $lOperation->setLibelle('Bon de Commande'); $lOperation->setTypePaiement(5); $lOperationChampComplementaire = new OperationChampComplementaireVO(); $lOperationChampComplementaire->setChcpId(1); $lOperationChampComplementaire->setValeur($lIdMarche); $lOperation->setChampComplementaire(array($lOperationChampComplementaire)); } else { $lOperation = $lOperations[0]; } $lOperation->setMontant($lTotal); $lIdOperation = $lOperationService->set($lOperation); // Ajout ou mise à jour de l'operation $lBonCommande = InfoBonCommandeViewManager::selectInfoBonCommande($lIdMarche, $lIdCompteFerme); $lDetailOperationService = new DetailOperationService(); $lStockService = new StockService(); foreach ($lProduitsValide as $lProduit) { $lMaj = false; foreach ($lBonCommande as $lBon) { if ($lProduit["dcomId"] == $lBon->getDcomId()) { $lMaj = true; //$lDcom = DetailCommandeManager::selectByIdProduit($lProduit["id"]); $lStock = new StockVO(); $lStock->setId($lBon->getStoId()); $lStock->setQuantite($lProduit["quantite"]); $lStock->setType(3); $lStock->setIdCompte($lIdCompteFerme); $lStock->setIdDetailCommande($lProduit["dcomId"]); $lStock->setIdOperation($lIdOperation); $lStockService->set($lStock); $lDetailOperation = $lDetailOperationService->get($lBon->getDopeId()); $lDetailOperation->setIdOperation($lIdOperation); $lDetailOperation->setIdCompte($lIdCompteFerme); $lDetailOperation->setMontant($lProduit["prix"]); $lDetailOperation->setLibelle('Bon de Commande'); $lDetailOperation->setTypePaiement(5); $lDetailOperationService->set($lDetailOperation); } } if (!$lMaj) { //$lDcom = DetailCommandeManager::selectByIdProduit($lProduit["id"]); $lStock = new StockVO(); $lStock->setQuantite($lProduit["quantite"]); $lStock->setType(3); $lStock->setIdCompte($lIdCompteFerme); $lStock->setIdDetailCommande($lProduit["dcomId"]); $lStock->setIdOperation($lIdOperation); $lStockService->set($lStock); $lDetailOperation = new DetailOperationVO(); $lDetailOperation->setIdOperation($lIdOperation); $lDetailOperation->setIdCompte($lIdCompteFerme); $lDetailOperation->setMontant($lProduit["prix"]); $lDetailOperation->setLibelle('Bon de Commande'); $lDetailOperation->setTypePaiement(5); //$lDetailOperation->setTypePaiementChampComplementaire($lProduit["id"]); $lDetailOperation->setIdDetailCommande($lProduit["dcomId"]); $lDetailOperationService->set($lDetailOperation); } } foreach ($lBonCommande as $lBon) { $lDelete = true; foreach ($lProduitsValide as $lProduit) { if ($lProduit["dcomId"] == $lBon->getDcomId()) { $lDelete = false; } } if ($lDelete) { $lStockService->delete($lBon->getStoId()); $lDetailOperationService->delete($lBon->getDopeId()); } } } return $lVr; }