Jump to content

Scripter la création d'une commande


Recommended Posts

Bonjour,

 

 

Je cherche depuis un petit moment à scripter la création d'une commande Prestashop pour faire en sorte qu'en rentrant un code sur une page de mon site, une commande prédéfinie ce créée pour le client ayant rentrer le code en question. (Cela concerne un projet de produits cadeaux plutôt que des montants cadeaux)

 

Le problème est que cela ne semble possible qu'en passant par le webservice de Prestashop ou par l'écriture directement dans la BDD (ce qui est apparemment assez compliquer à cause du nombre de table à update).

 

Y a t-il quelqu'un pouvant me conseiller sur la marche à suivre ?

 

 

Bonne journée !

 

Cordialement, Anthony

Link to comment
Share on other sites

Bonjour,

 

En fonction de ce que vous souhaitez le développement n'est pas le même.

 

Créer un panier pour le client :

En fonction du code saisi, différents produits sont ajoutés au panier du client
A sa charge ensuite de renseigner ses adresses de livraison et de facturation, son mode de livraison et de réaliser le paiement de sa commande

 

Créer une commande pour le client :
En fonction du code saisi une commande est créé pour le client.
Dans ce cas il est nécessaire de gérer dans le script le renseignement des adresses de livraison et de facturation, le mode de livraison.
Tout comme le mode de paiement.

Link to comment
Share on other sites

D'accord c'est bien ce que je pensais, pour le moment je suis partis dans l'optique de créer un panier pour le client pour ensuite laisser Prestashop gérer tous ce qui est paiement et adresse de livraison.

 

C'était purement de la curiosité, ça aurait pu être intéressant qu'une méthode de création de commande (avec ajout du statut ect...) soit implémenter de base dans Prestashop ^^

 

Je vous remercie d'avoir éclairer ma lanterne ;)

 

Tant que j'y suis, pour la création d'un panier pour le client comment vous y prendriez-vous ? J'ai vu des développeurs utiliser des méthodes en Ajax et d'autres passer par l'Objet Cart de Prestashop, du coup quelle démarche est la meilleur ?

 

Bonne journée !

 

 

Cordialement, Anthony.

Link to comment
Share on other sites

Bonjour, 

 

Si j'ai bien compris le besoin, tu veux qu'un client disposant d'un code spécifique qu'il puisse le saisir quelque part puis il va bénéficier d'un produit cadeau 

 

La question, est ce qu'on saisissant ce code la commande se crée automatiquement avec le statut paiement accepté, 

 

Là vous avez 2 approches, soit passer par le panier, puis laisser le client suivre le processus de la commande, pour qu'il puisse rentrer l'adresse et choisir le mode de livraison si y'aura plusieurs ( là faut penser aux mode de livraison avec des frais supplémentaire qui vont affecter le montant du panier, sauf si les frais sont offerts), dans ce cas là le développement n'est pas très compliqué que des vérifications tout au long du processus en limitant le nombre de produit dans le panier, 

 

2eme solution, c'est quand le client saisit son code, tu vérifies s'il dispose d'une adresse, sinon lui afficher un popup pour qu'il ajoute son adresse, puis le mode de livraison et le reste se fait par code, l'ajout du produit au panier, associer l'adresse, le mode de livraison, le mode de paiement, (là aussi il faudra créer un mode de paiement rien de compliqué)

 

Quelle sera la logique pour le choix du produit ?
Link to comment
Share on other sites

Salut,
 

Tant que j'y suis, pour la création d'un panier pour le client comment vous y prendriez-vous ? J'ai vu des développeurs utiliser des méthodes en Ajax et d'autres passer par l'Objet Cart de Prestashop, du coup quelle démarche est la meilleur ?

 

Ajax: c'est le client qui fait les requêtes.

Object Cart :  le traitement est fait sur le serveur.

C'est donc pas du tout la même approche, et certaines limites peuvent se poser.

 

 

 

En théorie, tu devrais utiliser une interface comme le service web ou l'api ajax. Elles sont sensées ne pas casser d'une version de Ps à l'autre (à défaut, les changements devrait être bien documentés). Tu aurais un niveau d'abstraction plus élevé  et un code plus facile à gérer et à maintenir.

Mais c'est la théorie :ph34r:

Edited by hpar (see edit history)
Link to comment
Share on other sites

Salut,

 

@Deithso J'ai finis par choisir l'ajout au panier qui sera à mon sens plus propre et plus logique pour le client. Le choix du produit ce fera avant l'entrée du code en réalité ^^ Chaque code généré sera lié à un produit sélectionné par le client qui offre le cadeau. D'où mon choix de faire un simple ajout au panier à l'activation du code par le bénéficiaire du cadeau.

 

@hpar Dans le cas où je passe par l'Object Cart, une redirection sur la page de confirmation du panier fonctionnera comme si la requête ajax avait était effectuée ? (Panier plein, avec produit affiché et montant update, prêt à être payé)

 

Désolé si mes questions paraissent un peu banales/simplettes, il s'avère que je suis stagiaire dans une entreprise qui ne m'avait pas précisé que je travaillerai sur Prestashop. Et bien évidemment je n'ai jamais bosser dessus, du coup j'apprends sur le tas ;)

 

Une autre question : Le client qui offrira le cadeau va rentrer quelques informations concernant le bénéficiaire du cadeau (adresses mail, carte cadeau avec message, ect...) mais ces informations seront rentrées avant paiement du cadeau (et donc génération du code et ajout des informations lié au cadeau dans la BDD). Du coup, comme je généré le code via le hookOrderStatusUpdate après le paiement géré par les voies naturelles de PS, je cherchais un moyen de faire transité ces infos jusqu'à l’exécution du hook sans avoir à géré toute la phase de paiement, du choix du transporteur ect... Une idée ?

 

Bonne journée !

 

 

Cordialement, Anthony.

Link to comment
Share on other sites

Une autre question : Le client qui offrira le cadeau va rentrer quelques informations concernant le bénéficiaire du cadeau (adresses mail, carte cadeau avec message, ect...) mais ces informations seront rentrées avant paiement du cadeau (et donc génération du code et ajout des informations lié au cadeau dans la BDD). Du coup, comme je généré le code via le hookOrderStatusUpdate après le paiement géré par les voies naturelles de PS, je cherchais un moyen de faire transité ces infos jusqu'à l’exécution du hook sans avoir à géré toute la phase de paiement, du choix du transporteur ect... Une idée ?

 

 

Tu peux stocker ces informations dans une table qui sera reliée à ton identifiant panier.

Celui-ci te permettra ensuite de faire le lien entre tes informations et la commande qui vient d'être passée.

Link to comment
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...