zend-blog-3-backend

Форк
0
34 строки · 987.0 Байт
1
<?php
2

3
namespace App\API\Transformers;
4

5
use App\DTO\UserDTO;
6
use App\Entity\User;
7

8
class UserTransformer extends BaseTransformer
9
{
10
    public function transform(User $item): array
11
    {
12
        return [
13
            'id' => $item->getId(),
14
            'username' => $item->getUsername(),
15
            'displayName' => $item->getDisplayName(),
16
            'email' => $item->getEmail(),
17
            'role' => $item->getUserType(),
18
            'imageHash' => $item->getAvatarHash(),
19
            'isMale' => $item->getGender() === User::MALE,
20
            'createdAt' => $this->dateTimeToISO($item->getTimeCreated()),
21
        ];
22
    }
23

24
    public static function reverseTransform(User $entity, UserDTO $data)
25
    {
26
        $entity
27
            ->setUsername($data['username'])
28
            ->setEmail($data['email'])
29
            ->setUserType($data['role'])
30
            ->setGender($data['isMale'] ? User::MALE : User::FEMALE)
31
            ->setDisplayName($data['displayName'])
32
        ;
33
    }
34
}
35

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

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

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

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