public List <EventoSimples> CarregarFlip(int localID) { try { var stb = @"SELECT e.IR_EventoID AS EventoID, e.Nome AS Evento, e.Publicar, ap.IR_ApresentacaoID AS ApresentacaoID, ap.Horario, s.IR_SetorID AS SetorID, s.Nome AS Setor, s.LugarMarcado, s.QtdeDisponivel, p.IR_PrecoID AS PrecoID, p.Nome AS Preco, p.Valor FROM Evento e (NOLOCK) INNER JOIN Apresentacao ap (NOLOCK) ON ap.EventoID = e.IR_EventoID INNER JOIN Setor s (NOLOCK) ON s.ApresentacaoID = ap.IR_ApresentacaoID INNER JOIN Preco p (NOLOCK) ON p.SetorID = s.IR_SetorID AND p.ApresentacaoID = ap.IR_ApresentacaoID WHERE e.LocalID = " + localID + @" AND p.Pacote = 0 AND p.Serie = 0 AND s.LugarMarcado = 'P' AND e.IR_EventoID <> 28226 ORDER BY ap.Horario ASC, s.Nome, p.Nome "; List <EventoSimples> agrupamento = new List <EventoSimples>(); int ContEvento = 0; using (IDataReader dr = oDAL.SelectToIDataReader(stb)) { if (!dr.Read()) { throw new Exception("Não foi possível encontrar as informações desta data do evento."); } EventoSimples evento = new EventoSimples(); ApresentacaoSimples apresentacao = new ApresentacaoSimples(); SetorSimples setor = new SetorSimples(); do { if (agrupamento.Where(c => c.EventoID == dr["EventoID"].ToInt32()).Count() == 0) { evento = new EventoSimples() { EventoID = dr["EventoID"].ToInt32(), Nome = dr["Evento"].ToString().Trim(), DisponivelVenda = dr["Publicar"].ToString() == "T", }; agrupamento.Add(evento); } if (evento.Apresentacoes.Where(c => c.ApresentacaoID == dr["ApresentacaoID"].ToInt32()).Count() == 0) { apresentacao = new ApresentacaoSimples() { ApresentacaoID = dr["ApresentacaoID"].ToInt32(), Horario = DateTime.ParseExact(dr["Horario"].ToString(), "yyyyMMddHHmmss", CultureInfo.InvariantCulture), HorarioFormatado = (DateTime.ParseExact(dr["Horario"].ToString(), "yyyyMMddHHmmss", System.Globalization.CultureInfo.InvariantCulture)).ToString("dddd, dd \\de MMMM \\de yyyy"), Dia = (++ContEvento).ToString() }; evento.Apresentacoes.Add(apresentacao); } if (apresentacao.Setores.Where(c => c.SetorID == dr["SetorID"].ToInt32()).Count() == 0) { setor = new SetorSimples() { SetorID = dr["SetorID"].ToInt32(), Nome = dr["Setor"].ToString().Trim(), LugarTipo = dr["LugarMarcado"].ToString(), QtdeDisponivel = dr["QtdeDisponivel"].ToInt32() }; apresentacao.Setores.Add(setor); } setor.Precos.Add(new PrecoSimples() { SetorID = dr["SetorID"].ToInt32(), PrecoID = dr["PrecoID"].ToInt32(), Nome = dr["Preco"].ToString().Trim(), Valor = dr["Valor"].ToDecimal(), }); } while (dr.Read()); } return(agrupamento); } finally { oDAL.ConnClose(); } }
public AgrupamentoVendaSimples() { Evento = new EventoSimples(); Pacotes = new List <PacoteSimples>(); Camping = new EventoSimples(); }