161 lines
9.6 KiB
Java
161 lines
9.6 KiB
Java
package com.rjconsultores.ventaboletos.layouts;
|
||
|
||
import java.util.Collection;
|
||
import java.util.List;
|
||
|
||
import org.jrimum.texgit.Record;
|
||
|
||
import com.rjconsultores.ventaboletos.blocos.CabecalhoRemessa;
|
||
import com.rjconsultores.ventaboletos.blocos.CabecalhoRetorno;
|
||
import com.rjconsultores.ventaboletos.blocos.DadosBoleto;
|
||
import com.rjconsultores.ventaboletos.blocos.DetalheObrigatorio;
|
||
import com.rjconsultores.ventaboletos.blocos.DetalheRetorno;
|
||
import com.rjconsultores.ventaboletos.blocos.RateioDeCredito;
|
||
import com.rjconsultores.ventaboletos.blocos.RodapeRemessa;
|
||
import com.rjconsultores.ventaboletos.blocos.RodapeRetorno;
|
||
import com.rjconsultores.ventaboletos.blocos.itau.CabecalhoRemessaItau;
|
||
import com.rjconsultores.ventaboletos.blocos.itau.DetalheObrigatorioItau;
|
||
import com.rjconsultores.ventaboletos.enuns.BancoLayout;
|
||
import com.rjconsultores.ventaboletos.utils.FormataUtil;
|
||
|
||
public class ItauFlatFile extends AbstractFlatFile implements RemessaInterface {
|
||
|
||
public ItauFlatFile() {
|
||
super(BancoLayout.ITAU_400_Envio);
|
||
}
|
||
|
||
@Override
|
||
protected void createHeader(CabecalhoRemessa cabecalhoRemessaParam) {
|
||
|
||
Record header = getFlatFile().createRecord("Header");
|
||
|
||
CabecalhoRemessaItau cabecalhoRemessa = (CabecalhoRemessaItau) cabecalhoRemessaParam;
|
||
|
||
//header.setValue("IdentificacaoRemessa", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getIdentificacaoRemessa(), 1));
|
||
//header.setValue("LiteralRemessa", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getLiteralRemessa(), 7));
|
||
//header.setValue("CodigoDeServico", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getCodigoDeServico(), 2));
|
||
//header.setValue("LiteralServico", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getLiteralServico(), 15));
|
||
header.setValue("Agencia", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getAgencia().toString(), 4));
|
||
//header.setValue("Zeros", "00");
|
||
header.setValue("Conta", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getConta().toString(), 5));
|
||
header.setValue("DacConta", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getDacConta().toString(), 1));
|
||
header.setValue("Brancos1", FormataUtil.formatarValorPorTamanho(" ", 8));
|
||
header.setValue("NomeEmpresa", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getNomeEmpresa().toString(), 30));
|
||
//header.setValue("CodigoCompensacao", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getIdentificacaoRemessa(), 3));
|
||
//header.setValue("NomeBanco", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getIdentificacaoRemessa(), 15));
|
||
header.setValue("DataGeracao", FormataUtil.formataData(cabecalhoRemessa.getDataGeracao()));
|
||
header.setValue("Brancos2", FormataUtil.formatarValorPorTamanho(" ", 294));
|
||
header.setValue("NumeroSequencialRegistro", FormataUtil.formatarValorPorTamanho(cabecalhoRemessa.getNumeroSequencialRegistro().toString(), 6));
|
||
|
||
getFlatFile().addRecord(header);
|
||
|
||
}
|
||
|
||
@Override
|
||
protected void createTransacaoTitulos(DetalheObrigatorio tituloParam) {
|
||
|
||
Record transacaoTitulos = getFlatFile().createRecord("TransacaoTitulo");
|
||
|
||
DetalheObrigatorioItau titulo = (DetalheObrigatorioItau) tituloParam;
|
||
|
||
//transacaoTitulos.setValue("CodigoInscricao", FormataUtil.formatarValorPorTamanho(titulo.getCodigoInscricao().toString(), 2));
|
||
transacaoTitulos.setValue("NumeroInscricao", FormataUtil.formatarValorPorTamanho(titulo.getNumeroInscricaoSacado().toString(), 14));
|
||
transacaoTitulos.setValue("Agencia", FormataUtil.formatarValorPorTamanho(titulo.getAgencia().toString(), 4));
|
||
transacaoTitulos.setValue("Zeros", "00");
|
||
transacaoTitulos.setValue("Conta", FormataUtil.formatarValorPorTamanho(titulo.getConta().toString(), 5));
|
||
transacaoTitulos.setValue("DacConta", FormataUtil.formatarValorPorTamanho(titulo.getDacConta().toString(), 1));
|
||
transacaoTitulos.setValue("Brancos1", FormataUtil.formatarValorPorTamanho(" ", 4));
|
||
transacaoTitulos.setValue("InstrucaoAlegacao", FormataUtil.formatarValorPorTamanho(titulo.getInstrucaoAlegacao().toString(), 4));
|
||
transacaoTitulos.setValue("UsoDaEmpresa", FormataUtil.formatarValorPorTamanho(titulo.getUsoDaEmpresa(), 25));
|
||
transacaoTitulos.setValue("NossoNumeroSemDigito", FormataUtil.formatarValorPorTamanho(titulo.getNossoNumero().toString(), 8));
|
||
transacaoTitulos.setValue("QtdMoeda", titulo.getQtdMoeda());
|
||
transacaoTitulos.setValue("NrCarteira", FormataUtil.formatarValorPorTamanho(titulo.getNrCarteira().toString(), 3));
|
||
transacaoTitulos.setValue("UsoDoBanco", FormataUtil.formatarValorPorTamanho(titulo.getUsoDoBanco(), 21));
|
||
// transacaoTitulos.setValue("CodigoCarteira", FormataUtil.formatarValorPorTamanho(titulo.getCodigoCarteira(), 1));
|
||
transacaoTitulos.setValue("CodigoDeOcorrencia", FormataUtil.formatarValorPorTamanho(titulo.getCodigoDeOcorrencia().toString(), 2));
|
||
transacaoTitulos.setValue("NumeroDoDocumento", FormataUtil.formatarValorPorTamanho(titulo.getNumeroDoDocumento().toString(), 10));
|
||
transacaoTitulos.setValue("Vencimento", FormataUtil.formataData(titulo.getVencimento()));
|
||
transacaoTitulos.setValue("Valor", titulo.getValor());
|
||
//transacaoTitulos.setValue("CodigoCompensacaoBancoRecebedor", FormataUtil.formatarValorPorTamanho(titulo.getCodigoCompensacaoBancoRecebedor().toString(), 3));
|
||
transacaoTitulos.setValue("AgenciaCobradora", FormataUtil.formatarValorPorTamanho(titulo.getAgenciaCobradora().toString(), 5));
|
||
transacaoTitulos.setValue("EspecieDeTitulo", FormataUtil.formatarValorPorTamanho(titulo.getEspecieDeTitulo().toString(), 2));
|
||
transacaoTitulos.setValue("Aceite", FormataUtil.formatarValorPorTamanho(titulo.getAceite(), 1));
|
||
transacaoTitulos.setValue("Emissao", FormataUtil.formataData(titulo.getEmissao()));
|
||
transacaoTitulos.setValue("Instrucao1", FormataUtil.formatarValorPorTamanho(titulo.getInstrucao1(), 2));
|
||
transacaoTitulos.setValue("Instrucao2", FormataUtil.formatarValorPorTamanho(titulo.getInstrucao2(), 2));
|
||
transacaoTitulos.setValue("JurosDeMora", titulo.getJurosDeMora());
|
||
transacaoTitulos.setValue("DataDesconto", FormataUtil.formataData(titulo.getDataDesconto()));
|
||
transacaoTitulos.setValue("DescontoConcedido", titulo.getDescontoConcedido());
|
||
transacaoTitulos.setValue("IOF_Devido", titulo.getIOF_Devido());
|
||
transacaoTitulos.setValue("AbatimentoConcedido", titulo.getAbatimentoConcedido());
|
||
transacaoTitulos.setValue("TipoInscricaoSacado", FormataUtil.formatarValorPorTamanho(titulo.getTipoInscricaoSacado().getId(), 2));
|
||
transacaoTitulos.setValue("NumeroInscricaoSacado", FormataUtil.formatarValorPorTamanho(titulo.getNumeroInscricaoSacado().toString(), 14));
|
||
transacaoTitulos.setValue("NomeSacado", FormataUtil.formatarValorPorTamanho(titulo.getNomeSacado().toString(), 30));
|
||
transacaoTitulos.setValue("Brancos2", FormataUtil.formatarValorPorTamanho(" ", 2));
|
||
transacaoTitulos.setValue("LogradouroSacado", FormataUtil.formatarValorPorTamanho(titulo.getLogradouroSacado().toString(), 40));
|
||
transacaoTitulos.setValue("BairroSacado", FormataUtil.formatarValorPorTamanho(titulo.getBairroSacado().toString(), 12));
|
||
transacaoTitulos.setValue("CepSacado", FormataUtil.formatarValorPorTamanho(titulo.getCepSacado().toString(), 8));
|
||
transacaoTitulos.setValue("Cidade", FormataUtil.formatarValorPorTamanho(titulo.getCidade(), 15));
|
||
transacaoTitulos.setValue("Estado", FormataUtil.formatarValorPorTamanho(titulo.getEstado(), 2));
|
||
transacaoTitulos.setValue("SacadorAvalista", FormataUtil.formatarValorPorTamanho(titulo.getSacadorAvalista(), 30));
|
||
transacaoTitulos.setValue("Brancos3", FormataUtil.formatarValorPorTamanho(" ", 2));
|
||
transacaoTitulos.setValue("DataDeMora", FormataUtil.formataData(titulo.getDataDeMora()));
|
||
transacaoTitulos.setValue("Prazo", FormataUtil.formatarValorPorTamanho(titulo.getPrazo().toString(), 2));
|
||
transacaoTitulos.setValue("Brancos4", FormataUtil.formatarValorPorTamanho(" ", 2));
|
||
transacaoTitulos.setValue("NumeroSequencialRegistro", FormataUtil.formatarValorPorTamanho(titulo.getNumeroSequencialRegistro().toString(), 6));
|
||
|
||
DadosBoleto dadosBoleto = titulo.getDadosBoleto();
|
||
|
||
try{
|
||
if(dadosBoleto != null){
|
||
transacaoTitulos.addInnerRecord(createDadosBoletos(dadosBoleto));
|
||
}
|
||
}catch(UnsupportedOperationException e){ }
|
||
|
||
RateioDeCredito rateioDeCredito = titulo.getRateioDeCredito();
|
||
|
||
try{
|
||
if(dadosBoleto != null){
|
||
transacaoTitulos.addInnerRecord(createRateioDeCredito(rateioDeCredito));
|
||
}
|
||
}catch(UnsupportedOperationException e){ }
|
||
|
||
getFlatFile().addRecord(transacaoTitulos);
|
||
}
|
||
|
||
@Override
|
||
protected Record createDadosBoletos(DadosBoleto boleto) {
|
||
throw new UnsupportedOperationException("N<>o necess<73>rio...");
|
||
}
|
||
|
||
@Override
|
||
protected Record createRateioDeCredito(RateioDeCredito rateioDeCredito) {
|
||
throw new UnsupportedOperationException("N<>o necess<73>rio...");
|
||
}
|
||
|
||
@Override
|
||
protected void createTrailler(RodapeRemessa trailler) {
|
||
|
||
Record trailer = getFlatFile().createRecord("Trailler");
|
||
|
||
trailer.setValue("NumeroSequencialRegistro", FormataUtil.formatarValorPorTamanho(trailler.getNumeroSequencialRegistro().toString(), 6));
|
||
|
||
getFlatFile().addRecord(trailer);
|
||
}
|
||
|
||
@Override
|
||
protected CabecalhoRetorno readHeader(Record header) {
|
||
throw new UnsupportedOperationException("Somente classe de Retorno.");
|
||
}
|
||
|
||
@Override
|
||
protected List<DetalheRetorno> readTransacaoTitulos(Collection<Record> registrosDeTransacoes) {
|
||
throw new UnsupportedOperationException("Somente classe de Retorno.");
|
||
}
|
||
|
||
@Override
|
||
protected RodapeRetorno readTrailler(Record trailler) {
|
||
throw new UnsupportedOperationException("Somente classe de Retorno.");
|
||
}
|
||
}
|