<?php

namespace App\Entities\OrcamentoClienteDetalhe;

use App\Utils\Builder;

class OrcamentoClienteDetalheBuilder implements Builder {
	protected $id;
	protected $idOrcamento;
	protected $idProcedimento;
	protected $idTipoProcedimento;
	protected $idConvenioProcedimento;
	protected $idConcenio;
	protected $idTipoConvenio;
	protected $tipoConvenio;
	protected $convenio;
	protected $codigo;
	protected $idProcedimentoValor;
	protected $idRequisicao;
	protected $idComanda;
	protected $quantidade;
	protected $valorUnidade;
	protected $valor;
	protected $criadoPor;
	protected $dataCriacao;
	protected $horaCriacao;
	protected $atualizadoPor;
	protected $dataAtualizacao;
	protected $horaAtualizacao;

	public function build(): OrcamentoClienteDetalhe {

		$obj = new OrcamentoClienteDetalhe();

		$obj->setId( $this->id );
		$obj->setIdOrcamento( $this->idOrcamento );
		$obj->setIdProcedimento( $this->idProcedimento );
		$obj->setIdConvenioProcedimento( $this->idConvenioProcedimento );
		$obj->setIdProcedimentoValor( $this->idProcedimentoValor );
		$obj->setIdComanda($this->idComanda);
		$obj->setIdConcenio($this->idConcenio);
		$obj->setIdRequisicao($this->idRequisicao);
		$obj->setIdTipoConvenio($this->idTipoConvenio);
		$obj->setIdTipoProcedimento($this->idTipoProcedimento);
		$obj->setCodigo($this->codigo);
		$obj->setConvenio($this->convenio);
		$obj->setTipoConvenio($this->tipoConvenio);
		$obj->setQuantidade( $this->quantidade );
		$obj->setValorUnidade( $this->valorUnidade );
		$obj->setValor( $this->valor );
		$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): OrcamentoClienteDetalheBuilder {

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

	}

	/**
	 *
	 * @param mixed $idOrcamento
	 */
	public function setIdOrcamento($idOrcamento): OrcamentoClienteDetalheBuilder {

		$this->idOrcamento = $idOrcamento;
		return $this;

	}

	/**
	 *
	 * @param mixed $idProcedimento
	 */
	public function setIdProcedimento($idProcedimento): OrcamentoClienteDetalheBuilder {

		$this->idProcedimento = $idProcedimento;
		return $this;

	}

	/**
	 *
	 * @param mixed $idConvenioProcedimento
	 */
	public function setIdConvenioProcedimento($idConvenioProcedimento): OrcamentoClienteDetalheBuilder {

		$this->idConvenioProcedimento = $idConvenioProcedimento;
		return $this;

	}

	/**
	 *
	 * @param mixed $idProcedimentoValor
	 */
	public function setIdProcedimentoValor($idProcedimentoValor): OrcamentoClienteDetalheBuilder {

		$this->idProcedimentoValor = $idProcedimentoValor;
		return $this;

	}

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

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

	}

	/**
	 *
	 * @param mixed $quantidade
	 */
	public function setQuantidade($quantidade): OrcamentoClienteDetalheBuilder {

		$this->quantidade = $quantidade;
		return $this;

	}

	/**
	 *
	 * @param mixed $valorUnidade
	 */
	public function setValorUnidade($valorUnidade): OrcamentoClienteDetalheBuilder {

		$this->valorUnidade = $valorUnidade;
		return $this;

	}

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

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

	}

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

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

	}

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

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

	}

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

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

	}

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

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

	}

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

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

	}
	/**
	 * @param mixed $idTipoProcedimento
	 */
	public function setIdTipoProcedimento($idTipoProcedimento):OrcamentoClienteDetalheBuilder {

		$this->idTipoProcedimento = $idTipoProcedimento;
		return $this;
	}


	/**
	 * @param mixed $idConcenio
	 */
	public function setIdConcenio($idConcenio):OrcamentoClienteDetalheBuilder {

		$this->idConcenio = $idConcenio;
		return $this;
	}


	/**
	 * @param mixed $idTipoConvenio
	 */
	public function setIdTipoConvenio($idTipoConvenio):OrcamentoClienteDetalheBuilder {

		$this->idTipoConvenio = $idTipoConvenio;
		return $this;
	}


	/**
	 * @param mixed $tipoConvenio
	 */
	public function setTipoConvenio($tipoConvenio):OrcamentoClienteDetalheBuilder {

		$this->tipoConvenio = $tipoConvenio;
		return $this;
	}


	/**
	 * @param mixed $convenio
	 */
	public function setConvenio($convenio):OrcamentoClienteDetalheBuilder {

		$this->convenio = $convenio;
		return $this;
	}


	/**
	 * @param mixed $codigo
	 */
	public function setCodigo($codigo):OrcamentoClienteDetalheBuilder {

		$this->codigo = $codigo;
		return $this;
	}


	/**
	 * @param mixed $idRequisicao
	 */
	public function setIdRequisicao($idRequisicao):OrcamentoClienteDetalheBuilder {

		$this->idRequisicao = $idRequisicao;
		return $this;
	}


	/**
	 * @param mixed $idComanda
	 */
	public function setIdComanda($idComanda):OrcamentoClienteDetalheBuilder {

		$this->idComanda = $idComanda;
		return $this;
	}



}

