Пример #1
0
        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();
                }
            }
        }
Пример #2
0
        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);
        }
Пример #3
0
        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();
                }
            }
        }
Пример #4
0
        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();
                }
            }
        }
Пример #5
0
        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();
                }
            }
        }
Пример #6
0
        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);
        }
Пример #7
0
        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();
                }
            }
        }
Пример #8
0
        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();
                }
            }
        }
Пример #9
0
        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();
                }
            }
        }
Пример #10
0
        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();
                }
            }
        }
Пример #11
0
        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);
        }
Пример #12
0
        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);
        }
Пример #13
0
        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);
        }
Пример #14
0
        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();
                }
            }
        }
Пример #15
0
        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);
        }
Пример #16
0
        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);
        }
Пример #17
0
        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();
                }
            }
        }
Пример #18
0
        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);
        }
Пример #19
0
        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();
                }
            }
        }
Пример #20
0
        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();
                }
            }
        }
Пример #21
0
        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);
        }
Пример #22
0
 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();
     }
 }
Пример #23
0
        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();
                }
            }
        }
Пример #24
0
        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);
        }
Пример #25
0
        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();
                }
            }
        }
Пример #26
0
        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");
            }
        }
Пример #27
0
        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();
                }
            }
        }
Пример #28
0
        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();
                }
            }
        }
Пример #29
0
 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();
     }
 }
Пример #30
0
        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();
                }
            }
        }