با سلام دوستان عزیزم
بنده برای صفحه محصولاتم میخوام چندتا فیلتر بذارم :
جدیدترین
قدیمی ترین
کمترین قیمت
بیشترین قیمت
کمترین فروش
بیشترین فروش
جدیدترین و قدیمی ترین که با یک orderBy نمایش داده میشه
ولی مابقی رو نمی دونم چطور نمایش بدم
مثلا محصولاتی که بیشترین فروش رو دارن
ممنون میشم مثل همیشه دوستان راهنمایی کنن
@TimeRunner2359
@ashkannazari248
@masoudproton
@milad
@ali.bayat
@Alimotreb
@hesammousavi
@endworld
@code2code
@khanzadimahdi
@info.aligraph
@SeyedMH.Mosavi
داداش چون هر محصول متغییر هست، قیمت ها داخل جدول دیگری ذخیره میشن
برای فروش هم اطلاعات سفارشات و پرداختی ها ذخیره میشه
من مشکلم اینجاست که: الان مثلا داخل این صفحه که محصولات نمایش داده میشه، اگر بخوام بر حسب فروش فیلترشون کنم چکار کنم ؟
شاید پاسخ شما همینجا باشد
سلام.
.شما لازم هستش یک رابطه چند به چند بین سفارشات و محصولات ایجاد کنید و یک فیلد برای تعداد فروش یا حالا قیمت فروش در هر سفارش برای هر محصول ایجاد کنید و بر اساس اون sum کنید که من بر اساس تعداد فروش براتون کد زیر رو قرار دادم و با جدول pivot کارتون رو انجام بدید.متاسفانه برای elequent در مورد این مورد چیز بدرد بخوری وجود نداره و از querybuilder باید استفاده کنید و کد زیر رو بزنید مثلش رو :
$order_product = DB::table('order_product')
->select('product_id', DB::raw('sum(product_number) as number'))
->groupBy('product_id');
$products = DB::table('products')
->joinSub($order_product, 'order_product', function ($join) {
$join->on('products.id', '=', 'order_product.product_id');
})->get();