refactor: replace custom CRM with Monica fork
Some checks failed
Build & Push Monica Image to Gitea Registry / build-and-push (push) Failing after 9s
Some checks failed
Build & Push Monica Image to Gitea Registry / build-and-push (push) Failing after 9s
This commit is contained in:
40
app/Http/Resources/Conversation/Conversation.php
Normal file
40
app/Http/Resources/Conversation/Conversation.php
Normal file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Resources\Conversation;
|
||||
|
||||
use App\Helpers\DateHelper;
|
||||
use Illuminate\Http\Resources\Json\JsonResource;
|
||||
use App\Http\Resources\Conversation\Message as MessageResource;
|
||||
use App\Http\Resources\Contact\ContactShort as ContactShortResource;
|
||||
use App\Http\Resources\Settings\ContactFieldType\ContactFieldType as ContactFieldTypeResource;
|
||||
|
||||
/**
|
||||
* @extends JsonResource<\App\Models\Contact\Conversation>
|
||||
*/
|
||||
class Conversation extends JsonResource
|
||||
{
|
||||
/**
|
||||
* Transform the resource into an array.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array|\Illuminate\Contracts\Support\Arrayable|\JsonSerializable
|
||||
*/
|
||||
public function toArray($request)
|
||||
{
|
||||
return [
|
||||
'id' => $this->id,
|
||||
'uuid' => $this->uuid,
|
||||
'object' => 'conversation',
|
||||
'happened_at' => DateHelper::getTimestamp($this->happened_at),
|
||||
'messages' => MessageResource::collection($this->messages),
|
||||
'contact_field_type' => new ContactFieldTypeResource($this->contactFieldType),
|
||||
'url' => route('api.conversation', $this->id),
|
||||
'account' => [
|
||||
'id' => $this->account_id,
|
||||
],
|
||||
'contact' => new ContactShortResource($this->contact),
|
||||
'created_at' => DateHelper::getTimestamp($this->created_at),
|
||||
'updated_at' => DateHelper::getTimestamp($this->updated_at),
|
||||
];
|
||||
}
|
||||
}
|
||||
40
app/Http/Resources/Conversation/Message.php
Normal file
40
app/Http/Resources/Conversation/Message.php
Normal file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Resources\Conversation;
|
||||
|
||||
use App\Helpers\DateHelper;
|
||||
use Illuminate\Http\Resources\Json\JsonResource;
|
||||
use App\Http\Resources\Contact\ContactShort as ContactShortResource;
|
||||
|
||||
/**
|
||||
* @extends JsonResource<\App\Models\Contact\Message>
|
||||
*/
|
||||
class Message extends JsonResource
|
||||
{
|
||||
/**
|
||||
* Transform the resource into an array.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array|\Illuminate\Contracts\Support\Arrayable|\JsonSerializable
|
||||
*/
|
||||
public function toArray($request)
|
||||
{
|
||||
return [
|
||||
'id' => $this->id,
|
||||
'uuid' => $this->uuid,
|
||||
'object' => 'message',
|
||||
'content' => $this->content,
|
||||
'written_at' => DateHelper::getTimestamp($this->written_at),
|
||||
'written_by_me' => (bool) $this->written_by_me,
|
||||
'account' => [
|
||||
'id' => $this->account_id,
|
||||
],
|
||||
'contact' => new ContactShortResource($this->contact),
|
||||
'conversation' => [
|
||||
'id' => $this->conversation->id,
|
||||
],
|
||||
'created_at' => DateHelper::getTimestamp($this->created_at),
|
||||
'updated_at' => DateHelper::getTimestamp($this->updated_at),
|
||||
];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user