Exemple #1
0
        /// <summary>
        /// Método que obtiene el id de la última prueba registrada de un jugador
        /// </summary>
        /// <param name="idJugador">int con el id del jugador</param>
        /// <returns>int idPrueba, con id de la prueba obtenida de la BBDD</returns>
        public int getUltimaPruebaJugador(int idJugador)
        {
            clsMyConnection objConnection = new clsMyConnection();
            SqlConnection   connection    = null;
            SqlCommand      command       = new SqlCommand();
            SqlDataReader   reader        = null;

            clsPrueba objPrueba = null;
            int       idPrueba  = 0;

            try
            {
                connection         = objConnection.getConnection();
                command.Connection = connection;

                command.Parameters.Add("@idJugador", System.Data.SqlDbType.Int).Value = idJugador;
                command.CommandText = "SELECT TOP 1 idPrueba FROM CJ_PruebasJugadores WHERE idJugador = @idJugador ORDER BY idPrueba DESC";

                reader = command.ExecuteReader();

                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        idPrueba = (int)reader["idPrueba"];

                        //objPrueba = new clsPrueba();

                        //objPrueba.IdPrueba = (int)reader["idPrueba"];
                        //objPrueba.NumeroPalabras = (int)reader["numeroPalabras"];
                        //objPrueba.TiempoMax = (DateTime)reader["tiempoMaximo"];
                    }
                }
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
                if (connection != null)
                {
                    objConnection.closeConnection(ref connection);
                }
            }

            return(idPrueba);
        }
Exemple #2
0
        /// <summary>
        /// Método que obtiene el listado completo de pruebas de la BBDD
        /// </summary>
        /// <returns>ObservableCollection<clsPrueba> listaPruebas con todas las pruebas obtenidas de la BBDD</returns>
        public ObservableCollection <clsPrueba> getListadoCompletoPruebas()
        {
            clsMyConnection objConnection = new clsMyConnection();
            SqlConnection   connection    = null;
            SqlCommand      command       = new SqlCommand();
            SqlDataReader   reader        = null;

            ObservableCollection <clsPrueba> listaPruebas = new ObservableCollection <clsPrueba>();
            clsPrueba objPrueba = null;

            try
            {
                connection         = objConnection.getConnection();
                command.Connection = connection;

                command.CommandText = "SELECT * FROM CJ_Pruebas";

                reader = command.ExecuteReader();

                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        objPrueba = new clsPrueba();

                        objPrueba.IdPrueba       = (int)reader["idPrueba"];
                        objPrueba.NumeroPalabras = (int)reader["numeroPalabras"];
                        objPrueba.TiempoMax      = Convert.ToDateTime(reader["tiempoMaximo"].ToString());

                        listaPruebas.Add(objPrueba);
                    }
                }
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
                if (connection != null)
                {
                    objConnection.closeConnection(ref connection);
                }
            }

            return(listaPruebas);
        }
Exemple #3
0
        /*TODO:
         * - clsPrueba getPrueba(int idPrueba)
         * - int getUltimaPruebaJugador(int idJugador)
         * - ObservableCollection<clsPrueba> getListadoCompletoPruebas() //Porque quizás sea mejor obtener todas las pruebas del tirón
         *   y luego buscar en la lista la prueba en concreto que desee, y así no itero sobre el idPrueba si no sobre la posición de las pruebas
         *   en el listado
         */

        /// <summary>
        /// Método que obtiene una prueba de la BBDD
        /// </summary>
        /// <param name="idPrueba">int con el id de la prueba que se desea obtener</param>
        /// <returns>clsPrueba objPrueba con la prueba obtenida de la BBDD</returns>
        public clsPrueba getPrueba(int idPrueba)
        {
            clsMyConnection objConnection = new clsMyConnection();
            SqlConnection   connection    = null;
            SqlCommand      command       = new SqlCommand();
            SqlDataReader   reader        = null;

            clsPrueba objPrueba = null;

            try
            {
                connection         = objConnection.getConnection();
                command.Connection = connection;

                command.Parameters.Add("@idPrueba", System.Data.SqlDbType.Int).Value = idPrueba;
                command.CommandText = "SELECT * FROM CJ_Pruebas WHERE  idPrueba = @idPrueba";

                reader = command.ExecuteReader();

                if (reader.HasRows)
                {
                    if (reader.Read())
                    {
                        objPrueba = new clsPrueba();

                        objPrueba.IdPrueba       = (int)reader["idPrueba"];
                        objPrueba.NumeroPalabras = (int)reader["numeroPalabras"];
                        //objPrueba.TiempoMax = (DateTime)reader["tiempoMaximo"];
                        objPrueba.TiempoMax = Convert.ToDateTime(reader["tiempoMaximo"].ToString());
                    }
                }
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
                if (connection != null)
                {
                    objConnection.closeConnection(ref connection);
                }
            }

            return(objPrueba);
        }
Exemple #4
0
        /*
         * TODO:
         * - int insertarPrueba(clsPrueba nuevaPrueba)
         */

        /// <summary>
        /// Método que inserta una nueva prueba y obtiene su idPrueba generado, de la BBDD
        /// </summary>
        /// <param name="nuevaPrueba">clsPrueba con los datos de la nueva prueba a insertar</param>
        /// <returns>int idPrueba, con el idPrueba generado al insertar la nueva prueba</returns>
        public int insertarPrueba(clsPrueba nuevaPrueba)
        {
            clsMyConnection objConnection = new clsMyConnection();
            SqlConnection   connection    = null;
            SqlCommand      command       = new SqlCommand();

            //int filasAfectadas;
            Int32 idPrueba = 0;

            try
            {
                connection         = objConnection.getConnection();
                command.Connection = connection;


                command.Parameters.Add("@numeroPalabras", System.Data.SqlDbType.Int).Value = nuevaPrueba.NumeroPalabras;
                command.Parameters.Add("@tiempoMaximo", System.Data.SqlDbType.Time).Value  = nuevaPrueba.TiempoMax;


                /*Me llama la atención meter dos sentencias SQL a la vez en el CommandText, pero en la documentación de microsoft lo hacen así, con la sentencia de inserción primero y después
                 * el select, y obtiene el idJugador únicamente que era mi intención, porque es lo único que quiero pasarle a la siguiente vista*/
                command.CommandText = "INSERT INTO CJ_Pruebas(numeroPalabras, tiempoMaximo) VALUES (@numeroPalabras, @tiempoMaximo) " +
                                      "SELECT TOP 1 * FROM CJ_Pruebas ORDER BY idPrueba DESC"; //Pilla sólo la primera columna y de la primera fila de la última prueba insertada, en mi caso el idPrueba

                //Ejecuta la instrucción SQL
                //filasAfectadas = command.ExecuteNonQuery();
                idPrueba = (Int32)command.ExecuteScalar();
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                if (connection != null)
                {
                    objConnection.closeConnection(ref connection);
                }
            }


            return((int)idPrueba);
        }
Exemple #5
0
 /// <summary>
 /// Método que inserta una nueva prueba y obtiene su idPrueba generado, de la BBDD
 /// </summary>
 /// <param name="nuevaPrueba">clsPrueba con los datos de la nueva prueba a insertar</param>
 /// <returns>int idPrueba, con el idPrueba generado al insertar la nueva prueba</returns>
 public int insertarPrueba(clsPrueba nuevaPrueba)
 {
     return(new clsHandlerPruebasDAL().insertarPrueba(nuevaPrueba));
 }