public IEnumerable <Venda> BuscaVendasComFiltro(FiltroTelaVendas venda) { var lvendas = BuscaTodas(); if (venda.CodigoCliente > 0) { lvendas = lvendas.Where(v => v.Cliente.Codigo == venda.CodigoCliente); } if (venda.DataFinal.HasValue) { lvendas = lvendas.Where(v => v.DataVenda <= venda.DataFinal.Value); } if (venda.DataInicial.HasValue) { lvendas = lvendas.Where(v => v.DataVenda >= venda.DataInicial.Value); } if (venda.Status == 2) { lvendas = lvendas.Where(v => v.DataPagamento.HasValue); } else if (venda.Status == 3) { lvendas = lvendas.Where(v => v.DataVencimento < DateTime.Now && !v.DataPagamento.HasValue); } else if (venda.Status == 1) { lvendas = lvendas.Where(v => v.DataVencimento >= DateTime.Now && !v.DataPagamento.HasValue); } return(lvendas); }
private void GerarGraficos() { try { lblNotificacao.Text = string.Empty; dataInicial = false; dataFinal = false; var filtro = new FiltroTelaVendas() { DataInicial = String.IsNullOrWhiteSpace(txtDataInicial.Text.Replace("_", "").Replace("/", "")) ? (DateTime?)null : DateTime.Parse(txtDataInicial.Text), DataFinal = String.IsNullOrWhiteSpace(txtDataFinal.Text.Replace("_", "").Replace("/", "")) ? (DateTime?)null : DateTime.Parse(txtDataFinal.Text), }; if (filtro.DataFinal.HasValue && filtro.DataInicial.HasValue && filtro.DataFinal.Value < filtro.DataInicial.Value) { lblNotificacao.Text = "A data inicial deve ser menor que a data final."; } else { var vendas = new CadastroVenda().BuscaVendasComFiltro(filtro).ToList(); var dt = BuscarDtGraficoVendas(vendas); var dtClientes = BuscarClientes(vendas); GraficoSpline(graficoVendasPorMes, dt, "Quantidade de Vendas por mês", "Mes", "Qtd"); GraficoSpline(gfcValorVendidoMes, dt, "Valores vendidos por mês", "Mes", "Valor"); GraficoClientesQueMaisCompram(dtClientes.OrderByDescending(c => c.QuantidadeCompras).Take(5).ToList()); GraficoClientesQueMaisGerarValor(dtClientes.OrderByDescending(c => c.ValorComprado).Take(5).ToList()); } } catch (FormatException ex) { if (ex.Message.Contains("DateTime")) { lblNotificacao.Text = Resources.DataInvalida; if (!String.IsNullOrWhiteSpace(txtDataInicial.Text.Replace("_", "").Replace("/", "")) && DataInvalida(txtDataInicial.Text.Replace("_", ""))) { dataInicial = true; } if (!String.IsNullOrWhiteSpace(txtDataFinal.Text.Replace("_", "").Replace("/", "")) && DataInvalida(txtDataFinal.Text.Replace("_", ""))) { dataFinal = true; } } } catch (Exception ex) { lblNotificacao.Text = ex.Message; } this.Refresh(); }
private void btnPesquisar_Click(object sender, EventArgs e) { try { dataInicial = false; dataFinal = false; lblNotificacao.Text = string.Empty; var filtro = new FiltroTelaVendas() { CodigoCliente = cbCliente.SelectedValue == null ? 0 : int.Parse(cbCliente.SelectedValue.ToString()), DataInicial = String.IsNullOrWhiteSpace(txtDataInicial.Text.Replace("_", "").Replace("/", "")) ? (DateTime?)null : DateTime.Parse(txtDataInicial.Text), DataFinal = String.IsNullOrWhiteSpace(txtDataFinal.Text.Replace("_", "").Replace("/", "")) ? (DateTime?)null : DateTime.Parse(txtDataFinal.Text), Status = cbStatus.SelectedValue == null ? 0 : int.Parse(cbStatus.SelectedValue.ToString()) }; if (filtro.DataFinal.HasValue && filtro.DataInicial.HasValue && filtro.DataFinal.Value < filtro.DataInicial.Value) { lblNotificacao.Text = "A data inicial deve ser menor que a data final."; } else { var lvenda = new CadastroVenda().BuscaVendasComFiltro(filtro).ToList(); PreencheGrid(lvenda); } } catch (FormatException ex) { if (ex.Message.Contains("DateTime")) { lblNotificacao.Text = Resources.DataInvalida; if (!String.IsNullOrWhiteSpace(txtDataInicial.Text.Replace("_", "").Replace("/", "")) && DataInvalida(txtDataInicial.Text.Replace("_", ""))) { dataInicial = true; } if (!String.IsNullOrWhiteSpace(txtDataFinal.Text.Replace("_", "").Replace("/", "")) && DataInvalida(txtDataFinal.Text.Replace("_", ""))) { dataFinal = true; } } } catch (Exception ex) { lblNotificacao.Text = ex.Message; } this.Refresh(); }
public IEnumerable <Venda> BuscaVendasComFiltro(FiltroTelaVendas filtro) { return(_repositorioVenda.BuscaVendasComFiltro(filtro)); }