<?php

namespace App\ViewModels\Orcamento\OrcamentoClienteUpdateViewModel;

use App\Utils\Builder;

class OrcamentoClienteUpdateViewModelBuilder implements Builder {
	protected $id;
	protected $idStatus;
	protected $idUnidade;
	protected $idCliente;
	protected $idPet;
	protected $valor;
	protected $validade;
	protected $criadoPor;
	protected $dataCriacao;
	protected $horaCriacao;
	protected $atualizadoPor;
	protected $dataAtualizacao;
	protected $horaAtualizacao;

	public function build(): OrcamentoClienteUpdateViewModel {

		$obj = new OrcamentoClienteUpdateViewModel();

		$obj->setId( $this->id );
		$obj->setIdStatus( $this->idStatus );
		$obj->setIdUnidade( $this->idUnidade );
		$obj->setIdCliente( $this->idCliente );
		$obj->setIdPet( $this->idPet );
		$obj->setValor( $this->valor );
		$obj->setValidade( $this->validade );
		$obj->setCriadoPor( $this->criadoPor );
		$obj->setDataCriacao( $this->dataCriacao );
		$obj->setHoraCriacao( $this->horaCriacao );
		$obj->setAtualizadoPor( $this->atualizadoPor );
		$obj->setDataAtualizacao( $this->dataAtualizacao );
		$obj->setHoraAtualizacao( $this->horaAtualizacao );

		return $obj;

	}

	/**
	 *
	 * @param mixed $id
	 */
	public function setId($id): OrcamentoClienteUpdateViewModelBuilder {

		$this->id = $id;
		return $this;

	}

	/**
	 *
	 * @param mixed $idStatus
	 */
	public function setIdStatus($idStatus): OrcamentoClienteUpdateViewModelBuilder {

		$this->idStatus = $idStatus;
		return $this;

	}

	/**
	 *
	 * @param mixed $idUnidade
	 */
	public function setIdUnidade($idUnidade): OrcamentoClienteUpdateViewModelBuilder {

		$this->idUnidade = $idUnidade;
		return $this;

	}

	/**
	 *
	 * @param mixed $idCliente
	 */
	public function setIdCliente($idCliente): OrcamentoClienteUpdateViewModelBuilder {

		$this->idCliente = $idCliente;
		return $this;

	}

	/**
	 *
	 * @param mixed $idPet
	 */
	public function setIdPet($idPet): OrcamentoClienteUpdateViewModelBuilder {

		$this->idPet = $idPet;
		return $this;

	}

	/**
	 *
	 * @param mixed $criadoPor
	 */
	public function setCriadoPor($criadoPor): OrcamentoClienteUpdateViewModelBuilder {

		$this->criadoPor = $criadoPor;
		return $this;

	}

	/**
	 *
	 * @param mixed $dataCriacao
	 */
	public function setDataCriacao($dataCriacao): OrcamentoClienteUpdateViewModelBuilder {

		$this->dataCriacao = $dataCriacao;
		return $this;

	}

	/**
	 *
	 * @param mixed $horaCriacao
	 */
	public function setHoraCriacao($horaCriacao): OrcamentoClienteUpdateViewModelBuilder {

		$this->horaCriacao = $horaCriacao;
		return $this;

	}

	/**
	 *
	 * @param mixed $atualizadoPor
	 */
	public function setAtualizadoPor($atualizadoPor): OrcamentoClienteUpdateViewModelBuilder {

		$this->atualizadoPor = $atualizadoPor;
		return $this;

	}

	/**
	 *
	 * @param mixed $dataAtualizacao
	 */
	public function setDataAtualizacao($dataAtualizacao): OrcamentoClienteUpdateViewModelBuilder {

		$this->dataAtualizacao = $dataAtualizacao;
		return $this;

	}

	/**
	 *
	 * @param mixed $horaAtualizacao
	 */
	public function setHoraAtualizacao($horaAtualizacao): OrcamentoClienteUpdateViewModelBuilder {

		$this->horaAtualizacao = $horaAtualizacao;
		return $this;

	}

	/**
	 *
	 * @param mixed $valor
	 */
	public function setValor($valor): OrcamentoClienteUpdateViewModelBuilder {

		$this->valor = $valor;
		return $this;

	}

	/**
	 *
	 * @param mixed $validade
	 */
	public function setValidade($validade): OrcamentoClienteUpdateViewModelBuilder {

		$this->validade = $validade;
		return $this;

	}

}

