orwell Posted August 6, 2012 Share Posted August 6, 2012 Bonjour, Je voudrais calculer automatiquement mes prix de vente en fonction d'un coefficient. J'ai besoin de cette fonction car un de mes fournisseur met à jours ses tarifs assez régulièrement. Je vais donc créer une tache CRON pour récupérer les nouveaux prix d'achat et ensuite calculer le prix de vente en fonction d'un coefficient enregistré en base de données. Jusque là, tout va bien. Par contre j'aimerai ajouter à la page de gestion des produits du backoffice un champ permettant de mettre à jour le coefficient d'un produit. Une idée sur comment ajouter ce champ sachant qu'à ma connaissance il n'y a pas de Hook sur la page d'admin d'un produit? Link to comment Share on other sites More sharing options...
bad ****** f***** Posted August 6, 2012 Share Posted August 6, 2012 Pas mal ton idée, c'est simple, bon en gros si je comprends en fonction du prix tu auras un coef multiplicateur qui fera varier le prix ?? Peut être simplement un script php qui viens éditer ta table product tout simplement. Enfin c'est moin compliqué que d'aller bidouiller le coeur de presta Link to comment Share on other sites More sharing options...
orwell Posted August 6, 2012 Author Share Posted August 6, 2012 Oui pour mettre à jour les prix en fonction des coef ça pose pas de soucis. chaque nuit, je vais récupérer les prix d'achat chez mon fournisseur et je mets mes prix à jour. Par contre je voudrais pouvoir éditer la valeur du coefficient pour chaque produit... donc pour ça il faut que j'ajoute un champ à l'admin des produits et que j'ajoute les traitements en fonction sur la class Product... Link to comment Share on other sites More sharing options...
orwell Posted August 7, 2012 Author Share Posted August 7, 2012 Bon pour simplifier la chose et permettre d'avoir cette fonctionnalité sous forme de module, j'ai décidé de gérer les coefficients produit sur une page dédiée de l'administration. Pour voir / modifier un coef, on entre l'ID du produit. Si ça intéresse des gens je pourrais éventuellement distribuer ce module ne fois testé et approuvé. Link to comment Share on other sites More sharing options...
franckm1000 Posted August 8, 2012 Share Posted August 8, 2012 (edited) Ajouter un champs n'est pas très compliqué. Il faut intervenir en gros sur 2 fichiers: La classe classes/Product.php et le fichier en BO: tabs/adminproduct.php Tu commences par créer un nouveau champs dans la table ps_product_lang appelé mavariable par exemple. Ensuite dans le fichier de la classe: 1. Tu définis ta variable: public $mavariable 2. Dans la variable $fieldsValidate tu définis ta nouvelle variable par exemple 'mavariable' =>'isUnsignedFloat' 3. Dans la fonction getFields() tu rajoutes $fields['mavariable'] = (float)($this->mavariable); Il ne reste plus qu'à créer le champs dans le BO. où tu veux voir apparaître ton champs input tu rajoutes: <input name="mavariable" type="text" value="'.htmlentities($this->getFieldValue($obj, 'mavariable') /> Edited August 8, 2012 by franckm1000 (see edit history) Link to comment Share on other sites More sharing options...
orwell Posted August 8, 2012 Author Share Posted August 8, 2012 Merci pour le tuyau. J'hésite encore entre les 2 solutions. La tienne est plus logique pour l'utilisateur mais nécessite la modification de fichiers core de Prestashop, l'autre solution est plus "propre" et permet de proposer cette fonctionnalité en module, mais elle reste moins logique pour l'utilisateur qui doit gérer des infos de prix à 2 endroits différents du BackOffice... Link to comment Share on other sites More sharing options...
hphilg Posted September 8, 2012 Share Posted September 8, 2012 Salut Orwell, Ton sujet m'interesse ! Je cherche aussi à ajouter un champs "coef" dans la fiche produit dans le BO. Je suivrais ce que te propose franckm1000 et contrairement à ce que tu dis, tu dois pouvoir tout faire sans toucher aux fichiers core de prestashop mais plutot en utilisant l'override, je l'ai déjà fait avec la classe "product.php" (grace à l'aide de personne de ce forum! ) et d'apres le lien suivant : http://www.nethercottconstructions.com/en/content/55-overriding-back-office-tabs c'est aussi possible de faire de l'override sur le fichier "adminproduct.php". TIens nous au courant Link to comment Share on other sites More sharing options...
Ali30 Posted January 23, 2013 Share Posted January 23, 2013 Bonjour , J'ai bien suivi votre "tuto" mais je ne trouve pas le fichier adminproduct.php dans le dossier tabs ... Merci 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