<?php


namespace App\ViewModels\Fila\FilaClienteDetailsViewModel;

use App\Utils\Builder;

class FilaClienteDetailsViewModelBuilder implements Builder {
	protected $id_requisicao_procedimento;
	protected $id_cliente;
	protected $id_pessoa;
	protected $nome_pessoa;
	protected $id_pet;
	protected $data_nascimento_pet;
	protected $nome_pet;
	protected $nome_raca;
	protected $nome_especie;
	protected $data_criacao;
	protected $hora_criacao;

	public function build(): FilaClienteDetailsViewModel {

		$procedimento_details_vm = new FilaClienteDetailsViewModel();
		$procedimento_details_vm->setIdRequisicaoProcedimento( $this->id_requisicao_procedimento );
		$procedimento_details_vm->setIdCliente( $this->id_cliente );
		$procedimento_details_vm->setIdPessoa( $this->id_pessoa );
		$procedimento_details_vm->setNomePessoa( $this->nome_pessoa );
		$procedimento_details_vm->setIdPet( $this->id_pet );
		$procedimento_details_vm->setDataNascimentoPet( $this->data_nascimento_pet );
		$procedimento_details_vm->setNomePet( $this->nome_pet );
		$procedimento_details_vm->setNomeRaca( $this->nome_raca );
		$procedimento_details_vm->setNomeEspecie( $this->nome_especie );
		$procedimento_details_vm->setDataCriacao( $this->data_criacao );
		$procedimento_details_vm->setHoraCriacao( $this->hora_criacao );
		return $procedimento_details_vm;

	}

	/**
	 *
	 * @param mixed $id_requisicao_procedimento
	 * @return FilaClienteDetailsViewModelBuilder
	 */
	public function setIdRequisicaoProcedimento($id_requisicao_procedimento) {

		$this->id_requisicao_procedimento = $id_requisicao_procedimento;
		return $this;

	}

	/**
	 *
	 * @param mixed $id_cliente
	 * @return FilaClienteDetailsViewModelBuilder
	 */
	public function setIdCliente($id_cliente) {

		$this->id_cliente = $id_cliente;
		return $this;

	}

	/**
	 *
	 * @param mixed $id_pessoa
	 * @return FilaClienteDetailsViewModelBuilder
	 */
	public function setIdPessoa($id_pessoa) {

		$this->id_pessoa = $id_pessoa;
		return $this;

	}

	/**
	 *
	 * @param mixed $nome_pessoa
	 * @return FilaClienteDetailsViewModelBuilder
	 */
	public function setNomePessoa($nome_pessoa) {

		$this->nome_pessoa = $nome_pessoa;
		return $this;

	}

	/**
	 *
	 * @param mixed $id_pet
	 * @return FilaClienteDetailsViewModelBuilder
	 */
	public function setIdPet($id_pet) {

		$this->id_pet = $id_pet;
		return $this;

	}

	/**
	 *
	 * @param mixed $data_nascimento_pet
	 * @return FilaClienteDetailsViewModelBuilder
	 */
	public function setDataNascimentoPet($data_nascimento_pet) {

		$this->data_nascimento_pet = $data_nascimento_pet;
		return $this;

	}

	/**
	 *
	 * @param mixed $nome_pet
	 * @return FilaClienteDetailsViewModelBuilder
	 */
	public function setNomePet($nome_pet) {

		$this->nome_pet = $nome_pet;
		return $this;

	}

	/**
	 *
	 * @param mixed $nome_raca
	 * @return FilaClienteDetailsViewModelBuilder
	 */
	public function setNomeRaca($nome_raca) {

		$this->nome_raca = $nome_raca;
		return $this;

	}

	/**
	 *
	 * @param mixed $nome_especie
	 * @return FilaClienteDetailsViewModelBuilder
	 */
	public function setNomeEspecie($nome_especie) {

		$this->nome_especie = $nome_especie;
		return $this;

	}

	/**
	 *
	 * @param mixed $data_criacao
	 */
	public function setDataCriacao($data_criacao) {

		$this->data_criacao = $data_criacao;
		return $this;

	}

	/**
	 *
	 * @param mixed $hora_criacao
	 */
	public function setHoraCriacao($hora_criacao) {

		$this->hora_criacao = $hora_criacao;
		return $this;

	}

}