Ejemplo n.º 1
0
        public IList <Batida> obterBatidasPorData(String idFuncionario, DateTime inicio, DateTime fim)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            List <Batida> batidas = (List <Batida>)AcessaDadosConstrutor.iniciar(ad)
                                    .adicionaSQL(@"select *
                                from Batida
                                where data between @inicio and @fim 
                                and idFuncionario = @idFuncionario
                                order by data desc, hora")
                                    .adicionaParametro("idFuncionario", idFuncionario)
                                    .adicionaParametro("inicio", inicio)
                                    .adicionaParametro("fim", fim)
                                    .obterLista <Batida>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(batidas);
        }
Ejemplo n.º 2
0
        public JornadaTrabalho IdentificarJornadaTrabalho(String idFuncionario, String horario)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            //Consulta as jornadas, tanto alternativas, quanto a normal
            IList <JornadaTrabalho> jornadas = AcessaDadosConstrutor.iniciar(ad)
                                               .adicionaSQL("SELECT idJornada id, inicio, fim, intervalo, minintervalo, maxintervalo, 0, 0, 0")
                                               .adicionaSQL(" FROM JornadaAlternativaBanpara")
                                               .adicionaSQL(String.Format(" WHERE idFuncionario = '{0}'", idFuncionario))
                                               .obterLista <JornadaTrabalho>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            TimeSpan        horaPrimeiraBatida = stringParaTimeSpan(horario);
            JornadaTrabalho definida           = jornadas.First();

            foreach (JornadaTrabalho j in jornadas)
            {
                double diferenca = Math.Abs(j.Inicio.Subtract(horaPrimeiraBatida).TotalSeconds);
                if (diferenca < Math.Abs(definida.Inicio.Subtract(horaPrimeiraBatida).TotalSeconds))
                {
                    definida = j;
                }
            }

            return(definida);
        }
Ejemplo n.º 3
0
        public Batida detectarBatidaRecente(String idFuncionario, int periodoEntreBatidas)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            TimeSpan horaAtualPrimeiroSegundo = new TimeSpan(DateTime.Now.Hour, DateTime.Now.Minute, 0);
            TimeSpan horaAtualUltimoSegundo   = new TimeSpan(horaAtualPrimeiroSegundo.Hours, horaAtualPrimeiroSegundo.Minutes, 59);

            IList <Batida> r = AcessaDadosConstrutor.iniciar(ad)
                               .adicionaSQL(@"select * from batida where idfuncionario = '{0}' and data = CAST('{1:yyyyMMdd}' as date) and 
                                        hora BETWEEN cast(dateadd(MINUTE, cast('-{2}' as int), cast('{3}' as time(0))) as time(0)) AND cast('{4}' as time(0))",
                                            idFuncionario, DateTime.Today, periodoEntreBatidas, horaAtualPrimeiroSegundo, horaAtualUltimoSegundo)
                               .obterLista <Batida>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(r.FirstOrDefault());
        }
Ejemplo n.º 4
0
        public IList <Autorizacao> obterTodasPorData(String id, DateTime inicio, DateTime fim)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Autorizacao> lista = AcessaDadosConstrutor.iniciar(ad)
                                        .adicionaSQL(@"select * 
                                from Autorizacao a
                                where idFuncionario = @idFuncionario
                                and a.data between @dataInicio and @dataFim")
                                        .adicionaParametro("idFuncionario", id)
                                        .adicionaParametro("dataInicio", inicio.Date)
                                        .adicionaParametro("dataFim", fim.Date)
                                        .obterLista <Autorizacao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista);
        }
Ejemplo n.º 5
0
        public IList <Autorizacao> ObterAutorizacoesDoDiaNaoNotificadas(String idFuncionario)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Autorizacao> lista = AcessaDadosConstrutor.iniciar(ad)
                                        .adicionaSQL(@"select *
                               from Autorizacao
                               where idFuncionario = @idFuncionario
                                    and data = @data
                                    and notificado = 0")
                                        .adicionaParametro("idFuncionario", idFuncionario)
                                        .adicionaParametro("data", DateTime.Today)
                                        .obterLista <Autorizacao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista);
        }
