%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/ProtocolTransformer.php

<?php

namespace App\Transformers;

use App\Models\PatientProtocol;
use App\Models\Protocol;

class ProtocolTransformer extends BaseTransformer
{
    protected $availableIncludes = [
        'media',
    ];

    public function includeMedia(Protocol $protocol)
    {
        return $this->collection($protocol->media, new MediaTransformer, 'media');
    }

    public function transform(Protocol $protocol)
    {
        return [
            'id'                  => $protocol->id,
            'code'                => $protocol->code,
            'name'                => $protocol->name,
            'description'         => $protocol->description,
            'is_enabled'          => $protocol->is_enabled,
            'template_id'         => $protocol->template_id,
            'signed_count'        => $protocol->patients()
                                              ->where('status', PatientProtocol::COMPLETED)
                                              ->count(),
            'irb_number'          => $protocol->irb_number,
            'irb_approval_date'   => $protocol->irb_approval_date,
            'irb_expiration_date' => $protocol->irb_expiration_date,
        ];
    }
}

Zerion Mini Shell 1.0