File: D:/HostingSpaces/SBogers10/shop.komma.nl/app/Orders/Resources/OrderedProductGroup.php
<?php
namespace App\Orders\Resources;
use App\Products\Product\ProductResource;
use App\Products\ProductGroup\ProductGroupResource;
use Illuminate\Http\Resources\Json\Resource;
use Komma\KMS\Globalization\RegionInfoInterface;
class OrderedProductGroup extends Resource
{
/** @var RegionInfoInterface */
private $regionInfo;
/**
* Order constructor.
* @param $resource
*/
public function __construct($resource)
{
$this->regionInfo = app(RegionInfoInterface::class);
parent::__construct($resource);
}
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
public function toArray($request)
{
return [
'id' => $this->id,
'price' => $this->price,
'price_formatted' => $this->regionInfo->getNumberFormat()->centsToCurrency($this->price, true, true),
'active' => $this->active,
'quantity' => $this->quantity,
'discount' => $this->discount,
'productGroup' => $this->whenLoaded('productGroup', new ProductGroupResource($this->productGroup)),
'products' => ProductResource::collection($this->whenLoaded('products')),
'orderedProducts' => OrderedProduct::collection($this->whenLoaded('orderedProducts'))
];
}
}