Ejemplo n.º 6
0
        public IList <Batida> obterBatidasDoDia(String idFuncionario)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Batida> batidas = AcessaDadosConstrutor.iniciar(ad)
                                     .adicionaSQL(@"select *
                                from Batida
                                where data = @data and idFuncionario = @idFuncionario
                                order by data desc, hora")
                                     .adicionaParametro("idFuncionario", idFuncionario)
                                     .adicionaParametro("data", DateTime.Today)
                                     .obterLista <Batida>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(batidas);
        }
Ejemplo n.º 7
0
        public IList <Autorizacao> obterTodasAPartirDaData(String id, DateTime data)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Autorizacao> lista = AcessaDadosConstrutor.iniciar(ad)
                                        .adicionaSQL(@"select * 
                                from Autorizacao a
                                where idFuncionario = @idFuncionario
                                and a.data >= @data")
                                        .adicionaParametro("idFuncionario", id)
                                        .adicionaParametro("data", data)
                                        .obterLista <Autorizacao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista);
        }
Ejemplo n.º 8
0
        //VERIFICA SE ESTÁ NO LIMITE DE TOLERÂNCIA DE 5'
        public Batida obterBatidaTolereancia(String idFuncionario)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Batida> lista = AcessaDadosConstrutor.iniciar(ad)
                                   .adicionaSQL(" select FB.id, FB.NOME, JT.inicio, JT.fim  from FuncionarioBanpara FB ")
                                   .adicionaSQL(" inner join JornadaTrabalhoBanpara JT on ")
                                   .adicionaSQL(" (FB.idJornada = JT.id) ")
                                   .adicionaSQL(" where FB.id = @idFuncionario ")
                                   .adicionaSQL(" and (JT.inicio >= CAST(DATEADD(MINUTE, -5, cast(@horaAgora as datetime))as time(0)) ")
                                   .adicionaSQL(" and JT.inicio <= CAST(DATEADD(MINUTE, 5+1, cast(@horaAgora as datetime))as time(0)) )")
                                   .adicionaSQL(" OR (JT.fim >= CAST(DATEADD(MINUTE, -5, cast(@horaAgora as datetime))as time(0)) ")
                                   .adicionaSQL(" and JT.fim <= CAST(DATEADD(MINUTE, 5+1, cast(@horaAgora as datetime))as time(0)) )")
                                   .adicionaParametro("idFuncionario", idFuncionario)
                                   .adicionaParametro("horaAgora", DateTime.Now.TimeOfDay)
                                   .obterLista <Batida>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista.FirstOrDefault());
        }
Ejemplo n.º 9
0
        //VERIFICAR SE O USUÁRIO POSSUI DESBLOQUEIO
        public Batida obterAutorizacoesDesbloqueioDoDia(String idFuncionario)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Batida> lista = AcessaDadosConstrutor.iniciar(ad)
                                   .adicionaSQL(" select idFuncionario, data, inicio, fim ")
                                   .adicionaSQL(" from Autorizacao ")
                                   .adicionaSQL(" where idFuncionario = @idFuncionario ")
                                   .adicionaSQL(" and data = @data ")
                                   .adicionaParametro("idFuncionario", idFuncionario)
                                   .adicionaParametro("data", DateTime.Today)
                                   .obterLista <Batida>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista.FirstOrDefault());
        }
Ejemplo n.º 10
0
        public Boolean verificaSeBloqueada(String id)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Lotacao> r = AcessaDadosConstrutor.iniciar(ad)
                                .adicionaSQL(@"SELECT *
                                FROM LotacaoBanpara l
                                inner join NaoBloqueiaLotacao nb on l.id = nb.idLotacao
                                where l.id like @id
                                order by l.descricao")
                                .adicionaParametro("id", id)
                                .obterLista <Lotacao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(r.Count > 0);
        }
