製品の表があります。製品はレンタルできます。別のテーブルvalidity_periodsがあります。これがテーブルの構造です。
http://sqlfiddle.com/#!2/c97e3
validity_periods
id description
1 7 Days
2 14 Days
3 21 Days
4 1 Month
products
id : 1
title : Car
description : None
validaity_id : 1
category_id : 1
rent_count : 0
current_status : available
start_date : 0000-00-00 00:00:00
end_date : 0000-00-00 00:00:00
今、私は次のことをしています。
ユーザーがこの製品を作成するときに、この製品の最大有効期間を選択するためのドロップダウンを提供します。
ドロップダウンには有効期間が含まれています。そして、validity_idをproductとともに保存します。
誰かがこの製品をレンタルするとき、私はcurrent_statusを利用可能からレンタルに更新します。
IDを取得して現在の日付を検索し、start_dateとend_dateを生成して、製品を更新します。
ここで私は2つのことが必要です
最初に:多くの作業を行うことを目的とした単純な解決策はありますか?単にstart_dateとend_dateを生成するために何かをしますか?必要に応じて、validity_periodsのスキーマを変更できます。
2番目:製品を表示すると、ステータスと残りの日数が表示されます(製品が再びレンタル可能になった後)。
では、どうすればこれら2つのタスクを実行できますか。
製品Carがレンタルされ、現在
id : 1
title : Car
description : None
validaity_id : 1
category_id : 1
rent_count : 1
current_status : rented
start_date : 2012-12-10 01:30:00
end_date : 2012-12-17 06:50:00
次に、この情報を表示する必要があります。
Item : Car
Status : Rented
Rent Count : 1
Remaining : 3 Days 23 Hours