¨4.0.1¨

This commit is contained in:
¨NW¨
2023-12-03 14:07:47 +00:00
parent c08b36d1b6
commit f35052522d
1112 changed files with 43019 additions and 24987 deletions

View File

@@ -0,0 +1,40 @@
<?php
namespace Modules\Product\Repositories;
use Modules\Product\Entities\Product;
class ProductRepository
{
public static function list($ids = [])
{
return Product::select('id')
->withName()
->whereIn('id', $ids)
->when(!empty($ids), function ($query) use ($ids) {
$idsString = collect($ids)
->filter()
->implode(',');
$query->orderByRaw("FIELD(id, {$idsString})");
})
->get()
->mapWithKeys(function ($product) {
return [$product->id => $product->name];
});
}
public static function findBySlug($slug)//: Model|Builder
{
$product = Product::with(['variations', 'variants', 'categories', 'tags', 'attributes.attribute.attributeSet', 'options', 'files', 'relatedProducts', 'upSellProducts'])
->where('slug', $slug)
->firstOrFail();
if (request()->query('variant') && !$product->variant) {
abort(404);
}
return $product;
}
}