Edit File: OrdersResource.php
<?php namespace App\Http\Resources\Api\Delegate\Orders; use App\Enums\OrderStatusEnum; use App\Http\Resources\Api\Provider\ProductImageResource; use Carbon\Carbon; use Illuminate\Http\Resources\Json\JsonResource; class OrdersResource extends JsonResource { public function toArray($request) { return [ 'id' => $this?->id, 'order_number' => $this?->order_num, 'final_total' => number_format($this?->final_total, 2), 'status' => $this?->getStatus(), 'order_call_type' => 'order', 'notes' => $this?->notes, 'images' => $this->productImages ->groupBy('product_id') ->map(function ($images) { $firstImage = $images->first(); return $firstImage ? new ProductImageResource($firstImage) : null; })->filter()->values(), 'delegate_id' => $this?->delegate_id, 'created_at' => Carbon::parse($this?->created_at)->diffForHumans(), ]; } protected function getStatus() { $isIgnored = auth()->user()->ignoredOrders()->where('order_id', $this->id)->exists(); return $isIgnored ? [ 'value' => OrderStatusEnum::Cancelled->value, 'slug' => OrderStatusEnum::from((int)OrderStatusEnum::Cancelled->value)->name, 'text' => __('order.status.' . OrderStatusEnum::from((int)OrderStatusEnum::Cancelled->value)->name), ] : $this->status; } }
Back to File Manager