42 lines
1.4 KiB
PHP
42 lines
1.4 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Resources\V2;
|
|
|
|
use Illuminate\Http\Resources\Json\ResourceCollection;
|
|
|
|
class ProductMiniCollection extends ResourceCollection
|
|
{
|
|
public function toArray($request)
|
|
{
|
|
return [
|
|
'data' => $this->collection->map(function ($data) {
|
|
$wholesale_product =
|
|
($data->wholesale_product == 1) ? true : false;
|
|
return [
|
|
'id' => $data->id,
|
|
'name' => $data->getTranslation('name'),
|
|
'thumbnail_image' => uploaded_asset($data->thumbnail_img),
|
|
'has_discount' => home_base_price($data, false) != home_discounted_base_price($data, false),
|
|
'discount' => "-" . discount_in_percentage($data) . "%",
|
|
'stroked_price' => home_base_price($data),
|
|
'main_price' => home_discounted_base_price($data),
|
|
'rating' => (float) $data->rating,
|
|
'sales' => (int) $data->num_of_sale,
|
|
'is_wholesale' => $wholesale_product,
|
|
'links' => [
|
|
'details' => route('products.show', $data->id),
|
|
]
|
|
];
|
|
})
|
|
];
|
|
}
|
|
|
|
public function with($request)
|
|
{
|
|
return [
|
|
'success' => true,
|
|
'status' => 200
|
|
];
|
|
}
|
|
}
|