public EstruturaRetornoReservaValeIngresso CarregarEstrutura(int ValeIngressoID) { try { EstruturaRetornoReservaValeIngresso estrutura = new EstruturaRetornoReservaValeIngresso(); string SQL = @"SELECT vit.ValidadeDiasImpressao,vit.ValidadeData FROM tValeIngresso vi (nolock) INNER JOIN tValeIngressoTipo vit (nolock) on vi.ValeIngressoTipoID = vit.ID WHERE vi.ID = " + ValeIngressoID; bd.Consulta(SQL); if (bd.Consulta().Read()) { estrutura.ValidadeDias = bd.LerInt("ValidadeDiasImpressao"); estrutura.Validade = bd.LerDateTime("ValidadeData"); } return(estrutura); } catch (Exception ex) { throw ex; } finally { bd.Fechar(); } }
public List <EstruturaRetornoReservaValeIngresso> ListaReservados(int clienteID, string sessionID) { try { List <EstruturaRetornoReservaValeIngresso> lista = new List <EstruturaRetornoReservaValeIngresso>(); StringBuilder stbSQL = new StringBuilder(); stbSQL.Append("SELECT vi.ID, vip.Valor, isNull(vi.CodigoTroca, '') AS CodigoTroca, vip.CodigoTrocaFixo, vip.ValidadeDiasImpressao, vip.ValidadeData "); stbSQL.Append("FROM tValeIngresso vi (NOLOCK) "); stbSQL.Append("INNER JOIN tValeIngressoTipo vip (NOLOCK) ON vi.ValeIngressoTipoID = vip.ID "); stbSQL.Append("WHERE ClienteID = " + clienteID + "AND SessionID = '" + sessionID + "' AND Status = 'R'"); bd.Consulta(stbSQL.ToString()); while (bd.Consulta().Read()) { EstruturaRetornoReservaValeIngresso oItem = new EstruturaRetornoReservaValeIngresso(); oItem.ID = bd.LerInt("ID"); oItem.Valor = bd.LerDecimal("Valor"); oItem.CodigoTroca = bd.LerString("CodigoTrocaFixo"); if (oItem.CodigoTroca.Length == 0) { oItem.CodigoTroca = bd.LerString("CodigoTroca"); } oItem.ValidadeDias = bd.LerInt("ValidadeDiasImpressao"); oItem.Validade = bd.LerDateTime("ValidadeData"); lista.Add(oItem); } return(lista); } catch (Exception ex) { throw ex; } finally { bd.Fechar(); } }
private BindingList <EstruturaRetornoReservaValeIngresso> ReservarInternet(BD bd, int quantidadeReservar, int valeIngressoTipoID, int canalID, int lojaID, int usuarioID, int clienteID, string sessionID) { try { string sql; int reservadoID; BindingList <EstruturaRetornoReservaValeIngresso> retorno = new BindingList <EstruturaRetornoReservaValeIngresso>(); EstruturaRetornoReservaValeIngresso valeIngresso; DateTime validadeData; int validadeDiasImpressao; //Tenta reservar os VIRs disponíveis. sql = "EXEC ReservarValeIngressoInternet2 " + "@Quantidade = " + quantidadeReservar + ", " + "@ValeIngressoTipoID = " + valeIngressoTipoID + ", " + "@TimeStampReserva = '" + DateTime.Now.ToString("yyyyMMddHHmmss") + "', " + "@LojaID = " + lojaID + ", " + "@UsuarioID =" + usuarioID + ", " + "@CanalID =" + canalID + ", " + "@ClienteID =" + (clienteID > 0 ? clienteID : 0) + ", " + "@SessionID = '" + sessionID + "'"; bd.Consulta(sql); //Preenche os IDs while (bd.Consulta().Read()) { valeIngresso = new EstruturaRetornoReservaValeIngresso(); reservadoID = bd.LerInt("ID"); //datas para preencher a string de validade validadeData = bd.LerDateTime("ValidadeData"); validadeDiasImpressao = bd.LerInt("ValidadeDiasImpressao"); valeIngresso.ID = reservadoID; valeIngresso.Nome = bd.LerString("Nome"); valeIngresso.Valor = bd.LerDecimal("Valor"); valeIngresso.CodigoTroca = bd.LerString("CodigoTrocaFixo"); valeIngresso.TrocaConveniencia = bd.LerBoolean("TrocaConveniencia"); valeIngresso.TrocaIngresso = bd.LerBoolean("TrocaIngresso"); valeIngresso.TrocaEntrega = bd.LerBoolean("TrocaEntrega"); valeIngresso.ValorTipo = Convert.ToChar(bd.LerString("ValorTipo")); valeIngresso.ValorPagamento = bd.LerDecimal("ValorPagamento"); //Validade. Se for em dias da impressão, já calcula. if (validadeDiasImpressao > 0) { valeIngresso.Validade = DateTime.Now.AddDays((double)validadeDiasImpressao); } else { valeIngresso.Validade = validadeData; } retorno.Add(valeIngresso); //Dispara o evento para retornar os objetos de retorno registro a registro //isso é necessário para quando for gerada uma exception //OnCreate(reservadoID); } return(retorno); } catch (Exception) { throw; } finally { bd.Consulta().Close(); } }