Ejemplo n.º 11
0
        public IList <Funcionario> obterDaMesmaLotacaoPorMatricula(String id, String lotacao)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            String condicao = String.Format(" Where {0} in ('{1}')", sqlConstrutor.obterNomeMapeado(f => f.Id), id);

            if (lotacao != null)
            {
                condicao += String.Format(" and LotacaoId = '{0}'", lotacao);
            }

            IList <Funcionario> lista = AcessaDadosConstrutor.iniciar(ad)
                                        .adicionaSQL(sqlConstrutor.obterSelect())
                                        .adicionaSQL(sqlConstrutor.obterFrom())
                                        .adicionaSQL(condicao)
                                        .obterLista <Funcionario>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista);
        }
Ejemplo n.º 12
0
        public MemoryStream obterBatidasArquivo(DateTime inicio, DateTime fim)
        {
            const String sql = @"select '+086' + Hora + Dia + Mes + Ano + Chapa + cnpj as linha
                            from (
	                            select replace(cast(hora as varchar(5)), ':','') Hora,
		                            CASE 
			                            WHEN DAY(data) < 10 THEN '0' + cast(DAY(data) as varchar(2))
			                            ELSE cast(DAY(data) as varchar(2))
		                            END Dia,
		                            CASE 
			                            WHEN MONTH(data) < 10 THEN '0' + cast(MONTH(data) as varchar(2))
			                            ELSE cast(MONTH(data) as varchar(2))
		                            END Mes,
		                            Substring(cast(YEAR(data) as varchar), 3, 4) Ano,
		                            b.idFuncionario Chapa,
									f.cnpj
	                            from Batida b
								INNER JOIN FuncionarioBanpara f on (b.idFuncionario = f.id)
	                            where data between @data and @dataFim
                            )tmp
                            --where (('+086' + Hora + Dia + Mes + Ano + Chapa + cnpj) is not null)
                            order by Chapa, Hora, Dia, Mes, Ano";

            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IDataReader dr = AcessaDadosConstrutor.iniciar(ad)
                             .adicionaSQL(sql)
                             .adicionaParametro("data", inicio)
                             .adicionaParametro("dataFim", fim)
                             .obterDataReader();

            MemoryStream ms    = new MemoryStream();
            TextWriter   lista = new StreamWriter(ms);

            while (dr.Read())
            {
                lista.WriteLine(dr.GetString(0));
            }
            dr.Close();
            lista.Flush();

            if (controleInterno)
            {
                ad.fechaConexao();
            }
            return(ms);
        }
Ejemplo n.º 13
0
        public IList <Lotacao> obterLotacoesPorFuncionario(String idFuncionario, DateTime data)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IDataReader dr = AcessaDadosConstrutor.iniciar(ad)
                             .adicionaSQL(@"select idLotacao
                                            from ResponsavelLotacao 
                                            where idFuncionario = @idFuncionario
                                            and @data between inicio and isnull(fim, '99990101')")
                             .adicionaParametro("idFuncionario", idFuncionario)
                             .adicionaParametro("data", data.Date)
                             .obterDataReader();

            String        campoId = sqlConstrutor.obterNomeMapeado(l => l.Id);
            StringBuilder sb      = new StringBuilder("(");

            sb.AppendFormat("{0} like ''", campoId);

            while (dr.Read())
            {
                sb.AppendFormat(" or {0} like '%{1}%'", campoId, dr.GetString(0));
            }

            dr.Close();

            sb.Append(")");
            String where = sb.ToString();

            IList <Lotacao> lista = AcessaDadosConstrutor.iniciar(ad)
                                    .adicionaSQL(sqlConstrutor.obterSqlCompleto())
                                    .adicionaSQL(@" where {0}", where)
                                    .adicionaSQL(" order by descricao")
                                    .obterLista <Lotacao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista);
        }
Ejemplo n.º 14
0
        public IList <Autorizacao> obterTodasDoFuncionario(String idFuncionario)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Autorizacao> lista = AcessaDadosConstrutor.iniciar(ad)
                                        .adicionaSQL("select * from Autorizacao where idFuncionario = @idFuncionario order by data DESC")
                                        .adicionaParametro("idFuncionario", idFuncionario)
                                        .obterLista <Autorizacao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista);
        }
