Asu34 Posted December 11, 2019 Share Posted December 11, 2019 Bonjour à tous, Lors de la génération d'un avoir avec un bon de réduction, ce dernier à dans sa règle panier et condition une durée de validité d'1 an. Je souhaiterais passer ces derniers à 6 mois. Auriez-vous une idée comment mettre ça en place ? Je vous remercie par avance, Link to comment Share on other sites More sharing options...
joseantgv Posted December 11, 2019 Share Posted December 11, 2019 Si je ne me trompe pas, ce bon de réduction est généré en fonction postProcess() du contrôleur AdminOrdersController : Vous pouvez réécrire (override) la fonction. // Generate voucher if (Tools::isSubmit('generateDiscountRefund') && !count($this->errors) && $amount > 0) { $cart_rule = new CartRule(); $cart_rule->description = $this->trans('Credit slip for order #%d', array('#%d' => $order->id), 'Admin.Orderscustomers.Feature'); $language_ids = Language::getIDs(false); foreach ($language_ids as $id_lang) { // Define a temporary name $cart_rule->name[$id_lang] = sprintf('V0C%1$dO%2$d', $order->id_customer, $order->id); } // Define a temporary code $cart_rule->code = sprintf('V0C%1$dO%2$d', $order->id_customer, $order->id); $cart_rule->quantity = 1; $cart_rule->quantity_per_user = 1; // Specific to the customer $cart_rule->id_customer = $order->id_customer; $now = time(); $cart_rule->date_from = date('Y-m-d H:i:s', $now); $cart_rule->date_to = date('Y-m-d H:i:s', strtotime('+1 year')); //Change this to +6 months ... } 1 Link to comment Share on other sites More sharing options...
Asu34 Posted December 11, 2019 Author Share Posted December 11, 2019 Bonjour, @joseantgv super je te remercie ! C'est tout bon et ça fonctionne en override. J'en ai profité pour modifier la structure de génération des codes (des clients avaient du mal avec le '0' & 'O') et leur nom afin qu'en BO ils soient plus "parlant". NB : il faut faire les modifications à 2 endroits // Generate voucher if (Tools::isSubmit('generateDiscountRefund') && !count($this->errors) && $amount > 0) { //... } // & // Generate voucher if (Tools::isSubmit('generateDiscount') && !count($this->errors)) { //... } Voici ce que ça donne en BO (nouveau et ancien avoir & bon de réduction ): 1 Link to comment Share on other sites More sharing options...
PF22 Posted April 1, 2020 Share Posted April 1, 2020 J'ai une précision , peut etre idiote, mais la validité du bon de réduction c'est une date fixe, on ne peut pas indiquer une durée, par exemple - mois, à partir du moment où le client en bénéficie ? Link to comment Share on other sites More sharing options...
joseantgv Posted April 3, 2020 Share Posted April 3, 2020 En 1/4/2020 a las 6:02 PM, Pat_07 dijo: J'ai une précision , peut etre idiote, mais la validité du bon de réduction c'est une date fixe, on ne peut pas indiquer une durée, par exemple - mois, à partir du moment où le client en bénéficie ? Oui: $cart_rule->date_from = date('Y-m-d H:i:s', $now); $cart_rule->date_to = date('Y-m-d H:i:s', strtotime('+1 year')); //Change this to +6 months 1 Link to comment Share on other sites More sharing options...
PF22 Posted April 3, 2020 Share Posted April 3, 2020 merci @joseantgv ça veut bien dire que par défaut le bon de réduction est valable un an à partir du moment où le client fait l'achat qui active ce bon ? Link to comment Share on other sites More sharing options...
Asu34 Posted April 3, 2020 Author Share Posted April 3, 2020 Tu as lu le topic en entier ? Link to comment Share on other sites More sharing options...
joseantgv Posted April 3, 2020 Share Posted April 3, 2020 hace 1 hora, Pat_07 dijo: merci @joseantgv ça veut bien dire que par défaut le bon de réduction est valable un an à partir du moment où le client fait l'achat qui active ce bon ? Mais de quel coupon s'agit-il exactement ? Cela dépend du process/module qui le génère. Link to comment Share on other sites More sharing options...
PF22 Posted April 3, 2020 Share Posted April 3, 2020 Oui je sais que le sujet n'est pas directement lié. Je cherche à offrir un bon de réduction après l'achat d'un article spécifique. Mais je veux que ce bon de réduction soit valable 1 an à partir de l'achat de l'article par le client. Link to comment Share on other sites More sharing options...
PF22 Posted May 20, 2020 Share Posted May 20, 2020 Au fait j'ai trouvé ma solution. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now