zend-blog-3-backend

Форк
0
/
TelegramUpdateTransformer.php 
43 строки · 1.1 Кб
1
<?php
2

3
namespace App\API\Transformers;
4

5
use App\Entity\TelegramUpdate;
6
use League\Fractal\Resource\ResourceInterface;
7

8
class TelegramUpdateTransformer extends BaseTransformer
9
{
10
    /**
11
     * @var array
12
     */
13
    protected array $availableIncludes = [
14
        'telegramUser',
15
    ];
16

17
    public function transform(TelegramUpdate $item): array
18
    {
19
        return [
20
            'id' => $item->getId(),
21
            'user' => $item->getTelegramUser() ? $item->getTelegramUser()->getId() : null,
22
            'message' => $item->getTextMessage(),
23
            'createdAt' => $this->dateTimeToISO($item->getTimeCreated()),
24
            'replyId' => 0,
25
        ];
26
    }
27

28
    /**
29
     * @param TelegramUpdate $entity
30
     *
31
     * @return ResourceInterface
32
     */
33
    public function includeTelegramUser(TelegramUpdate $entity): ResourceInterface
34
    {
35
        $tgUser = $entity->getTelegramUser();
36
        $items = [];
37
        if ($tgUser) {
38
            $items = [$tgUser];
39
        }
40

41
        return $this->collection($items, new TelegramUserTransformer(), 'telegramUsers');
42
    }
43
}
44

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.