File: /mnt/data/ghayatcom/ghayatcom-api/app/Http/Resources/ChatCollection.php
<?php
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\ResourceCollection;
use App\User;
class ChatCollection extends ResourceCollection
{
/**
* Transform the resource collection into an array.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
private $code;
public function __construct($resource, $code = 200)
{
parent::__construct($resource);
$this->code = $code;
}
public function toArray($request)
{
return [
'code' => $this->code,
'message' => [__('digimed_validation.success_response.data_fetch_success')],
'data' => [
'list' => $this->collection->map(function ($item) {
/**
* @var object $item
*/
$RandomLibrary = new \App\Library\RandomLibrary;
return [
'id' => $item->id,
'appointment_id' => $item->appointment_id,
'sender_id' => $item->sender_id,
'sender_name' => trim($item->sender->first_name.' '.$item->sender->last_name),
'sender_image' => $item->sender->profile_image,
'recipient_id' => $item->recipient_id,
'recipient_name' => trim($item->recipient->first_name.' '.$item->recipient->last_name),
'recipient_image' => $item->recipient->profile_image,
'message' => $item->message,
'file_path' => $item->getUserAttachment(),
'file_attach' => $item->getFileAttach(),
'created_at' => $item->created_at,
];
})
]
];
}
public function withResponse($request, $response)
{
/** @var array $jsonResponse */
$jsonResponse = json_decode($response->getContent(), true);
unset($jsonResponse['links']);
$response->setContent(json_encode($jsonResponse));
}
}