//Evento independente onde será retornado todos os eventos a serem realizados. public EventoColecao ConsultaProximosEventos() { SqlConnection conexao = acessaDados.criarConexaoBanco(); try { //Abrindo conexao com o banco de dados conexao.Open(); EventoColecao eventoColecao = new EventoColecao(); DateTime hoje = new DateTime(); hoje = DateTime.Now; string script = "SELECT e.codEvento, e.nome, e.localEvento, e.data_evento, e.inicio, e.termino, e.tema, e.codCliente, e.observacao, e.concluido, e.cancelado, e.cidadeEvento, c.nome AS nomeCliente" + " FROM tblEvento AS e" + " INNER JOIN tblCliente AS c" + " ON e.codCliente = c.codCliente" + " WHERE data_evento >= '" + hoje + "' AND concluido = 0" + " AND cancelado = 0" + " ORDER BY data_evento ASC"; SqlCommand sql = new SqlCommand(script, conexao); //Irá retornar as informações do banco de dados SqlDataReader dataReader = sql.ExecuteReader(); DataTable dataTable = new DataTable(); //colocando os dados do dataReader dentro de um DataTable dataTable.Load(dataReader); foreach (DataRow linha in dataTable.Rows) { Evento evento = new Evento(); evento.codEvento = Convert.ToInt32(linha["codEvento"]); evento.nome = Convert.ToString(linha["nome"]); evento.localEvento = Convert.ToString(linha["localEvento"]); evento.data_evento = Convert.ToDateTime(linha["data_evento"]); evento.inicio = (TimeSpan)linha["inicio"]; evento.termino = (TimeSpan)linha["termino"]; evento.tema = Convert.ToString(linha["tema"]); evento.codCliente = Convert.ToInt32(linha["codCliente"]); evento.observacao = Convert.ToString(linha["observacao"]); evento.concluido = Convert.ToBoolean(linha["concluido"]); evento.cancelado = Convert.ToBoolean(linha["cancelado"]); evento.cidadeEvento = linha["cidadeEvento"].ToString(); evento.nomeCliente = linha["nomeCliente"].ToString(); eventoColecao.Add(evento); } return eventoColecao; } catch(Exception e) { throw new Exception("Não foi possível consultar dados. Detalhes: " + e.Message); } finally { conexao.Close(); } }
public EventoColecao ConsultarNomeEvento(string nomeEvento) { try { EventoColecao ec = new EventoColecao(); acessaDados.limparParametro(); acessaDados.adicionarParametro("@nome", nomeEvento); DataTable retornoBanco = acessaDados.executarConsulta(CommandType.StoredProcedure, "SP_CONSULTAR_NOME_EVENTO"); foreach(DataRow linha in retornoBanco.Rows) { Evento evento = new Evento(); evento.codEvento = Convert.ToInt32(linha["codEvento"]); evento.nome = Convert.ToString(linha["nome"]); evento.localEvento = Convert.ToString(linha["localEvento"]); evento.data_evento = Convert.ToDateTime(linha["data_evento"]); evento.inicio = (TimeSpan)linha["inicio"]; evento.termino = (TimeSpan)linha["termino"]; evento.tema = Convert.ToString(linha["tema"]); evento.codCliente = Convert.ToInt32(linha["codCliente"]); evento.observacao = Convert.ToString(linha["observacao"]); ec.Add(evento); } return ec; } catch(Exception e) { throw new Exception("Não foi possível consultar dados. Detalhes: " + e.Message); } }
//Evento independente onde será retornado todos os eventos a serem realizados de forma avançada. public EventoColecao ConsultaAvancada(string cliente, string aniversariante, string cidade, DateTime dataDe, DateTime dataPara, bool concluido, bool cancelado, bool aberto) { SqlConnection conexao = acessaDados.criarConexaoBanco(); try { conexao.Open(); EventoColecao eventoColecao = new EventoColecao(); string script = null; //verificar se a data inicial é igual a data final, irá mudar o periodo da consulta if(dataDe.Date == dataPara.Date) { script = "SELECT e.codEvento, e.nome, e.localEvento, e.data_evento, e.inicio, e.termino, e.tema, e.codCliente, e.observacao, e.concluido, e.cancelado, e.aberto, e.cidadeEvento, c.nome AS nomeCliente" + " FROM tblEvento AS e" + " INNER JOIN tblCliente AS c " + " ON e.codCliente = c.codCliente " + " WHERE c.nome LIKE '%" + cliente + "%' AND e.nome LIKE '%" + aniversariante + "%' AND e.cidadeEvento LIKE '%" + cidade + "%' AND e.data_evento = '" + dataDe + "' AND (e.concluido = '" + concluido + "' OR e.concluido = 'false') AND (e.cancelado = '" + cancelado + "' OR e.cancelado = 'false' ) AND (e.aberto = '" + aberto + "' OR e.aberto = 'false') ORDER BY data_evento ASC"; } else { script = "SELECT e.codEvento, e.nome, e.localEvento, e.data_evento, e.inicio, e.termino, e.tema, e.codCliente, e.observacao, e.concluido, e.cancelado, e.aberto, e.cidadeEvento, c.nome AS nomeCliente" + " FROM tblEvento AS e" + " INNER JOIN tblCliente AS c " + " ON e.codCliente = c.codCliente " + " WHERE c.nome LIKE '%" + cliente + "%' AND e.nome LIKE '%" + aniversariante + "%' AND e.cidadeEvento LIKE '%" + cidade + "%' AND e.data_evento >= '" + dataDe + "' AND e.data_evento <= '" + dataPara + "' AND (e.concluido = '" + concluido + "' OR e.concluido = 'false') AND (e.cancelado = '" + cancelado + "' OR e.cancelado = 'false' ) AND (e.aberto = '" + aberto + "' OR e.aberto = 'false') ORDER BY data_evento ASC"; } SqlCommand sql = new SqlCommand(script, conexao); SqlDataReader dataReader = sql.ExecuteReader(); DataTable dataTable = new DataTable(); dataTable.Load(dataReader); foreach (DataRow linha in dataTable.Rows) { Evento evento = new Evento(); evento.codEvento = Convert.ToInt32(linha["codEvento"]); evento.nome = linha["nome"].ToString(); evento.localEvento = Convert.ToString(linha["localEvento"]); evento.data_evento = Convert.ToDateTime(linha["data_evento"]); evento.inicio = (TimeSpan)linha["inicio"]; evento.termino = (TimeSpan)linha["termino"]; evento.tema = Convert.ToString(linha["tema"]); evento.codCliente = Convert.ToInt32(linha["codCliente"]); evento.observacao = Convert.ToString(linha["observacao"]); evento.concluido = Convert.ToBoolean(linha["concluido"]); evento.cancelado = Convert.ToBoolean(linha["cancelado"]); evento.aberto = Convert.ToBoolean(linha["aberto"]); evento.cidadeEvento = linha["cidadeEvento"].ToString(); evento.nomeCliente = linha["nomeCliente"].ToString(); eventoColecao.Add(evento); } return eventoColecao; } catch(Exception e) { throw new Exception(e.Message); } finally { conexao.Close(); } }