Exemple #1
0
        public IList <object> Executar(int pagina, string termo, string[] dependentes)
        {
            if (pagina < 1)
            {
                pagina = 1;
            }

            if (string.IsNullOrEmpty(termo))
            {
                termo = string.Empty;
            }

            var config = _contexto.Buscar().CriarQuery(_configuracao.Tabela);

            config.DefinirLimite(pagina * 10);

            foreach (var resultado in _configuracao.Resultado)
            {
                config.AdicionarResultado(string.Concat("(", resultado.ExpressaoSql, ")as[", resultado.Campo, "]"));
            }

            if (!string.IsNullOrEmpty(_configuracao.Relacionamento))
            {
                config.AdicionarRelacionamento(_configuracao.Relacionamento);
            }

            AdicionarFiltroDosDependentesInformados(_configuracao as IDependente, config, dependentes);

            if (!string.IsNullOrEmpty(_configuracao.Condicao))
            {
                config.AdicionarCondicaoPersonalizada(_configuracao.Condicao);
            }

            AdicionarFiltroDoTermoPesquisado(config, termo);

            if (string.IsNullOrEmpty(_configuracao.Ordem))
            {
                config.AdicionarOrdem("2, 1");
            }
            else
            {
                config.AdicionarOrdem(_configuracao.Ordem);
            }

            PersonalizarConsulta(_configuracao as IPesquisaPersonalizada, config);

            return(ConverterConsultaEmObjeto(config, pagina));
        }
 public ContaCorrente Conta(int conta)
 {
     this.contaCorrente = _contexto.Buscar <ContaCorrente>(m => m.Conta == conta).FirstOrDefault();
     return(this.contaCorrente);
 }