我有一个网站,我正在工作,我需要跟踪有人在结账时支付的价格。
产品定价可以在我无法控制的任何时候进行调整。
最初我设置它,以便我永远不会删除价格,只是使用禁用价格动态计算价格,但我改变了这一点,原因有很多。 (主要是因为开销,但也因为我添加了一个新功能,这意味着计算价格的方式并不理想)
主要目标是网站能够对销售收费进行收费,所以现在我有一套处理跟踪这些数据的发票表,但我意识到它的设置方式有点乱起来。
我想我应该移动数据,以便它处于这样的情况......
目前是这样的 [产品] - [order_products] - [订单]
我会更改它以添加[order_products]上加入的另一个表 - [order_product_prices]
我只是设置它,所以order_products也引用了使用的价格,但网站可以销售跨越多天的事件的门票,并且每个日子都单独出票,所以虽然产品是[event_one]它是价格类似于[event_one_day1],[event_one_day2],[event_one_day3],其中每一天都是单独定价的。
有没有更理想的方式来设置它,或者我的想法是添加新表格,以便根据我的需要设置它?
答案 0 :(得分:0)
如果我说得对,你的价格只在特定时间有效。
所以你需要一个表来存储这些信息。在这种情况下,我建议像这样的表:
product_id price valid_from valid_to
1 14.99 2013-09-07 2013-09-08
1 16.99 2013-09-09 2013-09-10
1 17.99 2013-09-11 2013-09-12
现在您可以通过以下方式查询当前价格:
SELECT PRICE
FROM PRICES
WHERE PRODUCT_ID = %yourproduct%
AND %current_date% BETWEEN VALID_FROM AND VALID_TO
对于发票,我会将付费价格与发票分开存储。这使得发票数据的备份变得更加容易,并且IRS等的访问更加痛苦。