All Downloads are FREE. Search and download functionalities are using the official Maven repository.

br.com.caelum.stella.boleto.Beneficiario Maven / Gradle / Ivy

There is a newer version: 2.1.7
Show newest version
package br.com.caelum.stella.boleto;

import java.io.Serializable;

import static br.com.caelum.stella.boleto.utils.StellaStringUtils.leftPadWithZeros;

/**
 * Beneficiário é a empresa/pessoa que emite o boleto.
 */
public class Beneficiario implements Serializable {

	private static final long serialVersionUID = 1L;

	private String agencia;
	private String digitoAgencia;

	private String codigoBeneficiario;
	private String digitoCodigoBeneficiario;

	private String carteira;
	private String nossoNumero;
	private String digitoNossoNumero;
	
	private String nomeBeneficiario;
	private String documento;
	private Endereco endereco = Endereco.novoEndereco();

	private String numeroConvenio; //Exigência do BB: número do convênio
	private Modalidade modalidade = Modalidade.COM_REGISTRO; //C ou S Registro

	private Beneficiario() {
	}
	
	/**
	 * @return agencia formatada com 4 digitos
	 * Para o valor de agencia 123 retorna a String 0123
	 */	
	public String getAgenciaFormatada(){
		return leftPadWithZeros(agencia, 4);
	}

	/**
	 * @return um novo Beneficiario
	 */
	public static Beneficiario novoBeneficiario() {
		return new Beneficiario();
	}

	/**
	 * @return número da agência sem o digito
	 */	
	public String getAgencia() {
		return agencia;
	}

	/**
	 * @param agencia, que deverá ser informada
	 * sem o digito verificador
	 * 
	 * @return este beneficiario
	 */	
	public Beneficiario comAgencia(String agencia) {
		this.agencia = agencia;
		return this;
	}

	/**
	 * @return digito verificador (DV) da agencia
	 */	
	public String getDigitoAgencia() {
		return digitoAgencia;
	}

	/**
	 * @param digitoAgencia - dígito verificador (DV) da agencia
	 * @return este beneficiario
	 */	
	public Beneficiario comDigitoAgencia(String digitoAgencia) {
		this.digitoAgencia = digitoAgencia;
		return this;
	}

	/**
	 * @return código fornecido pela agência do beneficiário.
	 */	
	public String getCodigoBeneficiario() {
		return codigoBeneficiario;
	}

	/**
	 * @param codigoBeneficiario - código fornecido pela agência do beneficiário.
	 * @return este beneficiario
	 */	
	public Beneficiario comCodigoBeneficiario(String codigoBeneficiario) {
		this.codigoBeneficiario = codigoBeneficiario;
		return this;
	}

	/**
	 * @return digito - verificador (DV) do código do beneficiário
	 * @return este beneficiario
	 */	
	public String getDigitoCodigoBeneficiario() {
		return digitoCodigoBeneficiario;
	}

	/**
	 * @param digitoCodigoBeneficiario - dígito verificador (DV) do código do beneficiário
	 * @return este beneficiario
	 */	
	public Beneficiario comDigitoCodigoBeneficiario(String digitoCodigoBeneficiario) {
		this.digitoCodigoBeneficiario = digitoCodigoBeneficiario;
		return this;
	}

	/**
	 * @return carteira 
Valor informado pelo * banco para identificação do tipo de boleto */ public String getCarteira() { return carteira; } /** * @param carteira
Valor informado pelo * banco para identificação do tipo de boleto * @return este beneficiario */ public Beneficiario comCarteira(String carteira) { this.carteira = carteira; return this; } /** * @return nossoNumero
Valor que o beneficiário escolhe * para manter controle sobre seus boletos. */ public String getNossoNumero() { return nossoNumero; } /** * @param nossoNumero
Valor que o beneficiário escolhe * para manter controle sobre seus boletos. Esse valor serve * para o beneficiário identificar quais boletos foram pagos ou não. * Recomenda-se o uso de números sequenciais, na geração de * diversos boletos, para facilitar a identificação dos pagos * @return este beneficiario */ public Beneficiario comNossoNumero(String nossoNumero) { this.nossoNumero = nossoNumero; return this; } /** * @return digito verificador do nosso número. */ public String getDigitoNossoNumero() { return digitoNossoNumero; } /** * @param digitoNossoNumero, que será associado ao beneficiário * @return este beneficiario */ public Beneficiario comDigitoNossoNumero(String digitoNossoNumero) { this.digitoNossoNumero = digitoNossoNumero; return this; } /** * @return nome do beneficiário. */ public String getNomeBeneficiario() { return nomeBeneficiario; } /** * @param nomeBeneficiario - nome do beneficiário. Por exemplo: razão social ou nome * fantasia do Beneficiário. * @return esse beneficiario */ public Beneficiario comNomeBeneficiario(String nomeBeneficiario) { this.nomeBeneficiario = nomeBeneficiario; return this; } /** * @return o endereço do beneficiário */ public Endereco getEndereco() { return endereco; } /** * @param endereco, que será associado ao beneficiário * @return este beneficiario */ public Beneficiario comEndereco(Endereco endereco) { this.endereco = endereco; return this; } /** * @return número do convênio
Valor que identifica * um beneficiário junto ao seu banco para associar seus boletos */ public String getNumeroConvenio() { return numeroConvenio; } /** * @param numeroConvenio
Valor que identifica um * beneficiário junto ao seu banco para associar seus boletos * @return este beneficiario */ public Beneficiario comNumeroConvenio(String numeroConvenio) { this.numeroConvenio = numeroConvenio; return this; } /** * @return CPF ou CNPJ do beneficiário */ public String getDocumento() { return documento; } /** * @param documento
CPF ou CNPJ do beneficiário * @return este beneficiario */ public Beneficiario comDocumento(String documento) { this.documento = documento; return this; } public Modalidade getModalidade() { return modalidade; } public Beneficiario comModalidade(Modalidade modalidade) { this.modalidade = modalidade; return this; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy