<?php

namespace App\ViewModels\Voucher\VoucherRegistrationViewModel;

use App\Utils\Builder;

class VoucherRegistrationViewModelBuilder implements Builder {

	// protected $id;
	protected $id_tipo;
	protected $id_compra;
	protected $id_status;
	protected $id_compra_item;
	protected $serial;
	protected $id_pet;
	protected $id_usuario;
	protected $data_vencimento;
	protected $criado_por;
	protected $data_criacao;
	protected $hora_criacao;

	// protected $alterado_por;
	// protected $data_alteracao;
	// protected $hora_alteracao;
	public function build(): VoucherRegistrationViewModel {

		$obj = new VoucherRegistrationViewModel();

		$obj->setIdTipo( $this->id_tipo );
		$obj->setIdStatus( $this->id_status );
		$obj->setIdPet( $this->id_pet );
		$obj->setIdCompra( $this->id_compra );
		$obj->setIdCompraItem( $this->id_compra_item );
		$obj->setIdUsuario( $this->id_usuario );
		$obj->setSerial( $this->serial );
		$obj->setDataVencimento( $this->data_vencimento );
		$obj->setCriadoPor( $this->criado_por );
		$obj->setDataCriacao( $this->data_criacao );
		$obj->setHoraCriacao( $this->hora_criacao );

		return $obj;

	}

	/**
	 *
	 * @param mixed $id_tipo
	 */
	public function setIdTipo($id_tipo): VoucherRegistrationViewModelBuilder {

		$this->id_tipo = $id_tipo;
		return $this;

	}

	/**
	 *
	 * @param mixed $id_compra
	 */
	public function setIdCompra($id_compra): VoucherRegistrationViewModelBuilder {

		$this->id_compra = $id_compra;
		return $this;

	}

	/**
	 *
	 * @param mixed $id_compra_item
	 */
	public function setIdCompraItem($id_compra_item): VoucherRegistrationViewModelBuilder {

		$this->id_compra_item = $id_compra_item;
		return $this;

	}

	/**
	 *
	 * @param mixed $id_status
	 */
	public function setIdStatus($id_status): VoucherRegistrationViewModelBuilder {

		$this->id_status = $id_status;
		return $this;

	}

	/**
	 *
	 * @param mixed $serial
	 */
	public function setSerial($serial): VoucherRegistrationViewModelBuilder {

		$this->serial = $serial;
		return $this;

	}

	/**
	 *
	 * @param mixed $id_pet
	 */
	public function setIdPet($id_pet): VoucherRegistrationViewModelBuilder {

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

	}

	/**
	 *
	 * @param mixed $id_usuario
	 */
	public function setIdUsuario($id_usuario): VoucherRegistrationViewModelBuilder {

		$this->id_usuario = $id_usuario;
		return $this;

	}

	/**
	 *
	 * @param mixed $data_vencimento
	 */
	public function setDataVencimento($data_vencimento): VoucherRegistrationViewModelBuilder {

		$this->data_vencimento = $data_vencimento;
		return $this;

	}

	/**
	 *
	 * @param mixed $criado_por
	 */
	public function setCriadoPor($criado_por): VoucherRegistrationViewModelBuilder {

		$this->criado_por = $criado_por;
		return $this;

	}

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

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

	}

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

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

	}

}

