<?php
namespace Jaga\Models\PAK;

use Jaga\Models\BaseModel;
use Jaga\Traits\JagaTimestamp;
use Jaga\Traits\SoftDelete;
use Jaga\Models\PAK\PAKJenisDokumenQuestionnaire;

class PAKQuestionnaire extends BaseModel
{
    use JagaTimestamp, SoftDelete;

    public static $throwableModelName = 'Questionnaire PAK';

    public function initialize()
    {
        $this->setSchema("jaga");
        $this->setSource("pak_questionnaire");
        $this->hasMany(
            "id", 
            "Jaga\Models\PAK\PAKJenisDokumenQuestionnaire", 
            "questionnaire_id",
            [
                'reusable' => true, // cache related data
                'alias'    => 'jenisDokumen',
                'params'   => [
                    'conditions' => 'deleted_at IS NULL'
                ]
            ]
        );
    }

    public function toArray($columns = null)
    {
        $result = parent::toArray($columns);

        return $result;
    }

    public function getDetail()
    {
        $result = $this->toArray();
        $docs = $this->jenisDokumen;

        $result['total_documents'] = count($docs);
        $result['documents'] = $docs;

        return $result;
    }
}