<?php

namespace App\ViewModels\FormaPagamento\FormaPagamentoRegistrationViewModel;

use App\Utils\Builder;
use App\Utils\ResponseException;
use Config\CustomRules;
use Exception;

class CreditoClienteRegistrationViewModelBuilder implements Builder {
	private $descricao;
	private $criado_em;
	private $atualizado_em;
	private $desativado_em;
	private $criado_por;
	private $alterado_por;
	private $desativado_por;

	public function build() {

		$credito_registration_view_model = new CreditoClienteRegistrationViewModel();
		$credito_registration_view_model->setDescricao( $this->descricao );
		$credito_registration_view_model->setCriadoEm( $this->criado_em );
		$credito_registration_view_model->setAtualizadoEm( $this->atualizado_em );
		$credito_registration_view_model->setDesativadoEm( $this->desativado_em );
		$credito_registration_view_model->setCriadoPor( $this->criado_por );
		$credito_registration_view_model->setAlteradoPor( $this->alterado_por );
		$credito_registration_view_model->setDesativadoPor( $this->desativado_por );
		return $credito_registration_view_model;

	}

	/**
	 *
	 * @param mixed $descricao
	 * @return FormaPagamentoRegistrationViewModelBuilder
	 */
	public function setDescricao($descricao) {

		$this->descricao = $descricao;
		return $this;

	}

	/**
	 *
	 * @param mixed $criado_em
	 * @return FormaPagamentoRegistrationViewModelBuilder
	 */
	public function setCriadoEm($criado_em) {

		$this->criado_em = $criado_em;
		return $this;

	}

	/**
	 *
	 * @param mixed $atualizado_em
	 * @return FormaPagamentoRegistrationViewModelBuilder
	 */
	public function setAtualizadoEm($atualizado_em) {

		$this->atualizado_em = $atualizado_em;
		return $this;

	}

	/**
	 *
	 * @param mixed $desativado_em
	 * @return FormaPagamentoRegistrationViewModelBuilder
	 */
	public function setDesativadoEm($desativado_em) {

		$this->desativado_em = $desativado_em;
		return $this;

	}

	/**
	 *
	 * @param mixed $criado_por
	 * @return FormaPagamentoRegistrationViewModelBuilder
	 */
	public function setCriadoPor($criado_por) {

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

	}

	/**
	 *
	 * @param mixed $alterado_por
	 * @return FormaPagamentoRegistrationViewModelBuilder
	 */
	public function setAlteradoPor($alterado_por) {

		$this->alterado_por = $alterado_por;
		return $this;

	}

	/**
	 *
	 * @param mixed $desativado_por
	 * @return FormaPagamentoRegistrationViewModelBuilder
	 */
	public function setDesativadoPor($desativado_por) {

		$this->desativado_por = $desativado_por;
		return $this;

	}

}
