我將很快提供一些基於Web的服務,並且我正在開發訂閱系統。用戶每月支付(或者可以提前幾個月支付),但我提供不同的軟件包。不同的軟件包允許他們每天使用系統x分鐘。訂閱套餐並存儲它們
因此,例如
包一個讓他們使用它一天
套餐二讓他們使用它一天
套餐三讓他們使用它一天
等等。這些都是每月。
我現在的方法可以讓我設置他們的包和他們的訂閱何時結束。我想改變它,以便他們可以有多個包。
我的問題是這樣的:
他們買一包。他們使用它兩天,並決定他們想升級到另一個軟件包。他們購買第二包。現在他們有2個月的時間(減去兩天),但是它將包裝二。從本質上來說,他們僅僅爲套餐一的價格獲得了兩個月的套餐。
所以我的想法是這樣的:
我可以單獨存儲每一筆交易,並在當包結束設定每筆交易和封裝它。然後我可以SELECT `package` FROM `packages` WHERE `status`='active????' ORDER BY `package` DESC LIMIT 1;
這將允許我選擇他們的高級包,並給他們,直到那個變得不活動,然後恢復到較小的包。問題是這個`status`='active'
沒有跟蹤日期。我怎樣才能正確地做到這一點?