Example #1
0
        public void FormataChave(Boleto boleto)
        {
            string zeros     = "000";
            string agencia   = boleto.Cedente.ContaBancaria.Agencia;
            string conta     = boleto.Cedente.ContaBancaria.Conta + boleto.Cedente.ContaBancaria.DigitoConta;
            int    categoria = 1;

            boleto.Categoria = categoria;
            string nossonumero = boleto.NossoNumero;
            string banco       = Utils.FormatCode(Codigo.ToString(), 3);

            //Mod10 dentro da classe Banco_BRB pelas particularidades que ela tem.
            int d1 = Banco_BRB.Mod10(zeros + agencia + conta + categoria + nossonumero + banco);
            int d2 = Banco_BRB.Mod11_NossoNumero(zeros + agencia + conta + categoria + nossonumero + banco + d1, 7);

            if (d2 > 10)
            {
                d1 += 1;
                d2 -= 20;
            }

            boleto.CodigoBarra.Chave = zeros + agencia + conta + categoria + nossonumero + banco + d1 + d2;
        }