private FiltroControleFinanceiro instanciarFiltro()
        {
            FiltroControleFinanceiro f = new FiltroControleFinanceiro();
            f.Descricao = txtDescricao.Text;
            f.PeriodoIni = dtpIni.Value;
            f.PeriodoFim = dtpFim.Value;
            f.Tipos = lsbTipos.SelectedItems.Cast<TipoFluxo>().ToList<TipoFluxo>();

            return f;
        }
示例#2
0
        public static List<FluxoCaixa> lista(Usuario u, FiltroControleFinanceiro filtro)
        {
            try
            {
                SqlCeConnection conn = Conexao.ConexaoSql;
                SqlCeCommand cmd = conn.CreateCommand();

                cmd.CommandText = "select * from fluxo_caixa " +
                    "join tipo_fluxo on flc_tipo = tfc_id " +
                    "where flc_login = @login";

                if (filtro != null)
                {
                    if (filtro.Descricao != null)
                    {
                        cmd.CommandText += " and flc_descricao like @desc ";
                        cmd.Parameters.AddWithValue("@desc", "%" + filtro.Descricao + "%");
                    }

                    if (filtro.PeriodoIni != null)
                    {
                        cmd.CommandText += " and flc_data >= @periodoIni ";
                        cmd.Parameters.AddWithValue("@periodoIni", filtro.PeriodoIni);
                    }

                    if (filtro.PeriodoFim != null)
                    {
                        cmd.CommandText += " and flc_data < @periodoFim ";
                        cmd.Parameters.AddWithValue("@periodoFim", filtro.PeriodoFim.AddDays(1));
                    }

                    if (filtro.Tipos != null && filtro.Tipos.Count > 0)
                    {
                        String ids = "";
                        foreach (TipoFluxo t in filtro.Tipos)
                            ids += t.Id.ToString() + ",";
                        ids = ids.Remove(ids.Length - 1);

                        cmd.CommandText += " and flc_tipo in (" + ids + ") ";
                    }
                }

                cmd.CommandText += " order by flc_data desc";
                cmd.Prepare();
                cmd.Parameters.AddWithValue("@login", u.Login);

                SqlCeDataReader reader = cmd.ExecuteReader();

                List<FluxoCaixa> lista = new List<FluxoCaixa>();

                while (reader.Read())
                {
                    FluxoCaixa f = new FluxoCaixa(reader);
                    lista.Add(f);
                }

                return lista;
            }
            catch (Exception err)
            {
                throw err;
            }
        }
 public static List<FluxoCaixa> filtrarFluxosCaixa(FiltroControleFinanceiro f)
 {
     try
     {
         Usuario u = SessaoBusiness.UsuarioLogado;
         List<FluxoCaixa> lista = FluxoCaixaDAO.lista(u, f);
         return lista;
     }
     catch (Exception err)
     {
         throw err;
     }
 }