Beispiel #1
0
        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();
            }
        }
Beispiel #2
0
 public AgrupamentoVendaSimples()
 {
     Evento  = new EventoSimples();
     Pacotes = new List <PacoteSimples>();
     Camping = new EventoSimples();
 }