IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

[Magento] Ajouter une remise a un produit specifique dans le panier


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre régulier Avatar de King_T
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    157
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 157
    Points : 121
    Points
    121
    Par défaut [Magento] Ajouter une remise a un produit specifique dans le panier
    Bonjour,

    je galère depuis quelques jours sur ce point, je travail sur un module permettant d’accorder un produit a un prix symbolique (1€) pour l’achat d’un autre produit.
    je travail sur un observer à partir de l’event

    checkout_cart_add_product_complete
    et j’ai essayé avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $_cart_products = Mage::getModel("checkout/cart") -> getItems();
     
    //foreache...
    //if ...
    $_cart_product ->setPrice($giftPrice) -> setOriginalCustomPrice($giftPrice) 
    -> setCustomPrice($giftPrice) -> save();
    j’ai réussi a mettre le produit a 1€, mais le problème est que le produit “cadeau” peut se vendre séparément avec un prix normal.
    donc, dans mon cas, si l’utilisateur l’ajoute au panier, le prix sera forcé automatiquement a 1€ . ce qui n’est pas logique.

    je crois que la solution est dans:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $_cart_product->setDiscountAmount($realPrice-$giftPrice);
    $_cart_product->setBaseDiscountAmount($realPrice-$giftPrice);
    mais jy arrive pas
    merci pour votre aide d’avance
    Dreaming in Digital, Living in Realtime, Thinking in Binary, Talking in IP .... Welcome to our World !!!!

  2. #2
    Membre régulier Avatar de King_T
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    157
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 157
    Points : 121
    Points
    121
    Par défaut
    petit update :
    quand je fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Zend_Debug::dump($_cart_products);
    die();
    Voila ce que j'ai comme sortie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
            array
              'item_id' => string '449' (length=3)
              'quote_id' => string '22' (length=2)
              'created_at' => string '2012-04-19 14:59:22' (length=19)
              'updated_at' => string '2012-04-19 15:09:22' (length=19)
              'product_id' => string '17' (length=2)
              'store_id' => string '1' (length=1)
              'parent_item_id' => null
              'is_virtual' => boolean false
              'sku' => string 'bb8100' (length=6)
              'name' => string 'BlackBerry 8100 Pearl' (length=21)
              'description' => null
              'applied_rule_ids' => string '' (length=0)
              'additional_data' => null
              'free_shipping' => boolean false
              'is_qty_decimal' => string '0' (length=1)
              'no_discount' => string '0' (length=1)
              'weight' => string '15.2000' (length=7)
              'qty' => int 2
              'price' => string '349.9900' (length=8)
              'base_price' => string '349.9900' (length=8)
              'custom_price' => null
              'discount_percent' => int 0
              'discount_amount' => float 348.99
              'base_discount_amount' => float 348.99
              'tax_percent' => int 0
              'tax_amount' => int 0
              'base_tax_amount' => int 0
              'row_total' => float 699.98
              'base_row_total' => float 699.98
              'row_total_with_discount' => float 350.99
              'row_weight' => float 30.4
              'product_type' => string 'simple' (length=6)
              'base_tax_before_discount' => null
              'tax_before_discount' => null
              'original_custom_price' => null
              'gift_message_id' => null
              'weee_tax_applied' => string 'a:0:{}' (length=6)
              'weee_tax_applied_amount' => int 0
              'weee_tax_applied_row_amount' => int 0
              'base_weee_tax_applied_amount' => int 0
              'base_weee_tax_applied_row_amnt' => null
              'weee_tax_disposition' => int 0
              'weee_tax_row_disposition' => int 0
              'base_weee_tax_disposition' => int 0
              'base_weee_tax_row_disposition' => int 0
              'redirect_url' => null
              'base_cost' => string '29.9900' (length=7)
              'price_incl_tax' => float 349.99
              'base_price_incl_tax' => float 349.99
              'row_total_incl_tax' => float 699.98
              'base_row_total_incl_tax' => float 699.98
              'hidden_tax_amount' => null
              'base_hidden_tax_amount' => null
              'qty_options' => 
                array
                  ...
    Les Discount sont la :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ...
            'discount_amount' => float 348.99
              'base_discount_amount' => float 348.99
    ...
    mais ils ne sont pas pris en considération !!
    merci encore pour votre aide !
    Dreaming in Digital, Living in Realtime, Thinking in Binary, Talking in IP .... Welcome to our World !!!!

Discussions similaires

  1. [WS 2008] Ajouté une entrée pour le site FTP dans le serveur DNS
    Par Midou45 dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 29/04/2011, 15h46
  2. Ajouter une image de base de donnée dans un rapport
    Par wapicris dans le forum EPM (Hyperion)
    Réponses: 0
    Dernier message: 08/07/2010, 12h13
  3. Ajouter une fonction aur le clic droit dans une zone de text
    Par medmans dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 23/02/2010, 14h13
  4. Ajouter une drop down list en HTML dans du code XSLT
    Par joeyd dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 09/04/2009, 01h06
  5. Ajouter une reference à Access par le code dans un programme VB ?
    Par Chekov dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 12/12/2007, 00h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo