public async Task <IActionResult> Get(EmpresaFiltro empresaFiltro)
        {
            var empresas = await _empresaRepositorio.BuscarAsync(ObterAsEmpresasSpecification.Novo().
                                                                 ComNome(empresaFiltro.Nome).
                                                                 ComCnpj(empresaFiltro.Cnpj).
                                                                 ComIntervaloDeDataDeFundacao(empresaFiltro.DataDeFundacaoFinal, empresaFiltro.DataDeFundacaoFinal)
                                                                 .Build());

            return(Ok(empresas.MapTo <List <EmpresaDto> >()));
        }
예제 #2
0
        public IEnumerable <Empresa> RecuperarPorFiltro(EmpresaFiltro filtro)
        {
            var dados = (from x in _context.Empresas
                         where (string.IsNullOrEmpty(filtro.Nome) || x.Nome.Contains(filtro.Nome)) &&
                         (string.IsNullOrEmpty(filtro.Cnpj) || x.Cnpj.Equals(filtro.Cnpj)) &&
                         ((filtro.DataInicio == DateTime.MinValue || filtro.DataFim == DateTime.MinValue) ||
                          (x.DataFundacao.Date >= filtro.DataInicio && x.DataFundacao.Date <= filtro.DataFim))
                         select x).ToList();

            return(dados);
        }
예제 #3
0
 public IActionResult Filtrar(EmpresaFiltro filtro)
 {
     try
     {
         filtro.OrganizacaoId = GetOrganizacaoID();
         var lista = _servico.Filtrar(filtro);
         return(new JsonResult(lista));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
예제 #4
0
        public IEnumerable <EmpresaConsulta> Filtrar(EmpresaFiltro filtro)
        {
            var resultado = from c in _contexto.Empresas
                            join o in _contexto.Organizacoes on c.OrganizacaoId equals o.Id
                            where (c.OrganizacaoId == filtro.OrganizacaoId)
                            select new
            {
                id              = c.Id,
                nome            = c.Nome,
                nomeOrganizacao = o.Nome,
                ativo           = c.Ativo
            };

            resultado = resultado.Where(x => x.nome.Contains(filtro.Valor));

            if (filtro.Ativo != Dominio.Enums.EnSimNao.Todos)
            {
                if (filtro.Ativo == Dominio.Enums.EnSimNao.Sim)
                {
                    resultado = resultado.Where(x => x.ativo == true);
                }
                else
                {
                    resultado = resultado.Where(x => x.ativo == false);
                }
            }

            var lista = new List <EmpresaConsulta>();

            foreach (var item in resultado)
            {
                lista.Add(new EmpresaConsulta()
                {
                    Id = item.id, Nome = item.nome
                });
            }

            return(lista);
        }
예제 #5
0
 public IEnumerable <EmpresaConsulta> Filtrar(EmpresaFiltro filtro)
 {
     return(_repositorio.Filtrar(filtro));
 }
예제 #6
0
 public IEnumerable <Empresa> PesquisarPorFiltro(EmpresaFiltro filtro)
 {
     return(repositorioDeConsultaDeEmpresas.RecuperarPorFiltro(filtro));
 }