<?php


namespace App\ViewModels\Consulta\ConsultaUpdateViewModel;


use App\Utils\Entity;

class ConsultaUpdateViewModel extends Entity
{
    protected $id_agendamento;
    protected $titulo;
    protected $descricao;
    protected $resposta_numerica_inteira_collection;
    protected $resposta_numerica_decimal_collection;
    protected $resposta_textual_collection;
    protected $resposta_escolha_opcao_collection;
    protected $respostas;

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

    public function getIdAgendamento(): int
    {
        return $this->id_agendamento;
    }

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

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

    public function getRespostaNumericaInteiraCollection(): RespostaFormularioUpdateCollection
    {
        return $this->resposta_numerica_inteira_collection;
    }

    public function getRespostaNumericaDecimalCollection(): RespostaFormularioUpdateCollection
    {
        return $this->resposta_numerica_decimal_collection;
    }

    public function getRespostaTextualCollection(): RespostaFormularioUpdateCollection
    {
        return $this->resposta_textual_collection;
    }

    public function getRespostaEscolhaOpcaoCollection(): RespostaFormularioUpdateCollection
    {
        return $this->resposta_escolha_opcao_collection;
    }

    public function getRespostas(): array
    {
        return $this->respostas;
    }

    public function setIdAgendamento(int $id_agendamento): void
    {
        $this->id_agendamento = $id_agendamento;
    }

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

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

    public function setRespostaNumericaInteiraCollection(RespostaFormularioUpdateCollection $resposta_numerica_inteira_collection): void
    {
        $this->resposta_numerica_inteira_collection = $resposta_numerica_inteira_collection;
    }

    public function setRespostaNumericaDecimalCollection(RespostaFormularioUpdateCollection $resposta_numerica_decimal_collection): void
    {
        $this->resposta_numerica_decimal_collection = $resposta_numerica_decimal_collection;
    }

    public function setRespostaTextualCollection(RespostaFormularioUpdateCollection $resposta_textual_collection): void
    {
        $this->resposta_textual_collection = $resposta_textual_collection;
    }

    public function setRespostaEscolhaOpcaoCollection(RespostaFormularioUpdateCollection $resposta_escolha_opcao_collection): void
    {
        $this->resposta_escolha_opcao_collection = $resposta_escolha_opcao_collection;
    }

    public function setRespostas(array $respostas): void
    {
        $this->respostas = $respostas;
    }
}