Ejemplo n.º 15
0
        public IList <Funcionario> obterPorMatricula(String idMatricula)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Funcionario> lista = AcessaDadosConstrutor.iniciar(ad)
                                        .adicionaSQL(sqlConstrutor.obterSelect())
                                        .adicionaSQL(sqlConstrutor.obterFrom())
                                        .adicionaSQL(" Where {0} in ('{1}')", sqlConstrutor.obterNomeMapeado(f => f.Id), idMatricula)
                                        .obterLista <Funcionario>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista);
        }
Ejemplo n.º 16
0
        public IList <Lotacao> obterTodosExcetoNaoBloqueadas()
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Lotacao> r = AcessaDadosConstrutor.iniciar(ad)
                                .adicionaSQL(@"SELECT *
                                FROM LotacaoBanpara l
                                where id not in (select idLotacao from NaoBloqueiaLotacao)")
                                .obterLista <Lotacao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(r);
        }
Ejemplo n.º 17
0
        public Operacao obterPorNome(String nome)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Operacao> lista = AcessaDadosConstrutor.iniciar(ad)
                                     .adicionaSQL(sqlConstrutor.obterSqlCompleto())
                                     .adicionaSQL(" Where ")
                                     .adicionaSqlComParametro(sqlConstrutor, sqlConstrutor.obterNomeMapeado(o => o.Nome), nome)
                                     .obterLista <Operacao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista.FirstOrDefault());
        }
Ejemplo n.º 18
0
        public IList <Lotacao> obterLotacoesNaoBloqueadas()
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Lotacao> r = AcessaDadosConstrutor.iniciar(ad)
                                .adicionaSQL(@"SELECT *
                              FROM LotacaoBanpara l
                              inner join NaoBloqueiaLotacao nb on l.id = nb.idLotacao
                              order by l.descricao").obterLista <Lotacao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(r);
        }
Ejemplo n.º 19
0
        public Funcionario obterPorLoginAD(string loginAd)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Funcionario> lista = AcessaDadosConstrutor.iniciar(ad)
                                        .adicionaSQL(sqlConstrutor.obterSelect())
                                        .adicionaSQL(sqlConstrutor.obterFrom())
                                        .adicionaSQL(" Where ")
                                        .adicionaSqlComParametro(sqlConstrutor, sqlConstrutor.obterNomeMapeado(f => f.LoginAD), loginAd)
                                        .obterLista <Funcionario>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista.FirstOrDefault());
        }
Ejemplo n.º 20
0
        public IList <JornadaTrabalho> obterNormalEAlternativas(String idFuncionario)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            //Consulta as jornadas, tanto alternativas, quanto a normal
            IList <JornadaTrabalho> jornadas = AcessaDadosConstrutor.iniciar(ad)
                                               .adicionaSQL("SELECT idJornada id, inicio, fim, intervalo, minintervalo, maxintervalo, 0, 0, 0")
                                               .adicionaSQL(" FROM JornadaAlternativaBanpara")
                                               .adicionaSQL(String.Format(" WHERE idFuncionario = '{0}'", idFuncionario))
                                               .obterLista <JornadaTrabalho>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(jornadas);
        }
Ejemplo n.º 21
0
        public override IList <Lotacao> obterTodos()
        {
            StringBuilder sql = new StringBuilder();

            sql.AppendFormat("SELECT * FROM {0} order by descricao", obterTabela());

            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Lotacao> r = AcessaDadosConstrutor.iniciar(ad)
                                .adicionaSQL(sql.ToString()).obterLista <Lotacao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(r);
        }
