سلام وقت بخیر دوستان
من یه سایتی دارم طراحی میکنم که توش یه سری امکانات هست که میخوام به صورت ماهانه شش ماهه یا سالانه اینارو بفروشم.
هر خدمتی که تو سایت هست یک ماهه و شش ماه و سه ساله قیمت گذاری میشه. من یه جدول خدمت دارم که سه فیلد برای تعیین قیمت اشتراکهاشون ایجاد کردم. جداول کاربرانمم مشخصه و شناسه اصلی برای شناسایشون شماره تلفنشونه.
کاربر وارد صفحه خدمات که میشه میتونه به سبد خریدش اضافه کنه. اینایی که کاربر انتخاب میکنه چه جداولی نیازه براشون غیر از جدول کاربر و محصول؟
چه کنترل هایی باید انجام بدم. مثلا قبلا اشتراکی خریده و دوباره اون اشتراک رو میخره ، اشتراک قبلیش باید ویرایش بشه؟!
سلام وقت بخیر
دوست عزیزم برای ایجاد اشتراک میتونید یه جدول بزنید به اسم مثلا vip خوب بعد اونجا یوزر آیدی رو بگیره و ایدی جدول اشتراک رو و قسمت status زارید برای وضعیت اشتراک که مثلا میتونه enum باشه و مقدار های expire ,active و .. رو بگیره وقتی کاربر اشتراک خرید توی این جدول یه ستر ایجاد بشه با مشخصات کاربر که انتخاب کرده مثلا این یوزر کدوم اشتراک رو انتخاب کرده ایدیش بره توی جدول و اون اشتراکی که انتخاب کرده چن ماهه هست و status رو اول کار باید active بزاری اما مثلا اگه اشتراک یک ماهه خرید باید هی چک کنی اگه یک ماه گذشت این status برابر با expire بشه و به کاربر بگه کاربر عزیز اشتراک شما به پایان رسیده لطفا تمدید کنید و اگه اشتراک دوباره گرفت فقط بیاد ایدی اشتراک رو آپدیت کنه به اشتراک جدید و status رو به حالت active تغییر بده
یک جدول میانی ایجاد میکنید بین کاربر و پکیج
درون جدول ای دی کاربر که خرید انجام داده - ایدی پکیج خریداری شده - تاریخ اکسپایر که از دوریشن پکیج مربوطه استخراج میکنید و با زمان ثبت نهایی جمع میکنید و زمان اکسپایر رو ثبت میکنید .
اگر هم دوست داشتید میتونید فیلد وضعیت هم اظافه کنید که وضعیت پرداخت رو هم ثبت کنید یا از جدول پیمنت مربوط به سفارش استخارج کنید .
فقط اگر اینجاثبت کنید درون فراخوانی یک کوئری استفاده میشه از پیمنت دوتا کوئری در سیستم های بزرگ تفاوت سرعت قابل مشاهده خواهد بود در میزان کوئری کمتر
و در اخر هم هنگام فراخوانی دستور شرط where قرار بدید و چک کنید اکسپایر تایم کوچکتر یا برابر دیت نو تاریخ امروز نباشد .
اگر بود پکیج اکسپایر شده
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