/// <summary> /// Validações particulares do banco Banestes /// </summary> public override void ValidaBoleto(Boleto boleto) { try { //Carteiras válidas // 00 - Sem registro; //Atribui o nome do banco ao local de pagamento boleto.LocalPagamento += Nome + ". Após o vencimento, somente no BANESTES"; //Verifica se o nosso número é válido if (Utils.ToInt64(boleto.NossoNumero) == 0) throw new NotImplementedException("Nosso número inválido"); //Verifica se data do processamento é valida if (boleto.DataProcessamento == DateTime.MinValue) boleto.DataProcessamento = DateTime.Now; //Verifica se data do documento é valida if (boleto.DataDocumento == DateTime.MinValue) boleto.DataDocumento = DateTime.Now; boleto.FormataCampos(); } catch (Exception e) { throw new Exception("Erro ao validar boletos.", e); } }
public override void ValidaBoleto(Boleto boleto) { //throw new NotImplementedException("Função não implementada."); if (!((boleto.Carteira == "102") || (boleto.Carteira == "101") || (boleto.Carteira == "201"))) { throw new NotImplementedException("Carteira Não implementada."); } //Banco 353 - Utilizar somente 08 posições do Nosso Numero (07 posições + DV), zerando os 05 primeiros dígitos if (this.Codigo == 353) { if (boleto.NossoNumero.Length != 7) { throw new NotImplementedException("Nosso Número deve ter 7 posições para o banco 353."); } } //Banco 008 - Utilizar somente 09 posições do Nosso Numero (08 posições + DV), zerando os 04 primeiros dígitos if (this.Codigo == 8) { if (boleto.NossoNumero.Length != 8) { throw new NotImplementedException("Nosso Número deve ter 7 posições para o banco 008."); } } if (this.Codigo == 33) { if (boleto.NossoNumero.Length != 12) { throw new NotImplementedException("Nosso Número deve ter 12 posições para o banco 033."); } } if (boleto.Cedente.Codigo.ToString().Length > 7) { throw new NotImplementedException("Código cedente deve ter 7 posições."); } boleto.LocalPagamento += "Grupo Santander - GC"; if (EspecieDocumento.ValidaSigla(boleto.EspecieDocumento) == "") { boleto.EspecieDocumento = new EspecieDocumento_Santander(2); } boleto.FormataCampos(); }
void IBanco.ValidaBoleto(Boleto boleto) { //throw new NotImplementedException("Função não implementada."); if ((boleto.Carteira != "01")) { throw new NotImplementedException("Carteira não implementada."); } if (boleto.NossoNumero.Length != 9) { throw new NotSupportedException("Nosso Número deve ter 9 posições para o banco 085."); } boleto.LocalPagamento = "PAGAVEL PREFERENCIALMENTE NAS COOPERATIVAS DO SISTEMA CECRED. APOS VENCIMENTO PAGAR SOMENTE NA COOPERATIVA"; //if (EspecieDocumento.ValidaSigla(boleto.EspecieDocumento) == "") // boleto.EspecieDocumento = new EspecieDocumento_Santander("2"); boleto.FormataCampos(); }
/// <summary> /// Validações particulares do banco Banestes /// </summary> public override void ValidaBoleto(Boleto boleto) { try { //Carteiras válidas // 00 - Sem registro; //Atribui o nome do banco ao local de pagamento boleto.LocalPagamento += Nome + ". Após o vencimento, somente no BANESTES"; //Verifica se o nosso número é válido if (Utils.ToInt64(boleto.NossoNumero) == 0) { throw new NotImplementedException("Nosso número inválido"); } //Verifica se data do processamento é valida if (boleto.DataProcessamento == DateTime.MinValue) { boleto.DataProcessamento = DateTime.Now; } //Verifica se data do documento é valida if (boleto.DataDocumento == DateTime.MinValue) { boleto.DataDocumento = DateTime.Now; } boleto.FormataCampos(); } catch (Exception e) { throw new Exception("Erro ao validar boletos.", e); } }
/// <summary> /// Validações particulares do banco Itaú /// </summary> public override void ValidaBoleto(Boleto boleto) { try { //Carteiras válidas int[] cv = new int[] { 175, 176, 178, 109, 198, 107, 122, 142, 143, 196, 126, 131, 146, 150, 169, 157 };//Flavio([email protected]) - adicionado a carteira 109 bool valida = false; foreach (int c in cv) { if (Utils.ToString(boleto.Carteira) == Utils.ToString(c)) { valida = true; } } if (!valida) { StringBuilder carteirasImplementadas = new StringBuilder(100); carteirasImplementadas.Append(". Carteiras implementadas: "); foreach (int c in cv) { carteirasImplementadas.AppendFormat(" {0}", c); } throw new NotImplementedException("Carteira não implementada: " + boleto.Carteira + carteirasImplementadas.ToString()); } //Verifica se o tamanho para o NossoNumero são 8 dígitos if (Convert.ToInt32(boleto.NossoNumero).ToString().Length > 8) { throw new NotImplementedException("A quantidade de dígitos do nosso número para a carteira " + boleto.Carteira + ", são 8 números."); } else if (Convert.ToInt32(boleto.NossoNumero).ToString().Length < 8) { boleto.NossoNumero = Utils.FormatCode(boleto.NossoNumero, 8); } //É obrigatório o preenchimento do número do documento if (boleto.Carteira == "106" || boleto.Carteira == "107" || boleto.Carteira == "122" || boleto.Carteira == "142" || boleto.Carteira == "143" || boleto.Carteira == "195" || boleto.Carteira == "196" || boleto.Carteira == "198" || boleto.Carteira == "157") { if (Utils.ToInt32(boleto.NumeroDocumento) == 0) { throw new NotImplementedException("O número do documento não pode ser igual a zero."); } } //Formato o número do documento if (Utils.ToInt32(boleto.NumeroDocumento) > 0) { boleto.NumeroDocumento = Utils.FormatCode(boleto.NumeroDocumento, 7); } // Calcula o DAC do Nosso Número a maioria das carteiras // agencia/conta/carteira/nosso numero if (boleto.Carteira != "126" && boleto.Carteira != "131" && boleto.Carteira != "146" && boleto.Carteira != "150" && boleto.Carteira != "168") { _dacNossoNumero = Mod10(boleto.Cedente.ContaBancaria.Agencia + boleto.Cedente.ContaBancaria.Conta + boleto.Carteira + boleto.NossoNumero); } else { // Excessão 126 - 131 - 146 - 150 - 168 // carteira/nosso numero _dacNossoNumero = Mod10(boleto.Carteira + boleto.NossoNumero); } // Calcula o DAC da Conta Corrente boleto.Cedente.ContaBancaria.DigitoConta = Mod10(boleto.Cedente.ContaBancaria.Agencia + boleto.Cedente.ContaBancaria.Conta).ToString(); //Atribui o nome do banco ao local de pagamento boleto.LocalPagamento += Nome + ". Após o vencimento, somente no ITAÚ"; //Verifica se o nosso número é válido if (Utils.ToInt64(boleto.NossoNumero) == 0) { throw new NotImplementedException("Nosso número inválido"); } //Verifica se data do processamento é valida if (boleto.DataProcessamento.ToString("dd/MM/yyyy") == "01/01/0001") { boleto.DataProcessamento = DateTime.Now; } //Verifica se data do documento é valida if (boleto.DataDocumento.ToString("dd/MM/yyyy") == "01/01/0001") { boleto.DataDocumento = DateTime.Now; } boleto.FormataCampos(); } catch (Exception e) { throw new Exception("Erro ao validar boletos.", e); } }
public override void ValidaBoleto(Boleto boleto) { //throw new NotImplementedException("Função não implementada."); if (!((boleto.Carteira == "102") || (boleto.Carteira == "101") || (boleto.Carteira == "201"))) throw new NotImplementedException("Carteira não implementada."); //Banco 353 - Utilizar somente 08 posições do Nosso Numero (07 posições + DV), zerando os 05 primeiros dígitos if (this.Codigo == 353) { if (boleto.NossoNumero.Length != 7) throw new NotImplementedException("Nosso Número deve ter 7 posições para o banco 353."); } //Banco 008 - Utilizar somente 09 posições do Nosso Numero (08 posições + DV), zerando os 04 primeiros dígitos if (this.Codigo == 8) { if (boleto.NossoNumero.Length != 8) throw new NotImplementedException("Nosso Número deve ter 7 posições para o banco 008."); } if (this.Codigo == 33) { if (boleto.NossoNumero.Length == 7 && boleto.Carteira.Equals("101")) boleto.NossoNumero = Utils.FormatCode(boleto.NossoNumero,"0", 12, true); if (boleto.NossoNumero.Length != 12) throw new NotSupportedException("Nosso Número deve ter 12 posições para o banco 033."); } if (boleto.Cedente.Codigo.ToString().Length > 7) throw new NotImplementedException("Código cedente deve ter 7 posições."); boleto.LocalPagamento += "Grupo Santander - GC"; if (EspecieDocumento.ValidaSigla(boleto.EspecieDocumento) == "") boleto.EspecieDocumento = new EspecieDocumento_Santander("2"); if (boleto.PercentualIOS > 10 & (this.Codigo == 8 || this.Codigo == 33 || this.Codigo == 353)) throw new Exception("O percentual do IOS é limitado a 9% para o Banco Santander"); boleto.FormataCampos(); }
/// <summary> /// Validações particulares do banco Itaú /// </summary> public override void ValidaBoleto(Boleto boleto) { try { //Carteiras válidas int[] cv = new int[] { 175, 176, 178, 109, 198, 107, 122, 142, 143, 196, 126, 131, 146, 150, 169 };// carteira 109 bool valida = false; foreach (int c in cv) if (Utils.ToString(boleto.Carteira) == Utils.ToString(c)) valida = true; if (!valida) { StringBuilder carteirasImplementadas = new StringBuilder(100); carteirasImplementadas.Append(". Carteiras implementadas: "); foreach (int c in cv) { carteirasImplementadas.AppendFormat(" {0}", c); } throw new NotImplementedException("Carteira não implementada: " + boleto.Carteira + carteirasImplementadas.ToString()); } //Verifica se o tamanho para o NossoNumero são 8 dígitos if (Convert.ToInt32(boleto.NossoNumero).ToString().Length > 8) throw new NotImplementedException("A quantidade de dígitos do nosso número para a carteira " + boleto.Carteira + ", são 8 números."); else if (Convert.ToInt32(boleto.NossoNumero).ToString().Length < 8) boleto.NossoNumero = Utils.FormatCode(boleto.NossoNumero, 8); //É obrigatório o preenchimento do número do documento if (boleto.Carteira == "106" || boleto.Carteira == "107" || boleto.Carteira == "122" || boleto.Carteira == "142" || boleto.Carteira == "143" || boleto.Carteira == "195" || boleto.Carteira == "196" || boleto.Carteira == "198") { if (Utils.ToInt32(boleto.NumeroDocumento) == 0) throw new NotImplementedException("O número do documento não pode ser igual a zero."); } //Formato o número do documento if (Utils.ToInt32(boleto.NumeroDocumento) > 0) boleto.NumeroDocumento = Utils.FormatCode(boleto.NumeroDocumento, 7); // Calcula o DAC do Nosso Número a maioria das carteiras // agencia/conta/carteira/nosso numero if (boleto.Carteira != "126" && boleto.Carteira != "131" && boleto.Carteira != "146" && boleto.Carteira != "150" && boleto.Carteira != "168") _dacNossoNumero = Mod10(boleto.Cedente.ContaBancaria.Agencia + boleto.Cedente.ContaBancaria.Conta + boleto.Carteira + boleto.NossoNumero); else // Excessão 126 - 131 - 146 - 150 - 168 // carteira/nosso numero _dacNossoNumero = Mod10(boleto.Carteira + boleto.NossoNumero); // Calcula o DAC da Conta Corrente boleto.Cedente.ContaBancaria.DigitoConta = Mod10(boleto.Cedente.ContaBancaria.Agencia + boleto.Cedente.ContaBancaria.Conta).ToString(); //Atribui o nome do banco ao local de pagamento boleto.LocalPagamento += Nome + ". Após o vencimento, somente no ITAÚ"; //Verifica se o nosso número é válido if (Utils.ToInt64(boleto.NossoNumero) == 0) throw new NotImplementedException("Nosso número inválido"); //Verifica se data do processamento é valida if (boleto.DataProcessamento.ToString("dd/MM/yyyy") == "01/01/0001") boleto.DataProcessamento = DateTime.Now; //Verifica se data do documento é valida if (boleto.DataDocumento.ToString("dd/MM/yyyy") == "01/01/0001") boleto.DataDocumento = DateTime.Now; boleto.FormataCampos(); } catch (Exception e) { throw new Exception("Erro ao validar boletos.", e); } }
public override void ValidaBoleto(Boleto boleto) { //throw new NotImplementedException("Função não implementada."); if (!((boleto.Carteira == "102") || (boleto.Carteira == "101") || (boleto.Carteira == "201"))) throw new NotImplementedException("Carteira Não implementada."); //Banco 353 - Utilizar somente 08 posições do Nosso Numero (07 posições + DV), zerando os 05 primeiros dígitos if (this.Codigo == 353) { if (boleto.NossoNumero.Length != 7) throw new NotImplementedException("Nosso Número deve ter 7 posições para o banco 353."); } //Banco 008 - Utilizar somente 09 posições do Nosso Numero (08 posições + DV), zerando os 04 primeiros dígitos if (this.Codigo == 8) { if (boleto.NossoNumero.Length != 8) throw new NotImplementedException("Nosso Número deve ter 7 posições para o banco 008."); } if (this.Codigo == 33) { if (boleto.NossoNumero.Length != 12) throw new NotImplementedException("Nosso Número deve ter 12 posições para o banco 033."); } if (boleto.Cedente.Codigo.ToString().Length > 7) throw new NotImplementedException("Código cedente deve ter 7 posições."); boleto.LocalPagamento += "Grupo Santander - GC"; if(EspecieDocumento.ValidaSigla(boleto.EspecieDocumento) == "") boleto.EspecieDocumento = new EspecieDocumento_Santander(2); boleto.FormataCampos(); }
public override void ValidaBoleto(Boleto boleto) { //throw new NotImplementedException("Função não implementada."); if (!((boleto.Carteira == "102") || (boleto.Carteira == "101") || (boleto.Carteira == "201"))) { string exceptionMessage = String.Format("A carteira '{0}' não foi implementada. Carteiras válidas: 101, 102 e 201.", boleto.Carteira); throw new NotImplementedException(exceptionMessage); } //Banco 353 - Utilizar somente 08 posições do Nosso Numero (07 posições + DV), zerando os 05 primeiros dígitos if (this.Codigo == 353) { if (boleto.NossoNumero.Length != 7) throw new NotImplementedException("Nosso Número deve ter 7 posições para o banco 353."); } //Banco 008 - Utilizar somente 09 posições do Nosso Numero (08 posições + DV), zerando os 04 primeiros dígitos if (this.Codigo == 8) { if (boleto.NossoNumero.Length != 8) throw new NotImplementedException("Nosso Número deve ter 7 posições para o banco 008."); } if (this.Codigo == 33) { if (boleto.NossoNumero.Length < 12 && (boleto.Carteira.Equals("101") || boleto.Carteira.Equals("102"))) boleto.NossoNumero = Utils.FormatCode(boleto.NossoNumero, "0", 12, true); if (boleto.NossoNumero.Length != 12) throw new NotSupportedException("Nosso Número deve ter 12 posições para o banco 033."); } if (boleto.Cedente.Codigo.ToString().Length > 8) throw new NotImplementedException("Código cedente deve ter 8 posições."); // Atribui o nome do banco ao local de pagamento if (string.IsNullOrEmpty(boleto.LocalPagamento)) boleto.LocalPagamento = "Grupo Santander - GC"; if (EspecieDocumento.ValidaSigla(boleto.EspecieDocumento) == "") boleto.EspecieDocumento = new EspecieDocumento_Santander("2"); if (boleto.PercentualIOS > 10 & (this.Codigo == 8 || this.Codigo == 33 || this.Codigo == 353)) throw new Exception("O percentual do IOS é limitado a 9% para o Banco Santander"); boleto.FormataCampos(); }
void IBanco.ValidaBoleto(Boleto boleto) { //throw new NotImplementedException("Função não implementada."); if ((boleto.Carteira != "01")) throw new NotImplementedException("Carteira não implementada."); if (boleto.NossoNumero.Length != 9) throw new NotSupportedException("Nosso Número deve ter 9 posições para o banco 085."); boleto.LocalPagamento = "PAGAVEL PREFERENCIALMENTE NAS COOPERATIVAS DO SISTEMA CECRED. APOS VENCIMENTO PAGAR SOMENTE NA COOPERATIVA"; //if (EspecieDocumento.ValidaSigla(boleto.EspecieDocumento) == "") // boleto.EspecieDocumento = new EspecieDocumento_Santander("2"); boleto.FormataCampos(); }