%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /var/www/html/klinisol/klinisol-api/app/Transformers/
Upload File :
Create Path :
Current File : /var/www/html/klinisol/klinisol-api/app/Transformers/DoctorTransformer.php

<?php

namespace App\Transformers;

use App\Models\Doctor;

class DoctorTransformer extends BaseTransformer
{
    /**
     * @var string[]
     */
    protected $availableIncludes = [
        'hospital',
        'protocols',
    ];

    /**
     * @var string[]
     */
    protected $defaultIncludes = [
        'hospital',
    ];

    /**
     * @param Doctor $doctor
     * @return \League\Fractal\Resource\Item
     */
    public function includeHospital(Doctor $doctor)
    {
        return $this->item($doctor->hospital(), new HospitalTransformer(), 'hospital');
    }

    /**
     * @param Doctor $doctor
     * @return \League\Fractal\Resource\Collection
     */
    public function includeProtocols(Doctor $doctor)
    {
        return $this->collection($doctor->protocols, new ProtocolTransformer(), 'protocols');
    }

    /**
     * @param Doctor $doctor
     * @return array
     */
    public function transform(Doctor $doctor)
    {
        return [
            'id'         => $doctor->id,
            'name'       => $doctor->name,
            'surname'    => $doctor->surname,
            'fullName'   => $doctor->name . ' ' . $doctor->surname,
            'email'      => $doctor->email,
            'is_enabled' => (boolean)$doctor->is_enabled,
            'role'       => [
                'id'   => $doctor->getRoleId(),
                'name' => $doctor->getRoleName(),
            ],
        ];
    }
}

Zerion Mini Shell 1.0