ساختار کد تخفیف

3 سال پیش توسط علیرضا جوکار مطرح شد
آفلاین
user-avatar
علیرضا جوکار ( 15819 تجربه )
3 سال پیش
تخصص : web developer

لینک کوتاه اشتراک گذاری

0

با عرض سلام وخسته نباشید خدمت دوستان عزیز
دوستان میخواستم بدونم ساختار و طراحی دیتابیس کد تخفیف به چه صورته؟
رابطه کد تخفیف با محصول و کاربر
تمام حالات رو در نظر بگیرید
میخوام یه کد تخفیف فقط برای یک محصول باشه یا کد تخفیف فقط برای یک کاربر باشه
یا یک کد تخفیف برای همه کاربرا و یا همه محصولات و...
و همچنین بتونم تعداد دفعات مجاز هم بزارم روش
مثلا فقط یکبار از فلان کد تخفیف استفاده بشه

آفلاین
user-avatar
developer ( 37592 تجربه )
3 سال پیش
تخصص : برنامه نویس

لینک کوتاه اشتراک گذاری

1

بنظرم دو تا فیلد بذار مثلا user_id اگه برای همه هست user_id خالی باشه، ولی اگه واسه فرد خاصی هست آیدی رو بذار توش،
و product_id اگه برای همه محصولات هست خالی باشه و اگه واسه یک محصول خاص هست آیدی محصول رو بذار توش
و توی کنترلر شرط بذار اگه خالی بودن اینا بره واسه همه اجرا کنه
واسه تعداد دفعات هم یک جدول ثانویه درست کن هربار فرد استفاده کرد با رابطه many to many ثبت بشه

آفلاین
user-avatar
علیرضا جوکار ( 15819 تجربه )
3 سال پیش
تخصص : web developer

لینک کوتاه اشتراک گذاری

0

@alirezasafdari
با سلام راه حل خوبی بود ولی اگه مثلا میخواستیم به 50 تا محصول این کد تخفیف رو اختصاص بدیم اون موقع تا کد تخفیف رو وارد میکنه باید ای دی اون محصول رو بفرستم بصورت ای جکس سمت سرور و سمت سرور چک کنم که ایا ای دی این محصول جزو اون تخفیف هست یا نه یعنی یه حلقه که حداکثر 50 بار چک میشه ، این یکم درست نیست و سرعت خیلی میاد پایین(50 تا مثاله در داده های بیشتر خب افت شدید تری هست)
مثلا اگه یه کد تخفیف داشته باشیم به نام test که فیلد product_id شامل یه آرایه یا یه آبجکت باشه بصورت زیر مثلا:
[11,15,18,14,13,141,1002,155,177,166,155,188,177]
من باید بیام ای دی محصولی که داخلش کد تخفیف رو وارد کرده از بین این ارایه پیدا کنم و پردازشش یکم طول میکشه دیگه درسته؟
فکرشم کردم اگر جدول واسط بزارم افزونگی داده خیلی زیاد میشه
مثلا اینجوری میشه که:

discount_id          product_id
 1                            11
 1                            15
 1                            18
 1                            14
 1                            13
 1                            141

بازم اینجوری بهش نمیاد درست باشه

آفلاین
user-avatar
developer ( 37592 تجربه )
3 سال پیش
تخصص : برنامه نویس

لینک کوتاه اشتراک گذاری

0

@alirezajokar1
خب در پروژه های واقعی اگه بخوای مثلا به 50 تا محصول تخفیف بدی اینها یک شباهتی با هم دارن، میتونی به محصولاتت یک برچسب بزنی مثلا این 50 تا محصول فلان برچسب رو دارن، و کد تخفیف رو به اون برچسب بدی و موقع ایجکس فقط کافیه چک کنی آیا اون محصول اون برچسب رو داره یا نه و نیازی به 50 بار چک کردن هم نیست

برای ارسال پاسخ لازم است، ابتدا وارد سایت شوید.