<?php namespace App\ViewModels\PreAgendamento\PreAgendamentoDetailsViewModel;

use App\Utils\Entity;

class PreAgendamentoDetailsViewModel extends Entity
{
    protected $pre_agendamento_id;
    protected $id_agenda_especialidade;
    protected $cliente_nome;
    protected $cliente_telefone;
    protected $id_especialidade;
    protected $descricao_especialidade;
    protected $status_id;
    protected $status_descricao;
    protected $agenda_hora_inicio;
    protected $agenda_hora_final;
    protected $agenda_data;

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

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

    /**
     * @param mixed $pre_agendamento_id
     * @return PreAgendamentoDetailsViewModel
     */
    public function setPreAgendamentoId($pre_agendamento_id)
    {
        $this->pre_agendamento_id = $pre_agendamento_id;
        return $this;
    }

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

    /**
     * @param mixed $id_agenda_especialidade
     * @return PreAgendamentoDetailsViewModel
     */
    public function setIdAgendaEspecialidade($id_agenda_especialidade)
    {
        $this->id_agenda_especialidade = $id_agenda_especialidade;
        return $this;
    }

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

    /**
     * @param mixed $cliente_nome
     * @return PreAgendamentoDetailsViewModel
     */
    public function setClienteNome($cliente_nome)
    {
        $this->cliente_nome = $cliente_nome;
        return $this;
    }

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

    /**
     * @param mixed $cliente_telefone
     * @return PreAgendamentoDetailsViewModel
     */
    public function setClienteTelefone($cliente_telefone)
    {
        $this->cliente_telefone = $cliente_telefone;
        return $this;
    }

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

    /**
     * @param mixed $id_especialidade
     * @return PreAgendamentoDetailsViewModel
     */
    public function setIdEspecialidade($id_especialidade)
    {
        $this->id_especialidade = $id_especialidade;
        return $this;
    }

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

    /**
     * @param mixed $descricao_especialidade
     * @return PreAgendamentoDetailsViewModel
     */
    public function setDescricaoEspecialidade($descricao_especialidade)
    {
        $this->descricao_especialidade = $descricao_especialidade;
        return $this;
    }

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

    /**
     * @param mixed $status_id
     * @return PreAgendamentoDetailsViewModel
     */
    public function setStatusId($status_id)
    {
        $this->status_id = $status_id;
        return $this;
    }

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

    /**
     * @param mixed $status_descricao
     * @return PreAgendamentoDetailsViewModel
     */
    public function setStatusDescricao($status_descricao)
    {
        $this->status_descricao = $status_descricao;
        return $this;
    }

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

    /**
     * @param mixed $agenda_hora_inicio
     * @return PreAgendamentoDetailsViewModel
     */
    public function setAgendaHoraInicio($agenda_hora_inicio)
    {
        $this->agenda_hora_inicio = $agenda_hora_inicio;
        return $this;
    }

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

    /**
     * @param mixed $agenda_hora_final
     * @return PreAgendamentoDetailsViewModel
     */
    public function setAgendaHoraFinal($agenda_hora_final)
    {
        $this->agenda_hora_final = $agenda_hora_final;
        return $this;
    }

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

    /**
     * @param mixed $agenda_data
     * @return PreAgendamentoDetailsViewModel
     */
    public function setAgendaData($agenda_data)
    {
        $this->agenda_data = $agenda_data;
        return $this;
    }



}
