public List <RelatorioTotalizacaoLocalizacaoItem> BuscarDadosTotalizacaoLocalizacao(RelatorioTotalizacaoLocalizacaoFiltro model) { var query = BuscarDadosTotalizacaoLocalizacaoQuery(model); return(query.ToList()); }
private IQueryable <RelatorioTotalizacaoLocalizacaoItem> BuscarDadosTotalizacaoLocalizacaoQuery(RelatorioTotalizacaoLocalizacaoFiltro model) { var baseQuery = Entities.LoteProdutoEndereco.AsNoTracking().Where(lpe => lpe.IdEmpresa == model.IdEmpresa && lpe.EnderecoArmazenagem.IdNivelArmazenagem == model.IdNivelArmazenagem && lpe.EnderecoArmazenagem.IdPontoArmazenagem == model.IdPontoArmazenagem ); if (model.CorredorInicial.HasValue && model.CorredorFinal.HasValue) { var count = model.CorredorInicial.Value == model.CorredorFinal.Value ? 1 : (model.CorredorFinal.Value - model.CorredorInicial.Value) + 1; var range = Enumerable.Range(model.CorredorInicial.Value, count); baseQuery = baseQuery.Where(y => range.Contains(y.EnderecoArmazenagem.Corredor)); } var query = baseQuery.Select(bq => new RelatorioTotalizacaoLocalizacaoItem { CodigoEndereco = bq.EnderecoArmazenagem.Codigo, ReferenciaProduto = bq.Produto.Referencia, Unidade = bq.Produto.UnidadeMedida.Descricao, Quantidade = bq.Quantidade }); return(query); }