public AgrupamentoVendaSimples Carregar(int eventoID, bool filtraHorario = true) { AgrupamentoVendaSimples agrupamento = this.CarregarEvento(eventoID, filtraHorario); agrupamento = this.CarregarPacotes(agrupamento, eventoID); return(agrupamento); }
private AgrupamentoVendaSimples CarregarPacotes(AgrupamentoVendaSimples agrupamento, int eventoID) { try { string strSql = "sp_getPacotes3 " + eventoID; using (IDataReader dr = oDAL.SelectToIDataReader(strSql)) { if (!dr.Read()) { return(agrupamento); } PacoteSimples pacote = new PacoteSimples(); do { if (agrupamento.Pacotes.Where(c => c.PacoteID == dr["PacoteID"].ToInt32()).Count() == 0) { pacote = new PacoteSimples() { PacoteID = dr["IR_PacoteID"].ToInt32(), Nome = dr["PacoteNome"].ToString() }; agrupamento.Pacotes.Add(pacote); } pacote.Valor += dr["Valor"].ToDecimal() * dr["Quantidade"].ToInt32(); } while (dr.Read()); } return(agrupamento); } finally { oDAL.ConnClose(); } }
public AgrupamentoVendaSimples CarregarCorcovado(int eventoID, string horario, string idioma) { try { CultureInfo ci = new CultureInfo(idioma); 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, p.IR_PrecoID AS PrecoID, p.Nome AS Preco, p.Valor, sp.Nome AS Hora 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 SetoresParadise sp (NOLOCK) ON sp.SetorID = s.IR_SetorID INNER JOIN Preco p (NOLOCK) ON p.SetorID = s.IR_SetorID AND p.ApresentacaoID = ap.IR_ApresentacaoID WHERE e.IR_EventoID = " + eventoID + @" AND p.Pacote = 0 AND p.Serie = 0 AND s.LugarMarcado = 'P' AND ap.Horario LIKE '" + horario + @"%' ORDER BY sp.GrupoID, ap.Horario ASC, s.Nome, p.Nome "; AgrupamentoVendaSimples agrupamento = new AgrupamentoVendaSimples(); 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."); } agrupamento.Evento.EventoID = dr["EventoID"].ToInt32(); agrupamento.Evento.Nome = dr["Evento"].ToString(); agrupamento.Evento.DisponivelVenda = dr["Publicar"].ToString() == "T"; ApresentacaoSimples apresentacao = new ApresentacaoSimples(); SetorSimples setor = new SetorSimples(); do { if (agrupamento.Evento.Apresentacoes.Where(c => c.ApresentacaoID == dr["ApresentacaoID"].ToInt32()).Count() == 0) { string horaformatada = string.Empty; if (idioma == "en-US") { horaformatada = (DateTime.ParseExact(dr["Horario"].ToString(), "yyyyMMddHHmmss", ci)).ToString("dddd, MMMM d, yyyy", ci); } else if (idioma == "es-ES") { horaformatada = (DateTime.ParseExact(dr["Horario"].ToString(), "yyyyMMddHHmmss", ci)).ToString("dddd, dd \\de MMMM yyyy", ci); } else if (idioma == "pt-BR") { horaformatada = (DateTime.ParseExact(dr["Horario"].ToString(), "yyyyMMddHHmmss", ci)).ToString("dddd, dd \\de MMMM \\de yyyy", ci); } apresentacao = new ApresentacaoSimples() { ApresentacaoID = dr["ApresentacaoID"].ToInt32(), Horario = DateTime.ParseExact(dr["Horario"].ToString(), "yyyyMMddHHmmss", ci), HorarioFormatado = horaformatada, Dia = dr["Hora"].ToString() }; agrupamento.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(), Horario = dr["Hora"].ToString(), }; apresentacao.Setores.Add(setor); } setor.Precos.Add(new PrecoSimples() { SetorID = dr["SetorID"].ToInt32(), PrecoID = dr["PrecoID"].ToInt32(), Nome = dr["Preco"].ToString(), Valor = dr["Valor"].ToDecimal(), }); } while (dr.Read()); } return(agrupamento); } finally { oDAL.ConnClose(); } }
public AgrupamentoVendaSimples CarregarParadise(int eventoID) { try { StringBuilder stb = new StringBuilder(); stb.Append("SELECT e.IR_EventoID AS EventoID, e.Nome AS Evento, e.Publicar, "); stb.Append("ap.IR_ApresentacaoID AS ApresentacaoID, ap.Horario, "); stb.Append("s.IR_SetorID AS SetorID, sp.GrupoID, sp.Nome as NomeParadise, s.Nome AS Setor, s.LugarMarcado, s.QtdeDisponivel, "); stb.Append("p.IR_PrecoID AS PrecoID, p.Nome AS Preco, p.Valor "); stb.Append("FROM Evento e (NOLOCK) "); stb.Append("INNER JOIN Apresentacao ap (NOLOCK) ON ap.EventoID = e.IR_EventoID "); stb.Append("INNER JOIN Setor s (NOLOCK) ON s.ApresentacaoID = ap.IR_ApresentacaoID "); stb.Append("INNER JOIN SetoresParadise sp (NOLOCK) ON sp.SetorID = s.IR_SetorID "); stb.Append("INNER JOIN Preco p (NOLOCK) ON p.SetorID = s.IR_SetorID AND p.ApresentacaoID = ap.IR_ApresentacaoID "); stb.AppendFormat("WHERE e.IR_EventoID = {0} AND p.Pacote = 0 AND p.Serie = 0 AND s.LugarMarcado = 'P' ", eventoID); stb.AppendFormat(" AND ap.Horario > '{0}' ", DateTime.Now.AddHours(2).ToString("yyyyMMddHHmmss")); stb.Append("ORDER BY ap.Horario ASC, sp.GrupoID, SetorID"); AgrupamentoVendaSimples agrupamento = new AgrupamentoVendaSimples(); using (IDataReader dr = oDAL.SelectToIDataReader(stb.ToString())) { if (!dr.Read()) { throw new Exception("Não foi possível encontrar as informações deste evento."); } agrupamento.Evento.EventoID = dr["EventoID"].ToInt32(); agrupamento.Evento.Nome = dr["Evento"].ToString(); agrupamento.Evento.DisponivelVenda = (dr["Publicar"].ToString() == "T"); ApresentacaoSimples apresentacao = new ApresentacaoSimples(); SetorSimples setor = new SetorSimples(); do { if (agrupamento.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 = (DateTime.ParseExact(dr["Horario"].ToString(), "yyyyMMddHHmmss", System.Globalization.CultureInfo.InvariantCulture)).ToString("dd"), }; agrupamento.Evento.Apresentacoes.Add(apresentacao); } if (apresentacao.Setores.Where(c => c.GrupoID == dr["GrupoID"].ToInt32()).Count() == 0) { setor = new SetorSimples() { SetorID = dr["SetorID"].ToInt32(), Nome = dr["NomeParadise"].ToString(), LugarTipo = dr["LugarMarcado"].ToString(), GrupoID = dr["GrupoID"].ToInt32(), 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(), Valor = dr["Valor"].ToDecimal(), }); } while (dr.Read()); } return(agrupamento); } finally { oDAL.ConnClose(); } }