public IList <QuotaPlanejadoRealizadoVm> PlanejadoRealizado(RelatorioAgendamentoFiltroVm filtro) { AplicaFiltros(filtro); var quotas = (from quota in _quotas.GetQuery() group quota by new { quota.CodigoTerminal, quota.Fornecedor.Codigo, quota.Fornecedor.Nome, quota.FluxoDeCarga } into agrupador select new { agrupador.Key, PlanejadoTotal = agrupador.Sum(x => x.PesoTotal), RealizadoTotal = agrupador.Sum(x => x.PesoRealizado) }).ToList(); return(quotas.Select(x => new QuotaPlanejadoRealizadoVm { CodigoTerminal = x.Key.CodigoTerminal, NomeDoFornecedor = x.Key.Codigo + " - " + x.Key.Nome, FluxoDeCarga = x.Key.FluxoDeCarga.Descricao(), Quota = x.PlanejadoTotal, PesoRealizado = x.RealizadoTotal }).ToList()); }
public KendoGridVm ListarQuotasDoFornecedor(PaginacaoVm paginacaoVm, string codigoDoFornecedor) { Usuario usuarioConectado = _usuarios.UsuarioConectado(); _quotas.DoFornecedor(codigoDoFornecedor); return(new KendoGridVm { QuantidadeDeRegistros = _quotas.Count(), Registros = _builderQuotaPorFornecedor.BuildList(_quotas .GetQuery() .OrderByDescending(x => x.Data) .Skip(paginacaoVm.Skip) .Take(paginacaoVm.Take).ToList(), usuarioConectado) .Cast <ListagemVm>() .ToList() }); }