Ejemplo n.º 22
0
        //MÉTODO OBSOLETO NA VERSÃO 1.5.2 (entregue em 05/04/2016)
        public IList <Usuario> obterPorLoginEmail(String login, String email)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <Usuario> lista = AcessaDadosConstrutor.iniciar(ad)
                                    .adicionaSQL("select * from Usuario where ativo = 1")
                                    .adicionaSobCondicional(String.IsNullOrEmpty(login), " and login like @login", "login", String.Format("%{0}%", login))
                                    .adicionaSobCondicional(String.IsNullOrEmpty(email), " and email like @email", "email", String.Format("%{0}%", email))
                                    .adicionaSQL(" Order by login")
                                    .obterLista <Usuario>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(lista);
        }
Ejemplo n.º 23
0
        public IList <ParametroConfiguracao> obterParametroConfiguracao(String sistema, String modulo, String item)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <ParametroConfiguracao> r = AcessaDadosConstrutor.iniciar(ad)
                                              .adicionaSQL(@"SELECT *
                              FROM " +
                                                           obterTabela() +
                                                           String.Format(" WHERE sistema = '{0}' AND modulo = '{1}' AND item = '{2}'", sistema, modulo, item))
                                              .obterLista <ParametroConfiguracao>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(r);
        }
Ejemplo n.º 24
0
        public IList <PlanoDeContas> ObterPorCodigoConta(int codConta)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <PlanoDeContas> planosDeConta = AcessaDadosConstrutor.iniciar(ad)
                                                  .adicionaSQL(@" SELECT *
                                                        FROM PlanoContas
                                                        WHERE codContas = @codConta
                                                        ORDER BY descricao")
                                                  .adicionaParametro("codConta", codConta)
                                                  .obterLista <PlanoDeContas>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(planosDeConta);
        }
Ejemplo n.º 25
0
        public IList <PlanoDeContas> obterPorChaves(int codCli, int codConta)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <PlanoDeContas> planosDeConta = AcessaDadosConstrutor.iniciar(ad)
                                                  .adicionaSQL(@" SELECT *
                                                        FROM PlanoContas
                                                        WHERE codCli = @codCli AND codContas = @codConta")
                                                  .adicionaParametro("codCli", codCli)
                                                  .adicionaParametro("codConta", codConta)
                                                  .obterLista <PlanoDeContas>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(planosDeConta);
        }
Ejemplo n.º 26
0
        public IList <PlanoDeContas> ObterPorBooleanAnaliticas(bool analitica)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <PlanoDeContas> planosDeConta = AcessaDadosConstrutor.iniciar(ad)
                                                  .adicionaSQL(@" SELECT *
                                                        FROM PlanoContas
                                                        WHERE analitica = @analitica
                                                        ORDER BY descricao")
                                                  .adicionaParametro("analitica", analitica)
                                                  .obterLista <PlanoDeContas>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(planosDeConta);
        }
Ejemplo n.º 27
0
        public IList <PlanoDeContas> ObterPorDescricao(String descricao)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <PlanoDeContas> planosDeConta = AcessaDadosConstrutor.iniciar(ad)
                                                  .adicionaSQL(@" SELECT *
                                                        FROM PlanoContas
                                                        WHERE descricao LIKE '%' + @descricao + '%'
                                                        ORDER BY descricao")
                                                  .adicionaParametro("descricao", descricao)
                                                  .obterLista <PlanoDeContas>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(planosDeConta);
        }
Ejemplo n.º 28
0
        public IList <PlanoDeContas> ObterPorDataExclusao(DateTime?dataExclusao)
        {
            bool controleInterno = ad.conexaoFechada();

            if (controleInterno)
            {
                ad.abreConexao();
            }

            IList <PlanoDeContas> planosDeConta = AcessaDadosConstrutor.iniciar(ad)
                                                  .adicionaSQL(@" SELECT *
                                                        FROM PlanoContas
                                                        WHERE dataExclusao BETWEEN @dataExclusao AND DATEADD(second, -1, DATEADD(day, 1, @dataExclusao))
                                                        ORDER BY dataExclusao DESC")
                                                  .adicionaParametro("dataExclusao", dataExclusao)
                                                  .obterLista <PlanoDeContas>();

            if (controleInterno)
            {
                ad.fechaConexao();
            }

            return(planosDeConta);
        }