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

Langage PHP Discussion :

Modéliser un panier de produits


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2014
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bulgarie

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 30
    Points : 33
    Points
    33
    Par défaut Modéliser un panier de produits
    Bonjour,

    Je cherche à modéliser proprement un site de e-commerce.

    J'ai actuellement une classe Produit qui indique les détails d'un produit (idProduit, nom, description, marque) et de ses éventuelles déclinaisons (idDeclinaison, couleur, poids, tarif, stock).
    Ma classe Produit est bien pratique pour afficher la fiche d'un produit et donc de ses déclinaisons disponibles, ainsi que pour lister les articles (et afficher par exemple le prix minimum de ce produit).
    Par contre, je ne peux pas directement utiliser cette classe pour mon panier, puisqu'un produit est en soit quelque chose d'abstrait - il contient plusieurs déclinaisons avec des tarifs différents. C'est bien une déclinaison spécifique du produit que le client peut acheter.

    Le problème est que je ne vois pas bien comment modéliser ça proprement.

    En effet, je peux stocker l'ID de la déclinaison choisie, créer l'object Produit correspondant au produit dont cette déclinaison fait partie, puis afficher les infos à partir de méthodes spécifiques type $produit->GetTarifForDeclinaison($idDeclinaison), mais ça ne me semble un peu fastidieux et pas optimisé puisque j'aurai en mémoire des informations inutiles (les autres déclinaisons).

    Une autre solution serait de créer une classe séparée Article qui elle correspondrait à un article "physique", contenant donc à la fois les infos générales du produit, et les infos de la déclinaison spécifique choisie par le client. Ca me semble plus convivial à utiliser puisqu'il n'y aura que les informations de l'article choisi par le client (donc par exemple $article->getTarif() sera suffisant), mais j'ai peur que ça soit un peu redondant par rapport à ma classe Produit, puisque les deux représentent en soit le même objet, mais de façon différente...

    Qu'en pensez-vous?

    Merci d'avance!

  2. #2
    Membre émérite
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Points : 2 522
    Points
    2 522
    Par défaut
    Pour avoir travaillé sur une gestion commerciale il y a quelques années, je peux dire que la partie définition de l'article était décorellée de la notion de tarif. En effet le même article peut avoir des typologies de tarif différentes selon qu'on le vend à Pierre à Paul ou à Jacques en France ou à l'étranger, etc...
    Pour le stock c'est pareil. Pour un article tu peux avoir du stock disponible à la vente, du stock bloqué, du stock réservé, etc... Ensuite en fonction de ton activité tes articles peuvent être gérés avec un lot auquel cas il peut être intéressant de connaître son stock par lot voire même par date de péremption. Par exemple si tu vends des yaourts c'est peut-être bien de savoir ce qui est vendable et ce qui ne l'est plus afin de ne pas le proposer à la vente. En tous cas avoir le stock au niveau de la fiche article ou de ses déclinaisons ne fonctionnera que pour des activités très simples.
    Cela ne sert à rien d'optimiser quelque chose qui ne fonctionne pas.

    Mon site : www.emmella.fr

    Je recherche le manuel de l'Olivetti Logos 80B.

Discussions similaires

  1. [AC-2007] Modélisation bdd gestion de produits
    Par triaguae dans le forum Modélisation
    Réponses: 15
    Dernier message: 05/12/2012, 13h30
  2. Création d'un panier de produit avec Symfony
    Par Raiden972 dans le forum Autres langages pour le Web
    Réponses: 0
    Dernier message: 09/06/2010, 19h05
  3. Modélisation des commandes et produits
    Par 0coco0 dans le forum Diagrammes de Classes
    Réponses: 2
    Dernier message: 02/09/2008, 08h36
  4. [MCD]Comment modéliser un panier
    Par bdaboah dans le forum Schéma
    Réponses: 6
    Dernier message: 02/08/2007, 11h21
  5. Panier de produits !
    Par Seth77 dans le forum Langage
    Réponses: 3
    Dernier message: 05/07/2006, 09h57

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