public void getComprasPorEmpresa(int empId, int canitdad, Action <List <Compra> > lambdaEmpresas) { string query = "SELECT * FROM [TheBigBangQuery].[getComprasDeEmpresaPorCantidad] (@empeId, @cantidad)"; SqlDataReader reader = null; try { List <Compra> comprasList = new List <Compra>(); SqlCommand command = new SqlCommand(query); command.CommandText = query; command.Parameters.AddWithValue("@empeId", empId); command.Parameters.AddWithValue("@cantidad", canitdad); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { comprasList.Add(parsearCompraDelReader(reader)); } } lambdaEmpresas(comprasList); } catch (Exception e) { throw new DataNotFoundException("No se encontraron compras para el cliente selecionado"); } finally { if (reader != null && !reader.IsClosed) { reader.Close(); } } }
public Empresa getEmpresaPorUserId(int userId) { string query = mainEmpresaQuery + " WHERE empr_usuario = @id"; SqlCommand command = new SqlCommand(query); SqlParameter param = new SqlParameter("@id", System.Data.SqlDbType.Int); param.Value = userId; command.Parameters.Add(param); Empresa empre = null; SqlDataReader reader = null; try { reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { reader.Read(); empre = getEmpresaFromReader(reader); } } catch (Exception e) { throw e; } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } return(empre); }
public void getClientesHabilitados(Action <List <Cliente> > lambda) { string query = getClientsQuery + " WHERE clie_dado_baja IS NULL"; SqlDataReader reader = null; List <Cliente> clientesHabilitados = new List <Cliente>(); try { reader = DatabaseConection.executeQuery(query); if (reader.HasRows) { while (reader.Read()) { clientesHabilitados.Add(getClienteFromReder(reader)); } } lambda(clientesHabilitados); } catch (Exception e) { throw new DataNotFoundException("Error al buscar clientes habilitados"); } finally{ if (reader != null & !reader.IsClosed) { reader.Close(); } } }
public void getUsuarios(Action <List <Usuario> > result) { string query = "SELECT usua_id, usua_usuario, usua_n_intentos, usua_habilitado " + "FROM TheBigBangQuery.Usuario"; SqlDataReader reader = null; List <Usuario> usuariosList = new List <Usuario>(); try { reader = DatabaseConection.executeQuery(query); if (reader.HasRows) { while (reader.Read()) { usuariosList.Add(getUsuarioDeRader(reader)); } } // SI EL USUARIO NO ES VALIDO RETORNO NULL result(usuariosList); } catch (Exception ex) { throw new DataNotFoundException("No se han encontrado usuarios registrados"); } finally { if (reader != null && !reader.IsClosed) { reader.Close(); } } }
public List <string> getFormasDePago() { string query = "SELECT form_nombre FROM TheBigBangQuery.FormaDePago"; SqlDataReader reader = null; List <string> response = new List <string>(); try { reader = DatabaseConection.executeQuery(query); if (reader.HasRows) { while (reader.Read()) { response.Add(reader.GetSqlString(0).ToString()); } } return(response); } catch (Exception ex) { throw new DataNotFoundException("No se han encontrado metodos de pago"); } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } }
public Cliente getClientePorUserId(int id) { string query = getClientsQuery + " WHERE clie_usuario = @id"; SqlCommand command = new SqlCommand(query); SqlParameter param = new SqlParameter("@id", System.Data.SqlDbType.Int); param.Value = id; command.Parameters.Add(param); SqlDataReader reader = null; Cliente cliente = null; try { reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { reader.Read(); cliente = getClienteFromReder(reader); } } catch (Exception e) { throw e; } finally{ if (reader != null & !reader.IsClosed) { reader.Close(); } } return(cliente); }
public List <Tarjeta> getTardejtasDelCliente(int clieId) { string query = "SELECT * FROM [TheBigBangQuery].[Tarjetas] WHERE tarj_cliente = @id"; SqlDataReader reader = null; List <Tarjeta> tarjetas = new List <Tarjeta>(); try { SqlCommand command = new SqlCommand(query); command.CommandText = query; command.Parameters.AddWithValue("@id", clieId); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { tarjetas.Add(parsearTarjetaDeReader(reader)); } } return(tarjetas); } catch (Exception e) { throw new DataNotFoundException("No se han encontrado tarjetas"); } finally { if (reader != null && !reader.IsClosed) { reader.Close(); } } }
public List <Cliente> getClientes() { SqlDataReader reader = null; try { List <Cliente> clientes = new List <Cliente>(); reader = DatabaseConection.executeQuery(getClientsQuery + " ORDER BY clie_id ASC"); if (reader.HasRows) { while (reader.Read()) { clientes.Add(getClienteFromReder(reader)); } } return(clientes); } catch (Exception e) { throw e; } finally { if (reader != null && !reader.IsClosed) { reader.Close(); } } }
public List <Publicacion> getPublicaciones() { List <Publicacion> publicaciones = new List <Publicacion>(); SqlDataReader reader = null; try { reader = DatabaseConection.executeQuery(baseQuery + "ORDER BY publ_id DESC"); if (reader.HasRows) { while (reader.Read()) { publicaciones.Add(ParserPublicaciones.parsearPublicacionDelReader(reader)); } } return(publicaciones); } catch (Exception ex) { throw ex; } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } }
public List <Premio> getPremiosPorPuntos() { string function = "SELECT * FROM [TheBigBangQuery].[getPremiosDelPuntaje]()"; SqlDataReader reader = null; List <Premio> premiosList = new List <Premio>(); try { SqlCommand command = new SqlCommand(function); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { premiosList.Add(parsearPremioDelReader(reader)); } } return(premiosList); } catch (Exception e) { throw new DataNotFoundException("No se han podido encontrar premios para los puntos actuales"); } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } }
public List <TipoUbicacion> getTipoUbicaciones() { List <TipoUbicacion> tiposUbicaciones = new List <TipoUbicacion>(); string query = "SELECT * FROM [TheBigBangQuery].[TipoUbicacion]"; SqlDataReader reader = null; try { reader = DatabaseConection.executeQuery(query); if (reader.HasRows) { while (reader.Read()) { tiposUbicaciones.Add(getTipoUbicacionFromReader(reader)); } } } catch (ObjectDisposedException ex) { } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } return(tiposUbicaciones); }
public List <Ubicacion> getUbicaciones() { List <Ubicacion> ubicaciones = new List <Ubicacion>(); SqlDataReader reader = null; string query = baseQuery + ", ubpu_precio" + baseFrom + " JOIN TheBigBangQuery.TipoUbicacion ON (tipu_id = ubi_tipo_codigo)"; try { reader = DatabaseConection.executeQuery(query); if (reader.HasRows) { while (reader.Read()) { ubicaciones.Add(new Ubicacion(reader)); } } } catch (Exception e) { throw new DataNotFoundException("Ha ocurrido un error al traer los datos de la base de datos"); } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } return(ubicaciones); }
public Empresa getEmpresaPorId(int id, SqlTransaction trans = null) { Empresa empresa = new Empresa(); string query = mainEmpresaQuery + "WHERE empr_id = @id"; SqlCommand command = new SqlCommand(query); if (trans != null) { command.Transaction = trans; } SqlParameter param = new SqlParameter("@id", System.Data.SqlDbType.Decimal); param.Value = id; command.Parameters.Add(param); SqlDataReader reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { reader.Read(); empresa = getEmpresaFromReader(reader); } else { reader.Close(); throw new DataNotFoundException("No se ha podido encontrar una empresa con dicho id"); } reader.Close(); return(empresa); }
public List <Compra> getPaginaComprasCliente(int clieId, int pagina) { string function = "SELECT * FROM [TheBigBangQuery].[getComprasPorPagina](@pagina, @clieId)"; SqlDataReader reader = null; List <Compra> compras = new List <Compra>(); try { SqlCommand command = new SqlCommand(function); command.Parameters.AddWithValue("@pagina", pagina); command.Parameters.AddWithValue("@clieId", clieId); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { compras.Add(parsearCompraDelReader(reader)); } } return(compras); } catch (Exception e) { throw new DataNotFoundException("Error al buscar la pagina " + pagina + "de compras"); } finally { if (reader != null && !reader.IsClosed) { reader.Close(); } } }
public List <Empresa> getEmpresasMayoresAId(int id) { List <Empresa> empresas = new List <Empresa>(); string query = mainEmpresaQuery + "WHERE empr_id > @id" + ordenarPorIdAsc; SqlCommand command = new SqlCommand(query); SqlParameter param = new SqlParameter("@id", System.Data.SqlDbType.Decimal); param.Value = id; command.Parameters.Add(param); SqlDataReader reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { empresas.Add(getEmpresaFromReader(reader)); } } else { reader.Close(); throw new DataNotFoundException("No se han encontrado empresas mayores al id " + id); } reader.Close(); return(empresas); }
public List <GradoPublicacion> getGradosDePublicacion() { List <GradoPublicacion> gradosPublicacion = new List <GradoPublicacion>(); string query = "SELECT * " + "FROM TheBigBangQuery.GradoPublicaciones " + "ORDER BY 3 DESC"; SqlDataReader reader = null; try { reader = DatabaseConection.executeQuery(query); if (reader.HasRows) { while (reader.Read()) { gradosPublicacion.Add(getGradoFromReader(reader)); } } } catch (SqlException e) { throw e; } catch (ObjectParseException ex) { throw ex; } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } return(gradosPublicacion); }
public int getPuntosDelCliente(int clieId) { string query = "SELECT clie_puntos FROM TheBigBangQuery.Cliente WHERE clie_id = @clieId"; SqlDataReader reader = null; try { SqlCommand command = new SqlCommand(query); command.Parameters.AddWithValue("@clieId", clieId); reader = DatabaseConection.executeQuery(command); int ret = 0; if (reader.HasRows) { reader.Read(); ret = (int)reader.GetSqlDecimal(0); } return(ret); } catch (Exception ex) { throw new DataNotFoundException("No se han encontrado puntos registrados para el cliente"); } finally { if (reader != null && !reader.IsClosed) { reader.Close(); } } }
public List <Rol> getRoles() { string query = "SELECT rol_cod, rol_nombre, rol_dado_baja, func_id, func_desc " + "FROM TheBigBangQuery.Rol JOIN TheBigBangQuery.Funcionalidades_rol ON (fpr_rol = rol_cod) " + "JOIN TheBigBangQuery.Funcionalidad ON (func_id = fpr_id) " + "Order by rol_nombre ASC"; List <Rol> rolesList = new List <Rol>(); SqlDataReader reader = DatabaseConection.executeQuery(query); if (reader.HasRows) { Rol rol = new Rol(); Funcionalidad fun = new Funcionalidad(); reader.Read(); rol.id = (int)reader.GetSqlDecimal(0); rol.nombre = (string)reader.GetSqlString(1); rol.bajaLogica = (DateTime)reader.GetSqlDateTime(2); fun.id = (int)reader.GetSqlDecimal(3); fun.descripcion = (string)reader.GetSqlString(4); rol.agregarFuncionalidad(fun); while (reader.Read()) { string rolNombre = (string)reader.GetSqlString(1); if (rolNombre.Equals(rol.nombre)) { fun = new Funcionalidad(); fun.id = (int)reader.GetSqlDecimal(3); fun.descripcion = (string)reader.GetSqlString(4); rol.agregarFuncionalidad(fun); } else { rolesList.Add(rol); rol = new Rol(); rol.id = (int)reader.GetSqlDecimal(0); rol.nombre = rolNombre; rol.bajaLogica = (DateTime)reader.GetSqlDateTime(2); fun = new Funcionalidad(); fun.id = (int)reader.GetSqlDecimal(3); fun.descripcion = (string)reader.GetSqlString(4); rol.agregarFuncionalidad(fun); } } rolesList.Add(rol); } reader.Close(); return(rolesList); }
public List <Publicacion> filtrarPaginasPorRubro(int pagina, List <Rubro> rubros) { string funcion = "SELECT * FROM [TheBigBangQuery].[getPaginaPublicacionesPorFiltroRubros](@pagina, @table, @fechaActual)"; List <Publicacion> publis = new List <Publicacion>(); SqlDataReader reader = null; try { SqlCommand command = new SqlCommand(funcion); command.CommandText = funcion; DataTable table = new DataTable(); table.Columns.Add("rub_id", typeof(decimal)); foreach (Rubro r in rubros) { table.Rows.Add(r.id); } SqlParameter param = new SqlParameter("@table", SqlDbType.Structured); param.TypeName = "[TheBigBangQuery].[RubrosList]"; param.Value = table; command.Parameters.AddWithValue("@pagina", pagina); command.Parameters.Add(param); command.Parameters.AddWithValue("@fechaActual", Generals.getFecha()); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { Publicacion publi = ParserPublicaciones.parsearPublicacionDelReader(reader); publi.espectaculo.descripcion = reader.IsDBNull(6) ? null : reader.GetSqlString(6).ToString(); publi.espectaculo.direccion = reader.IsDBNull(7) ? null : reader.GetSqlString(7).ToString(); publi.gradoPublicacion.nivel = reader.IsDBNull(8) ? null : reader.GetSqlString(8).ToString(); publis.Add(publi); } } return(publis); } catch (Exception e) { throw new DataNotFoundException("No se han encontrado publicaciones pertenecientes a los rubros seleccionados"); } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } }
public List <Ubicacion> getUbicacionesDeLaPublicacion(int idPubli, SqlTransaction trans = null) { string query = baseQuery + ", ubpu_precio " + baseFrom + "JOIN [TheBigBangQuery].[Ubicaciones_publicacion] ON (ubpu_id_ubicacion = ubi_id) " + "JOIN [TheBigBangQuery].[TipoUbicacion] ON (tipu_id = ubi_tipo_codigo) " + "WHERE ubpu_id_publicacion = @idPublicacion AND [ubpu_disponible] = 0" + "ORDER BY 2 ASC, 3 ASC"; SqlDataReader reader = null; List <Ubicacion> ubicaciones; try { ubicaciones = new List <Ubicacion>(); SqlCommand command = new SqlCommand(); command.CommandText = query; if (trans != null) { command.Transaction = trans; } SqlParameter param = new SqlParameter("@idPublicacion", SqlDbType.Decimal); param.Value = idPubli; command.Parameters.Add(param); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { ubicaciones.Add(new Ubicacion(reader)); } return(ubicaciones); } else { ubicaciones = new List <Ubicacion>(); } return(ubicaciones); } catch (Exception e) { throw new DataNotFoundException( "No se han podido encontrar las ubicaciones para la publicacion con id {idPubli}" .Replace("{idPubli}", idPubli.ToString() )); } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } }
public List <string> getTiposDeDocumento() { string query = "SELECT tipo_descripcion FROM TheBigBangQuery.Tipo_Documento"; SqlDataReader reader = DatabaseConection.executeQuery(query); List <string> listaTiposDoc = new List <string>(); while (reader.Read()) { listaTiposDoc.Add((string)reader.GetSqlString(0)); } reader.Close(); return(listaTiposDoc); }
public void agregarFuncionalidadPorRol(Rol rol, List <Funcionalidad> funcionalidades) { if (funcionalidades.Count > 0) { string query = "INSERT INTO TheBigBangQuery.Funcionalidades_rol " + "(fpr_rol, fpr_id) VALUES "; funcionalidades.ForEach(elem => { query += " (" + rol.id + " , " + elem.id + "), "; }); query = query.Remove(query.Length - 2, 1); DatabaseConection.executeQuery(query).Close(); } }
public Compra getDetalleCompraPorId(int id) { string query = "SELECT comp_id, comp_fecha_y_hora,comp_medio_de_pago, comp_cantidad,comp_total, " + "publ_id, espe_descripcion, publ_fecha_hora_espectaculo, publ_estado, empr_razon_social, rub_descripcion " + "FROM TheBigBangQuery.Compras " + "JOIN TheBigBangQuery.Publicacion ON (publ_id = comp_publicacion) " + "JOIN TheBigBangQuery.Espectaculo ON (publ_espectaculo = espe_id) " + "JOIN TheBigBangQuery.Empresa ON (espe_empresa = empr_id) " + "JOIN TheBigBangQuery.Rubro ON (espe_rubro = rub_id) " + "WHERE comp_id = @compID"; SqlDataReader reader = null; try { Compra compra = new Compra(); SqlCommand command = new SqlCommand(query); command.CommandText = query; command.Parameters.Add("@compID", id); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { reader.Read(); compra = parsearCompraDelReader(reader); compra.publicacion.fechaEvento = reader.IsDBNull(7) ? Generals.getFechaMinima() : (DateTime)reader.GetSqlDateTime(7); compra.publicacion.estado = reader.IsDBNull(8) ? null : reader.GetSqlString(8).ToString(); Empresa emp = new Empresa(); emp.razonSocial = reader.IsDBNull(9) ? null : reader.GetSqlString(9).ToString(); Rubro rub = new Rubro(); rub.descripcion = reader.IsDBNull(10) ? null : reader.GetSqlString(10).ToString(); compra.publicacion.espectaculo.rubro = rub; compra.publicacion.espectaculo.empresa = emp; return(compra); } return(compra); } catch (Exception e) { throw new DataNotFoundException("No se ha encontrado los detalles de la compra seleccionada"); } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } }
public List <Empresa> getEmpresas() { List <Empresa> empresas = new List <Empresa>(); SqlDataReader reader = DatabaseConection.executeQuery(mainEmpresaQuery + ordenarPorIdAsc); if (reader.HasRows) { while (reader.Read()) { empresas.Add(getEmpresaFromReader(reader)); } } reader.Close(); return(empresas); }
public List <Publicacion> getPublicacionesPorPagina(int pagina, Nullable <int> empresaId = null) { string function = "SELECT * FROM [TheBigBangQuery].[GetPublicacionesPorPaginaSinFiltroDeEmpresa](@pagina, @empresa, @fechaActual)"; SqlDataReader reader = null; List <Publicacion> publicacionesList = new List <Publicacion>(); try { SqlCommand command = new SqlCommand(function); command.CommandText = function; command.Parameters.AddWithValue("@pagina", pagina); if (empresaId != null) { command.Parameters.AddWithValue("@empresa", empresaId); } else { command.Parameters.AddWithValue("@empresa", DBNull.Value); } command.Parameters.AddWithValue("@fechaActual", Generals.getFecha()); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { Publicacion publi = ParserPublicaciones.parsearPublicacionDelReader(reader); publi.espectaculo.descripcion = reader.IsDBNull(6) ? null : reader.GetSqlString(6).ToString(); publi.espectaculo.direccion = reader.IsDBNull(7) ? null : reader.GetSqlString(7).ToString(); publi.gradoPublicacion.nivel = reader.IsDBNull(8) ? null : reader.GetSqlString(8).ToString(); publicacionesList.Add(publi); } } return(publicacionesList); } catch (Exception ex) { throw new DataNotFoundException("No se han encontrado publicaciones para la pagina seleccionada"); } finally { if (reader != null && !reader.IsClosed) { reader.Close(); } } }
public void elminarTarjetaDelCliente(int clieId, int idTarjeta) { string query = "DELETE FROM [TheBigBangQuery].[Tarjetas] WHERE tarj_id = @tarjId AND tarj_cliente = @clieId"; try { SqlCommand command = new SqlCommand(query); command.Parameters.AddWithValue("@tarjId", idTarjeta); command.Parameters.AddWithValue("@clieId", clieId); DatabaseConection.executeQuery(command).Close(); } catch (Exception ex) { throw new Exception("Error al intentar borrar la tarjeta"); } }
public void getTop5EmpresasConMayorLocalidadesNoVendidas(DateTime fechaInicio, DateTime fechaFin, int gradoPubli, Action <List <Estadistico> > result) { string query = "SELECT TOP 5 empr_razon_social, COUNT(ubpu_disponible) " + "FROM [TheBigBangQuery].[Empresa] " + "JOIN [TheBigBangQuery].[Espectaculo] ON (espe_empresa = empr_id) " + "JOIN [TheBigBangQuery].Publicacion ON (publ_espectaculo = espe_id) " + "JOIN TheBigBangQuery.Ubicaciones_publicacion ON (ubpu_id_publicacion = publ_id) " + "JOIN [TheBigBangQuery].[GradoPublicaciones] ON (publ_grad_nivel = grad_id) " + "WHERE ubpu_disponible = 0 AND publ_fecha_hora_espectaculo BETWEEN @fechaInicio AND @fechaFin " + "AND grad_id = @grado " + "GROUP BY empr_razon_social, grad_comision " + "ORDER BY 2 DESC, grad_comision DESC"; SqlDataReader reader = null; try { SqlCommand command = new SqlCommand(query); List <Estadistico> list = new List <Estadistico>(); command.Parameters.AddWithValue("@fechaInicio", fechaInicio); command.Parameters.AddWithValue("@fechaFin", fechaFin); command.Parameters.AddWithValue("@grado", gradoPubli); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { Estadistico est = new Estadistico(); est.nombre = reader.IsDBNull(0) ? null : reader.GetSqlString(0).ToString(); est.cantidad = reader.IsDBNull(1) ? -1 : (int)reader.GetSqlInt32(1); list.Add(est); } } result(list); } catch (Exception e) { throw new DataNotFoundException(errorText); } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } }
public void getTop5ClientesConCompras(DateTime fechaInicio, DateTime fechaFin, Action <List <Estadistico> > result) { // LAS COMPRAS QUE SE CUENTAN SON LAS COMPRAS EN SI, NO LAS UBICACIONES QUE SE COMPRARON; SINO QUE TODA LA BLSA COMPRA COMO UNA string query = "SELECT TOP 5 CONCAT(clie_nombre , ' ', clie_apellido), COUNT(*)" + "FROM [TheBigBangQuery].[Compras] " + "JOIN [TheBigBangQuery].[Ubicaciones_Compra] ON (ubco_compra = comp_id) " + "JOIN [TheBigBangQuery].[Cliente] ON (comp_cliente = clie_id) " + "WHERE comp_fecha_y_hora BETWEEN @fechaInicio AND @fechaFin " + "GROUP BY CONCAT(clie_nombre , ' ', clie_apellido) " + "ORDER BY 2 DESC"; SqlDataReader reader = null; List <Estadistico> estList = new List <Estadistico>(); try { SqlCommand command = new SqlCommand(query); command.CommandText = query; command.Parameters.AddWithValue("@fechaInicio", fechaInicio); command.Parameters.AddWithValue("@fechaFin", fechaFin); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { Estadistico est = new Estadistico(); string nombreCli = reader.IsDBNull(0) ? null : reader.GetSqlString(0).ToString(); int cantidad = reader.IsDBNull(1) ? -1 : (int)reader.GetSqlInt32(1); est.nombre = nombreCli; est.cantidad = cantidad; estList.Add(est); } } result(estList); } catch (Exception e) { throw new DataNotFoundException(errorText); } finally { if (reader != null && !reader.IsClosed) { reader.Close(); } } }
public void borrarFuncionalidadPorRol(Rol rol, List <Funcionalidad> funcionalidades) { if (funcionalidades.Count > 0) { string query = "DELETE FROM TheBigBangQuery.Funcionalidades_rol " + "WHERE fpr_rol = " + rol.id + " AND ("; for (int i = 0; i < funcionalidades.Count; i++) { query += " fpr_id = " + funcionalidades.ElementAt(i).id; if (i + 1 != funcionalidades.Count) { query += " OR"; } } query += ")"; DatabaseConection.executeQuery(query).Close(); } }
public void getUbicacionesDeLaCompra(Compra compra, Action <List <Ubicacion> > ubicacionesFun, SqlTransaction trans = null) { SqlDataReader reader = null; List <Ubicacion> ubicaciones = new List <Ubicacion>(); string query = "SELECT ubi_id, ubi_fila, ubi_asiento, ubi_sin_enumerar, tipu_id, tipu_descripcion, ubpu_precio " + "FROM [TheBigBangQuery].[Compras]" + " JOIN [TheBigBangQuery].[Ubicaciones_Compra] ON (comp_id = ubco_compra)" + " JOIN [TheBigBangQuery].[Ubicacion] ON (ubi_id = ubco_ubicacion)" + " JOIN [TheBigBangQuery].[Ubicaciones_publicacion] ON (ubpu_id_ubicacion = ubi_id AND ubpu_id_publicacion = comp_publicacion)" + " JOIN [TheBigBangQuery].[TipoUbicacion] ON (ubi_tipo_codigo = tipu_id)" + " WHERE comp_id = @compraId"; try { SqlCommand command = new SqlCommand(query); command.CommandText = query; if (trans != null) { command.Transaction = trans; } command.Parameters.AddWithValue("@compraId", compra.id); reader = DatabaseConection.executeQuery(command); if (reader.HasRows) { while (reader.Read()) { ubicaciones.Add(new Ubicacion(reader)); } } ubicacionesFun(ubicaciones); } catch (Exception e) { throw new DataNotFoundException("No se han encontrado ubicaciones para la compra solicitada"); } finally { if (reader != null & !reader.IsClosed) { reader.Close(); } } }