2016-05-04 18 views
0

私はこれについてしばらく考えていましたが、私はまだそれについて最善の方法とは考えていません。店舗で割引を記録する方法は?

+------+-------+---------+-------------+----------------+--------------+--------+ 
| id | name | email | grand-total | shipping-costs | address | status | 
+------+-------+---------+-------------+----------------+--------------+--------+ 
| 4312 | Roger | [email protected] | 5.99  |    1 | 22 Road Lane |  1 | 
+------+-------+---------+-------------+----------------+--------------+--------+ 

そして、そのテーブルにリンクされているがcartテーブルです:

+-----+---------+-----------+---------------+-------+----------+--------+ 
| id | orderID | productID |  name  | price | quantity | status | 
+-----+---------+-----------+---------------+-------+----------+--------+ 
| 234 | 4312 | G55Sd  | Super Product | 5.99 |  1 |  1 | 
+-----+---------+-----------+---------------+-------+----------+--------+ 

このすべてが正しく動作

だから基本的に、私のオンラインショップで私がorderテーブルを持っています。しかし、私は割引を追加したいときに問題が発生します。私は過去の注文を見て、どのような割引が適用されたか、どれくらいのものかを正確に知りたいと思っています。しかし、私はそれをどこで保存するか分かりません。顧客に複数の割引がある場合はどうなりますか?私はordersテーブルに別の列を追加して割引や割引の金額を追加することはできません。

cartテーブルにその注文の行を追加して、マイナスの金額の商品と同じように適用することができると考えていました。私はいくつかのアドバイスをお願いします。

+2

ご注文に応じて別の別の表に割引を保存することができます。 –

+1

すべての割引タイプを保持する新しいテーブル 'discounts'と、特定の順序で1つ以上の割引を適用できる第2テーブル' discounts_to_otders'(多対多)を作成します。 – mitkosoft

+0

私はそれを考えていましたが、そのようなテーブルはどのようにレイアウトされましたか? – Chud37

答えて

1

超過しないように注意してください。ディスクは安いです - 私は注文表とカート表に割引の詳細を保持することを検討します。ビジネスロジックはすべての製品で割引が発生する可能性があり、注文自体は製品ディスカウントの上に割引を持つ可能性があります。

関連する問題