Jump to content

Recommended Posts

Bonjour,

Je rencontre un soucis avec le module TNT. Ce module fonctionne très bien par contre il s'affiche même sur les commandes avec des produits hors stock.

Du coup, les clients s'attendent à recevoir leur colis dans les 24H hors ce n'est pas le cas.

Y a t'il un moyen d'activer un mode de transport uniquement si tous les articles d'une commande sont en stock.

Merci pour votre aide ;)

Share this post


Link to post
Share on other sites
8 minutes ago, EnZZoooOOO said:

Bonjour,

Je rencontre un soucis avec le module TNT. Ce module fonctionne très bien par contre il s'affiche même sur les commandes avec des produits hors stock.

Du coup, les clients s'attendent à recevoir leur colis dans les 24H hors ce n'est pas le cas.

Y a t'il un moyen d'activer un mode de transport uniquement si tous les articles d'une commande sont en stock.

Merci pour votre aide ;)

il te faudrait un module pour indiquer la date de livraison, tu pourra paramétrer une date de livraison pour tes produit en stock, et une date pour tes produit hors stock.

Share this post


Link to post
Share on other sites

Merci, avez vous un module en tête ?

N'y aurait il pas plutôt moyen de désactiver l'affichage de TNT si un seul produit n'est pas en stock, quitte à modifier quelque peu le code du module ?

Share this post


Link to post
Share on other sites

tu a la solution de ne pas pouvoir commander un produit si il n'est pas en stock.

j'ai pour ma part le module estimation de livraison acheté sur addons. Tu donne une date pour tes produit en stock, hors stock,...

sinon, la modif d'un module, mais trouve un développeur compétent.

Share this post


Link to post
Share on other sites

Je viens de modifier cette fonction du module TNT pour ceux que ça peut intéresser. ça à l'air de fonctionner. Reste plus qu'à coder ça proprement via un override de module.

Bonne fin de journée ;)

    public static function getPSCart($intArgCartID)
    {
        TNTOfficiel_Logstack::log();

        // Carrier ID must be an integer greater than 0.
        if (empty($intArgCartID) || $intArgCartID != (int)$intArgCartID || !((int)$intArgCartID > 0)) {
            return null;
        }

        $intCartID = (int)$intArgCartID;

        // Load cart.
        $objCart = new Cart($intCartID);


        // If cart object not available.
        if (!(Validate::isLoadedObject($objCart) && (int)$objCart->id === $intCartID)) {
            return null;
        }

        $tntCart = 1; //Ici on test si les produits sont bien en stock pour afficher
        $arrProductList = $objCart->getProducts();

        foreach ($arrProductList as $arrProduct) {

            if ($arrProduct['quantity_available']<=0) $tntCart=0;

        }

        if ($tntCart)  return $objCart; else return null;

    }

Share this post


Link to post
Share on other sites

En plus court dans le hook du module ;)

public function hookPayment($params)
{
	foreach ($params['cart']->getProducts() as $product) {
		if ($product['quantity_available'] <= 0)
		return false;
	}

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More