Jean-Bruno Posted October 7, 2010 Share Posted October 7, 2010 Bonjour Je cherche à savoir qu'elle est le bout de code qui permettrait de créer un bon de réduction au moment de la commande si quelqu'un passe par un mode de paiement particulier. En effet, les personnes qui payent en CB crée de la trésorerie alors que les autre pas.Une idée ?Merci d'avance Link to comment Share on other sites More sharing options...
BVince Posted October 8, 2010 Share Posted October 8, 2010 Bonjour,comme on veut le bon de réduction à la validation de paiement, il va falloir se greffer sur le retour de paiement... Link to comment Share on other sites More sharing options...
Jean-Bruno Posted October 8, 2010 Author Share Posted October 8, 2010 merci BVinceSi je comprends bien ca va se passer dans order-return.php. mais quel est le type de code à insérer ?a+ Link to comment Share on other sites More sharing options...
BVince Posted October 8, 2010 Share Posted October 8, 2010 Il va falloir conditionner l'attribution du bon de réduction au moyen de paiement sélectionné, puis utiliser les fonctions intégrées à Prestashop pour envoyer un bon de réduction.Il va falloir utiliser une fonction de génération aléatoire de code Bon de réduction, de ce genre : public static function getRand( $len = null ){ if( is_null( self :: $array ) ) $self :: _genArray( ); if( !is_numeric( $len ) ) $len = self :: $length; $passwd = ''; for( $i = $len; $i > 0; $i-- ) $passwd .= self :: $array[ rand( 0, count( self :: $array ) -1 ) ]; return $passwd; } static public function _genArray( ){ self :: $array = array_merge( range( 'A', 'Z' ), range( '0', '9' ) ); } et créer le bon de réduction en réalisant une injection SQL.... Link to comment Share on other sites More sharing options...
Jean-Bruno Posted October 8, 2010 Author Share Posted October 8, 2010 Bon je vais essayé. Merci beaucoup.Quand tu parles des bon paramètres c'est l'ID du typre de payement et le type de bon c'est ça ?Aller je me lance cet après midi Link to comment Share on other sites More sharing options...
BVince Posted October 8, 2010 Share Posted October 8, 2010 Non, désolé, je me suis trompé, il faut faire une injection SQL dans le tables discount et discount_lang : Db::getInstance()->autoExecute( _DB_PREFIX_.'discount', array( 'id_discount_type'=>TON_TYPE_DE_BON_DEVISE_OU_POURCENTAGE, 'id_customer'=>ID_CLIENT, 'name'=>CODE_BON_DE_REDUCTION, 'value'=>VALEUR, 'quantity'=>QUANTITE, 'quantity_per_user'=>QUANTITE_PAR_CLIENT, 'cumulable'=>CUMULABLE, 'cumulable_reduction'=>CUMULABLE_AVEC_REDUCTION, 'date_from'=>DATE_DEBUT_AU_FORMAT_Y-m-d_H:i:s, 'date_to'=>DATE_FIN_AU_FORMAT_Y-m-d_H:i:s, 'minimal'=>MONTANT_MINIMUM, 'active'=>1 ), 'INSERT' ); récupérer l'ID du bon injecté $IdInjecte = Db::getInstance()->Insert_ID(); puis injecter la langue : Db::getInstance()->autoExecute( _DB_PREFIX_.'discount_lang', array( 'id_discount'=>$IdInjecte , 'id_lang'=>ID_DE_LA_LANGUE, 'description'=>DESCRIPTION_DU_BON ), 'INSERT' ); et voilà... Link to comment Share on other sites More sharing options...
Jean-Bruno Posted October 8, 2010 Author Share Posted October 8, 2010 Houlaje met tout ça dans mon fichier order-return.php et je met résolu ? ;-)(Après bien sur avoir remplacé les valeurs derrière les =>)Merci l'ami Link to comment Share on other sites More sharing options...
BVince Posted October 8, 2010 Share Posted October 8, 2010 Non, surtout pas, c'est la trame pour l'injection mais il faut mettre les bonnes données à la place de "TON_TYPE_DE_BON_DEVISE_OU_POURCENTAGE" et tous les autres, il faut tester le retour de paiement pour savoir de quel paiement cela provient, et récupérer quelques informations importantes comme l'ID du client. De plus je suppose que le client ne va pas obtenir un bon de réduction à chaque fois qu'il va payer par CB, donc il va falloir stocker quelque part la donnée comme quoi il a déjà eu le bon de réduction une première fois et ne pas lui en ré-affecter un.....Bref, il y a encore pas mal de boulot.... Link to comment Share on other sites More sharing options...
Jean-Bruno Posted October 8, 2010 Author Share Posted October 8, 2010 Compris, j'avais fait un EDIT en même temps ;-)Je reviens vers toi quand ce sera le bins ;-)Merci l'ami Link to comment Share on other sites More sharing options...
marider Posted October 10, 2010 Share Posted October 10, 2010 Bonjour et au passage je salut BVinceJ'ai une question comment on l'envoi le bon de réduction moi la fonction je la trouve pas ou elle ne fonctionne pas je sais pas mais le bon de réduction que je créer il figure bien dans les bons de réduction dans la parti admin client mais par contre il reçoit rien du tout quand on le créer. J'ai regarder sur le forum et aussi sur ton site Vincent défois que tu aurais créé ce module pour l'envoi de mail automatique suite à un bon de réduction mais non plus tu à une idée ? Link to comment Share on other sites More sharing options...
marider Posted October 10, 2010 Share Posted October 10, 2010 Jean-Bruno j'ai une questionQuand tu créer un bon de réduction, le client que tu à sélectionner dans la gestion des bons de réductions il reçoit un mail ou pas moi il reçoit rien ? 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