<?php namespace App\ViewModels\Internacao\InternacaoDetailsViewModel;

use App\Utils\Entity;

class InternacaoDetailsViewModel extends Entity
{
    protected $cliente_id;
    protected $nome_cliente;
    protected $id_pet;
    protected $nome_pet;
    protected $data_requisicao;
    protected $hora_requisicao;
    protected $convenio_cliente_id;
    protected $status_requisicao;
    protected $nome_status_requisicao;
    protected $codigo;
    protected $data_execucao;
    protected $usuario_executor;
    protected $data_entrada_internacao;
    protected $data_saida_internacao;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


}