/** * Dado um título, cria um campo livre para o padrão do Banco do Brasil que tenha o nosso número * de tamanho 11. * * @param titulo título com as informações para geração do campo livre */ CLBancoDoBrasilNN11(Titulo titulo) { super(FIELDS_LENGTH); ContaBancaria conta = titulo.getContaBancaria(); String nossoNumero = titulo.getNossoNumero(); this.add(new Field<String>(nossoNumero, 11, Filler.ZERO_LEFT)); this.add(new Field<Integer>(conta.getAgencia().getCodigo(), 4, Filler.ZERO_LEFT)); this.add(new Field<Integer>(conta.getNumeroDaConta().getCodigoDaConta(), 8, Filler.ZERO_LEFT)); this.add(new Field<Integer>(conta.getCarteira().getCodigo(), 2, Filler.ZERO_LEFT)); }
/** * Dado um título, cria o campo livre do Banco Itaú para carteiras especiais. * * @param titulo título com as informações para geração do campo livre */ public CLItauComCarteirasEspeciais(Titulo titulo) { super(FIELDS_LENGTH); ContaBancaria conta = titulo.getContaBancaria(); this.add(new Field<Integer>(conta.getCarteira().getCodigo(), 3, Filler.ZERO_LEFT)); this.add(new Field<String>(titulo.getNossoNumero(), 8, Filler.ZERO_LEFT)); this.add(new Field<String>(titulo.getNumeroDoDocumento(), 7, Filler.ZERO_LEFT)); // Aqui é o código do cedente, simbolizado pelo código da conta bancária. this.add(new Field<Integer>(conta.getNumeroDaConta().getCodigoDaConta(), 5, Filler.ZERO_LEFT)); this.add( new Field<Integer>( calculeDigitoDoCampoLivreEspecial( conta.getCarteira().getCodigo(), titulo.getNossoNumero(), titulo.getNumeroDoDocumento(), conta.getNumeroDaConta().getCodigoDaConta()), 1)); this.add(new Field<Integer>(0, 1)); }