Bonjour,
Dans le cadre d'un univers qui devra a terme permettre de calculer le prix de vente d'une série d'objets donnés pour un client donné, j'ai un probleme pour creer unprix tarif comme il faut
Nous utilisons plusieurs tarifs. Pour chaque client, il y un seul tarif
Un tarif peut avoir un tarif de référence, c'est a dire que si on a pas encodé de prix pour cet article dans ce tarif la, on prend a la place le prix de cet article dans le tarif de référence
Ex: imaginons que
-J'ai un tarif Tarifbase et un tarif Tarifexport qui utilise Tarifbase comme tarif de référence
-J'ai un ClientA qui a comme tarif Tarifexport
-J'ai un ClientB qui a comme tarif Tarifbase
-J'ai un article1 qui a un prix dans Tarifexport (20€) et un prix dans Tarifbase (15€)
-J'ai un article2 qui a un prix dans Tarifbase (30€) mais pas de prix dans Tarifexport
Si ClientA commande article1, il va le payer 20€ (l'article existe dans Tarifexport, donc on prend ce prix la)
Si ClientB commande article1, il va le payer 15€ (l'article existe dans Tarifbase , donc on prend ce prix la)
Si ClientA commande article2, il va le payer 30€ (l'article n'existe pas dans Tarifexport, donc on prend va voir dans Tarifbase et on prend ce prix la)
Si ClientB commande article2, il va le payer 30€ (l'article existe dans Tarifbase , donc on prend ce prix la)
Voilà, ca, c'est pour le principe.
Au niveau table j'ai
-une table client qui contient les ID client et le nom du tarif utilisé
-une table tarif qui contient les noms de toute les tarifs et leur tarif de référence s'il y en a un
-une table article qui contient les ID d'article, le nom du tarif et le prix tarif
Et je cherche a constuire de quoi, pour un client donné et un article donné, trouver le prix tarif
Actuellement j'ai
(table article) n - 1 (table tarif) 1 -n (table client)
en utilisant le nom du tarif pour faire la jointure mais je ne suis pas convaincue (je vais avoir des probleme de chasm trap non si je garde cette structure? d'un autre coté, si je lie la table article a la table client, je vais avoir du n-n en cardinalité et ca ne me semble pas etre une bonne idée non plus)
Ca permet de récuperer sans probleme un prix tarif s'il existe dans le tarif du client mais il faut ajouter le coup du tarif de référence qui sert en back up et je ne m'en sort pas
Est-ce que quelqu'un a une suggestion?
Partager