public IEnumerable <Passenger> ObterPassageirosfiltros(FiltroDTO filtro) { IQueryable <Passenger> query = Data.AsQueryable(); if (filtro.Survived.HasValue) { query = query.Where(w => w.Survived == filtro.Survived); } if (!filtro.PClass.IsNullOrEmpty() && filtro.PClass.Any()) { query = query.Where(w => filtro.PClass.Contains(w.Pclass)); } if (!filtro.Sex.IsNullOrEmpty() && filtro.Sex.Any()) { query = query.Where(w => filtro.Sex.Contains(w.Sex)); } if (filtro.Min_Age.HasValue) { query = query.Where(w => w.Age.To <decimal>() >= filtro.Min_Age); } if (filtro.Max_Age.HasValue) { query = query.Where(w => w.Age.To <decimal>() <= filtro.Max_Age); } return(query.ToArray()); }
public ActionResult FiltroPassageiros(FiltroDTO filtro) { IList <string> erros; try { _titanicPopService.ValidarJson(filtro, out erros); if (erros.Count > 0) { throw new ArgumentException(string.Join(",", erros)); } var pessoas = _titanicPopService.NumeroPessoasEncontradas(filtro); return(StatusCode((int)HttpStatusCode.OK, pessoas)); } catch (ArgumentException ex) { return(StatusCode((int)HttpStatusCode.BadRequest, $"A requisição não é válida: {ex.Message}")); } catch (Exception ex) { return(StatusCode((int)HttpStatusCode.BadRequest, ex.Message)); } }
public void ValidarJson(FiltroDTO filtro, out IList <string> erros) { erros = new List <string>(); if (filtro.FieldsIsNullOrEmpty()) { erros.Add("Nenhum campo foi preenchido"); } }
public async Task <ActionResult <IEnumerable <Produto> > > GetProdutoFilter(FiltroDTO filtro) { return(await _context.Produto.Include(cat => cat.Categoria).Where( produto => (!filtro.IdProduto.HasValue || produto.Id == filtro.IdProduto.Value) && (string.IsNullOrEmpty(filtro.NomeProduto) || produto.Nome == filtro.NomeProduto) && (string.IsNullOrEmpty(filtro.DescricaoProduto) || produto.Descricao == filtro.DescricaoProduto) && (!filtro.PrecoProduto.HasValue || produto.Preco == filtro.PrecoProduto.Value) && (!filtro.IdCategoria.HasValue || produto.Categoria.Id == filtro.IdCategoria.Value) ).ToListAsync()); }
public int NumeroPessoasEncontradas(FiltroDTO filtro) { var result = _titanicPopRepository.ObterPassageirosfiltros(filtro); if (!result.Any()) { return(default(int)); } return(result.Count()); }
public IEnumerable <LibroDTO> GetLibrosFiltrados([FromBody] FiltroDTO filtrado) { var librosConsultas = new LibrosConsultas(); var res = from l in librosConsultas.ObtenerLibrosPorFiltro(filtrado.IdAutor, filtrado.IdEstado, filtrado.IdGenero) select new LibroDTO { Titulo = l.Titulo, Autor = l.Autore.Nombre + " " + l.Autore.Apellido, Genero = l.Genero.Nombre, EstadoLectura = l.EstadosLectura.EstadoLectura }; return(res); }
private List <FiltroDTO> findByIdEmpresa(int empresaId) { var filtros = _context.Filtro.Where(x => x.EmpresaId.Equals(empresaId)).ToArray(); var filtrosDTO = new List <FiltroDTO>(); foreach (var item in filtros) { var filtroDTO = new FiltroDTO() { Id = item.Id, Nome = item.Nome, EmpresaId = item.EmpresaId, Consulta = item.Consulta, }; filtrosDTO.Add(filtroDTO); } return(filtrosDTO.ToList()); }
public async Task <ActionResult <IEnumerable <CentroSaludDTO> > > GetCentrosSaludUsandoFiltros(FiltroDTO filtro) { var centrosSalud = await _context.CentrosSalud. Where(c => (filtro.Horarios.Count > 0 ? filtro.Horarios.Contains(c.HorarioAtencion) : true) && (filtro.Barrios.Count > 0 ? filtro.Barrios.Contains(c.Barrio) : true)). Include(c => c.EspecialidadesCentroSalud). Select(c => Helper.CentroSaludToDTO(c)). ToListAsync(); List <CentroSaludDTO> result = new List <CentroSaludDTO>(); if (filtro.Especialidades.Count > 0) { foreach (var centroSalud in centrosSalud) { if (CapsContieneEspecialidades(filtro.Especialidades, centroSalud)) { result.Add(centroSalud); } } return(result); } else { return(centrosSalud); } }
public async Task <IActionResult> Cadastrar(FiltroDTO model) { try { var usuarioId = int.Parse((this.User.Identity.Name).Split(',')[0]); var empresaId = int.Parse((this.User.Identity.Name).Split(',')[1]); var menu = "Dados Cliente"; // Permissão var user_proprietario = await _serviceEmpresa.getEmpresaById(empresaId); var isPermissao = false; if (user_proprietario.EmpresaProprietaria != 0) { isPermissao = _serviceUsuario.ValidaAcessoUsuarioMenu(usuarioId, empresaId, menu); } else { isPermissao = true; } if (isPermissao) { //string tela = this.ControllerContext.RouteData.Values["action"].ToString(); //this._auditoria.cadastrar(tela, this.User.Identity.Name, model); //// Sempre será Cliente //if (model.EmpresaProprietaria == null) //{ // model.EmpresaProprietaria = 1; //} //var empresa = _mapper.Map<Empresa>(model); //var sucesso = this._service.Cadastrar(filtro); //if (model.Usuario != null && !string.IsNullOrEmpty(model.Usuario.Nome)) //{ // var cadUsuario = new UserDTO(); // cadUsuario.Nome = model.Usuario.Nome; // cadUsuario.Email = model.Usuario.Email; // cadUsuario.IdEmpresaSelecionada = empresa.Id; // cadUsuario.PerfilId = 1; // _serviceUsuario.Cadastrar(cadUsuario); //} //if (sucesso) // return Created($"/api/empresa/buscarEmpresaPorId/{empresa.Id}", _mapper.Map<EmpresaDTO>(empresa)); } else { return(StatusCode(403, "Usuário sem permissão de acesso ao menu " + menu)); } } catch (Exception ex) { return(BadRequest(new { message = ex.Message })); } return(BadRequest()); }