org.jrimum.bopepo.view.BoletoInfoViewCaixaSICOB14 Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bpp-cobranca Show documentation
Show all versions of bpp-cobranca Show documentation
This is a fork and merge from JRimum ( http://www.jrimum.org ),
- Bopepo: https://github.com/jrimum/bopepo
- Texgit: https://github.com/jrimum/texgit
- Valia: https://github.com/jrimum/vallia
- Utilix: https://github.com/jrimum/utilix
- Domkee: https://github.com/jrimum/domkee
For Brazillian Boleto Payment Method. So much thanks for original authors:
Gilmar P. S. L, Misael Barreto and Rômulo Augusto.
The newest version!
package org.jrimum.bopepo.view;
import static org.apache.commons.lang3.StringUtils.isBlank;
import static org.jrimum.utilix.Objects.isNotNull;
import org.jrimum.bopepo.Boleto;
import org.jrimum.bopepo.parametro.ParametroCaixaEconomicaFederal;
import org.jrimum.bopepo.view.ResourceBundle;
import org.jrimum.bopepo.view.AbstractBoletoInfoCampoView;
import org.jrimum.domkee.banco.Titulo;
/**
* View para o convênio SICOB, Nosso número com 14 dígitos, da CAIXA.
*
* @author Rômulo Augusto
*/
public class BoletoInfoViewCaixaSICOB14 extends AbstractBoletoInfoCampoView {
private static final int CODIGO_OPERACAO_PADRAO = 870;
public BoletoInfoViewCaixaSICOB14(ResourceBundle resourceBundle, Boleto boleto) {
super(resourceBundle, boleto);
}
@Override
public String getTextoFcCarteira() {
return "SR";
}
@Override
public String getTextoFcAgenciaCodigoCedente() {
Integer agencia = getBoleto().getTitulo().getContaBancaria().getAgencia().getCodigo();
Integer codigoOperacao = getCodigoOperacao();
Integer codigoBeneficiario = getBoleto().getTitulo().getContaBancaria().getNumeroDaConta().getCodigoDaConta();
String digitoDaConta = getBoleto().getTitulo().getContaBancaria().getNumeroDaConta().getDigitoDaConta();
return String.format("%04d.%03d.%08d-%s", agencia, codigoOperacao, codigoBeneficiario, digitoDaConta);
}
private Integer getCodigoOperacao() {
Titulo titulo = getBoleto().getTitulo();
Integer codigoOperacao = CODIGO_OPERACAO_PADRAO;
if (titulo.hasParametrosBancarios() && isNotNull(titulo.getParametrosBancarios().getValor(ParametroCaixaEconomicaFederal.CODIGO_OPERACAO))) {
codigoOperacao = titulo.getParametrosBancarios().getValor(ParametroCaixaEconomicaFederal.CODIGO_OPERACAO);
}
return codigoOperacao;
}
@Override
public String getTextoFcLocalPagamento() {
String textoFcLocalPagamento = super.getTextoFcLocalPagamento();
return isBlank(textoFcLocalPagamento) ? "PREFERENCIALMENTE NAS CASAS LOTÉRICAS ATÉ O VALOR LIMITE" : textoFcLocalPagamento;
}
}