org.jrimum.bopepo.campolivre.CLBancoRuralCobrancaNaoRegistradaSeguradora 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.campolivre;
import static org.jrimum.bopepo.parametro.ParametroBancoRural.CODIGO_REDUZIDO;
import static org.jrimum.bopepo.parametro.ParametroBancoRural.VALOR_IOS;
import java.math.BigDecimal;
import org.jrimum.domkee.banco.Titulo;
import org.jrimum.texgit.Fillers;
import org.jrimum.texgit.FixedField;
import org.jrimum.utilix.Exceptions;
import org.jrimum.utilix.DecimalFormat;
/**
*
* O campo livre do Banco Rural, para cobrança sem registro (apólice de seguro
* com I.O.S.), deve seguir esta forma:
*
*
*
*
*
* Posição
* Tamanho
* Picture
* Conteúdo (terminologia padrão)
* Conteúdo (terminologia do banco)
*
*
*
* 20-20
* 1
* 9(1)
* Tipo de Cobrança - 4
* Tipo de Cobrança - 4
*
*
* 21-23
* 3
* 9(3)
* Código da Agência
* Agência Cedente
*
*
* 24-26
* 3
* 9(3)
* Código Reduzido do Cliente
* O código reduzido deverá ser
* solicitado ao gerente da agência.
*
*
* 27-36
* 10
* 9(10)
* Seu número
* Nosso número
*
*
* 37-37
* 1
* 9(1)
* Dígito seu Número
* Dígito nosso número
*
*
* 42-44
* 3
* 9(3)
* Valor I.O.S. 05 (cinco) inteiros,
* 02 (duas) decimais
* Valor do imposto
*
*
*
*
* @author Gilmar P.S.L.
*/
class CLBancoRuralCobrancaNaoRegistradaSeguradora extends AbstractCLBancoRural{
/**
*
*/
private static final long serialVersionUID = -2427800425370567806L;
/**
* Número de campos.
*/
private static final Integer FIELDS_LENGTH = Integer.valueOf(6);
/**
* Tipo de Cobrança = 4.
*/
private static final Integer TIPO_COBRANCA = Integer.valueOf(4);
/**
*
* Dado um título, cria um campo livre para cobrança sem registro – apólice de seguro com I.O.S..
*
*
* @param titulo
* - título com as informações para geração do campo livre
*/
CLBancoRuralCobrancaNaoRegistradaSeguradora(Titulo titulo) {
super(FIELDS_LENGTH);
this.add( new FixedField( TIPO_COBRANCA , 1 ) );
this.add( new FixedField( titulo.getContaBancaria().getAgencia().getCodigo(), 3 , Fillers.ZERO_LEFT ) );
this.add( new FixedField(titulo.getParametrosBancarios().getValor(CODIGO_REDUZIDO), 3, Fillers.ZERO_LEFT ) );
this.add( new FixedField( titulo.getNossoNumero(), 10 , Fillers.ZERO_LEFT ) );
this.add( new FixedField( titulo.getDigitoDoNossoNumero(), 1 , Fillers.ZERO_LEFT ) );
this.add( new FixedField(titulo.getParametrosBancarios().getValor(VALOR_IOS), 7, DecimalFormat.NUMBER_DD_BR.copy(), Fillers.ZERO_LEFT));
}
@Override
protected void addFields(Titulo titulo) {
// TODO IMPLEMENTAR
Exceptions.throwUnsupportedOperationException("AINDA NÃO IMPLEMENTADO!");
}
@Override
protected void checkValues(Titulo titulo) {
// TODO IMPLEMENTAR
Exceptions.throwUnsupportedOperationException("AINDA NÃO IMPLEMENTADO!");
}
}