<?php


namespace App\ViewModels\Consulta\ConsultaDetailsViewModel;


use App\Utils\Entity;

class ConsultaDetailsViewModel extends Entity
{
    protected $titulo;
    protected $descricao;
    protected $id_medico;
    protected $perguntas;
    protected $consulta_titulo;
    protected $consulta_descricao;
    protected $id_agendamento;
    protected $formulario_id;
    protected $usuario_executor_exame;
    protected $usuario_medico_id;

    public static function builder(): ConsultaDetailsViewModelBuilder
    {
        return new ConsultaDetailsViewModelBuilder;
    }

    public function getUsuarioMedicoId()
    {
        return $this->usuario_medico_id;
    }

    public function setUsuarioMedicoId($usuario_medico_id): void
    {
        $this->usuario_medico_id = $usuario_medico_id;
    }

    public function getUsuarioExecutorExame()
    {
        return $this->usuario_executor_exame;
    }

    public function setUsuarioExecutorExame($usuario_executor_exame): void
    {
        $this->usuario_executor_exame = $usuario_executor_exame;
    }

    public function getTitulo(): string
    {
        return $this->titulo;
    }

    public function getDescricao(): string
    {
        return $this->descricao;
    }

    public function getIdMedico(): int
    {
        return $this->id_medico;
    }

    public function getPerguntas(): PerguntaDetailsConsultaCollection
    {
        return $this->perguntas;
    }

    public function setTitulo(string $titulo): void
    {
        $this->titulo = $titulo;
    }

    /**
     * @return mixed
     */
    public function getFormularioId()
    {
        return $this->formulario_id;
    }

    /**
     * @param mixed $formulario_id
     */
    public function setFormularioId($formulario_id): void
    {
        $this->formulario_id = $formulario_id;
    }



    public function setDescricao(string $descricao): void
    {
        $this->descricao = $descricao;
    }

    public function setIdMedico(int $id_medico): void
    {
        $this->id_medico = $id_medico;
    }
    /**
     * @return mixed
     */
    public function getIdAgendamento()
    {
        return $this->id_agendamento;
    }

    /**
     * @param mixed $id_agendamento
     */
    public function setIdAgendamento($id_agendamento): void
    {
        $this->id_agendamento = $id_agendamento;
    }

    /**
     * @return mixed
     */
    public function getConsultaTitulo()
    {
        return $this->consulta_titulo;
    }

    /**
     * @param mixed $consulta_titulo
     */
    public function setConsultaTitulo($consulta_titulo): void
    {
        $this->consulta_titulo = $consulta_titulo;
    }

    /**
     * @return mixed
     */
    public function getConsultaDescricao()
    {
        return $this->consulta_descricao;
    }

    /**
     * @param mixed $consulta_descricao
     */
    public function setConsultaDescricao($consulta_descricao): void
    {
        $this->consulta_descricao = $consulta_descricao;
    }

    public function setPerguntas(PerguntaDetailsConsultaCollection $perguntas): void
    {
        $this->perguntas = $perguntas;
    }




}