Exemplo n.º 1
0
        private ClsPrueba GetModel(IEnumerable <int> izq, IEnumerable <int> der)
        {
            ClsPrueba model = new ClsPrueba();

            if (izq.Any())
            {
                model.numerosactualesizq = izq.Select(n => n.ToString()).Aggregate((x, y) => x + "," + y);
                model.numerosizq         = izq.OrderBy(x => x).Select(n => new SelectListItem {
                    Value = n.ToString(), Text = n.ToString()
                });
            }
            else
            {
                model.numerosizq = new List <SelectListItem>();
            }

            if (der.Any())
            {
                model.numerosactualesder = der.Select(n => n.ToString()).Aggregate((x, y) => x + "," + y);
                model.numerosder         = der.OrderBy(x => x).Select(n => new SelectListItem {
                    Value = n.ToString(), Text = n.ToString()
                });
            }
            else
            {
                model.numerosder = new List <SelectListItem>();
            }
            return(model);
        }
Exemplo n.º 2
0
 public ClsMainPageVM()
 {
     this.mensajeError       = "";
     this.palabraIntroducida = new ClsPalabras();
     this.listadoPalabras    = new ObservableCollection <ClsPalabras>();
     this.palabraSeleccionda = new ClsPalabras();
     this.prueba             = new ClsPrueba();
     this.minutos            = 0;
     this.segundos           = 0;
 }
Exemplo n.º 3
0
 public ClsMainPageVM(ClsPalabras palabraIntroducida, ObservableCollection <ClsPalabras> listadoPalabras, ClsPalabras palabraSeleccionda, ClsPrueba prueba, int minutos, int segundos, DelegateCommand aniadirPalabraCommand, DelegateCommand guardarCommand)
 {
     this.palabraIntroducida    = palabraIntroducida;
     this.listadoPalabras       = listadoPalabras;
     this.palabraSeleccionda    = palabraSeleccionda;
     this.prueba                = prueba;
     this.minutos               = minutos;
     this.segundos              = segundos;
     this.aniadirPalabraCommand = aniadirPalabraCommand;
     this.guardarCommand        = guardarCommand;
 }
Exemplo n.º 4
0
        private bool progressRingVisibilidad;//para ocultar el progressBar

        #region constructores
        public ClsMainPageVM()
        {
            this.progressRingVisibilidad = false;
            this.progressRing            = false;
            this.mensajeError            = "";
            this.palabra            = "";
            this.dificultad         = 0;
            this.listadoPalabras    = new ObservableCollection <ClsPalabras>();
            this.palabraSeleccionda = new ClsPalabras();
            this.prueba             = new ClsPrueba();
            this.minutos            = 0;
            this.segundos           = 0;
        }
Exemplo n.º 5
0
        public ActionResult Index()
        {
            List <int> items = new List <int>();

            for (int i = 1; i <= 10; i++)
            {
                items.Add(i);
            }

            ClsPrueba num = GetModel(items, new List <int>());

            return(View(num));
        }
Exemplo n.º 6
0
        /// <summary>
        /// prototipo: public int InsertarPruebaBL(ClsPrueba prueba)
        /// comentarios: sirve para insertar una prueba a la bbdd
        /// precondiciones: los datos de entrada tienen que ser correctos
        /// </summary>
        /// <param name="prueba">ClsPrueba</param>
        /// <returns>un entero</returns>
        /// postcondiciones: asociado a nombre devuelve un 1 si la prueba se ha insertado correctamente y un 0 si no
        public int InsertarPruebaBL(ClsPrueba prueba)
        {
            int exito = 0;

            try
            {
                exito = new ClsManejadoraPruebaDAL().InsertarPruebaDAL(prueba);
            }
            catch (SqlException exSql)
            {
                throw exSql;
            }
            return(exito);
        }
Exemplo n.º 7
0
        /// <summary>
        /// prototipo: public ClsPrueba ObtenerPrimeraPruebaBL()
        /// comentarios: sirve para obtener la primera prueba
        /// precondiciones: no hay
        /// </summary>
        /// <returns>ClsPrueba</returns>
        /// postcondiciones: asociado a nombre devuelve un objeto prueba o un null si la prueba no existe
        public ClsPrueba ObtenerPrimeraPruebaBL()
        {
            ClsPrueba prueba = null;

            try
            {
                prueba = new ClsManejadoraPruebaDAL().ObtenerPrimeraPruebaDAL();
            }
            catch (SqlException exSql)
            {
                throw exSql;
            }
            return(prueba);
        }
Exemplo n.º 8
0
        /// <summary>
        /// sirve para pasar a la siguente prueba
        /// </summary>
        private void siguentePrueba()
        {
            try
            {
                this.borderBrushPalabraEscrita = "Black";

                this.pruebaActual = new ClsManejadoraPruebaBL().ObtenerSiguentePruebaBL(this.pruebaActual.IdPrueba);
                if (this.pruebaActual != null)
                {
                    this.listadoPalabrasPorPrueba = new ClsListadoPalabrasBL().ObtenerPalabrasPorIdPruebaBL(this.pruebaActual.IdPrueba);
                    if (this.listadoPalabrasPorPrueba != null)//por si hay pruebas que todavia no tienen palabras
                    {
                        obtenerTotalDificultades();
                        //calcularTamañoPantalla();
                        NotifyPropertyChanged("TamañoRelativePanel");
                        this.moverCamello = 0.0;
                        NotifyPropertyChanged("MoverCamello");
                        barjarPalabras();
                        primeraPalabra();


                        this.tiempoMaximo = this.pruebaActual.TiempoMaximo;
                        NotifyPropertyChanged("TiempoMaximo");
                        this.minutos         = Convert.ToInt32(this.tiempoMaximo.Substring(3, 2));
                        this.segundos        = Convert.ToInt32(this.tiempoMaximo.Substring(6, 2));
                        this.tiempo          = new DispatcherTimer();
                        this.tiempo.Interval = new TimeSpan(0, 0, 1);
                        this.tiempo.Tick    += Timer_Tik;
                    }
                    else
                    {
                        irAlMenu();
                        var dlg = new MessageDialog("Esta prueba aún no tiene palabras,Pronto podrás jugar. Gracias ");
                        var res = dlg.ShowAsync();
                    }
                }
                else
                {
                    irAlMenu();
                    var dlg = new MessageDialog("¡Enhorabuenaaa!No hay más pruebas");
                    var res = dlg.ShowAsync();
                }
            }
            catch (Exception)
            {
                var dlg = new MessageDialog("Problemas de conexión. Inténtalo más tarde por favor");
                var res = dlg.ShowAsync();
            }
        }
Exemplo n.º 9
0
        /// <summary>
        /// prototipo: public ClsPrueba ObtenerSiguentePruebaBL(int idPruebaAnterior)
        /// comentarios: sirve para obtener la siguente prueba
        /// precondiciones: no hay
        /// </summary>
        /// <param name="idPruebaAnterior">entero</param>
        /// <returns>ClsPrueba</returns>
        /// postcondiciones: asociado a nombre devuelve un objeto prueba o un null si la prueba no existe
        public ClsPrueba ObtenerSiguentePruebaBL(int idPruebaAnterior)
        {
            ClsPrueba prueba = null;

            try
            {
                prueba = new ClsManejadoraPruebaDAL().ObtenerSiguentePruebaDAL(idPruebaAnterior);
            }
            catch (SqlException exSql)
            {
                throw exSql;
            }

            return(prueba);
        }
Exemplo n.º 10
0
        /// <summary>
        /// prototipo: public ClsPrueba ObtenerSiguentePruebaDAL(int idPruebaAnterior)
        /// comentarios: sirve para obtener la siguente prueba
        /// precondiciones: no hay
        /// </summary>
        /// <param name="idPruebaAnterior">entero</param>
        /// <returns>ClsPrueba</returns>
        /// postcondiciones: asociado a nombre devuelve un objeto prueba o un null si la prueba no existe
        public ClsPrueba ObtenerSiguentePruebaDAL(int idPruebaAnterior)
        {
            ClsPrueba prueba = null;

            ClsMyConnection miConexion = null;

            SqlCommand    miComando = new SqlCommand();
            SqlConnection conexion  = null;
            SqlDataReader miLector  = null;

            miConexion = new ClsMyConnection();
            miComando.Parameters.Add("@idPrueba", System.Data.SqlDbType.Int).Value = idPruebaAnterior;

            try
            {
                conexion = miConexion.getConnection();

                miComando.CommandText = "select top 1 * from CJ_Pruebas where idPrueba > @idPrueba";

                miComando.Connection = conexion;
                miLector             = miComando.ExecuteReader();

                //Si hay lineas en el lector
                if (miLector.HasRows)
                {
                    miLector.Read();

                    prueba = new ClsPrueba();

                    prueba.IdPrueba       = (int)miLector["idPrueba"];
                    prueba.NumeroPalabras = (int)miLector["numeroPalabras"];
                    prueba.TiempoMaximo   = miLector["tiempoMaximo"].ToString();
                }
            }
            catch (SqlException exSql)
            {
                throw exSql;
            }
            finally
            {
                if (conexion != null)
                {
                    miConexion.closeConnection(ref conexion);
                }
            }
            return(prueba);
        }
Exemplo n.º 11
0
        /// <summary>
        /// prototipo: public ClsPrueba ObtenerPrimeraPruebaDAL()
        /// comentarios: sirve para obtener la primera prueba
        /// precondiciones: no hay
        /// </summary>
        /// <returns>ClsPrueba</returns>
        /// postcondiciones: asociado a nombre devuelve un objeto prueba o un null si la prueba no existe
        public ClsPrueba ObtenerPrimeraPruebaDAL()
        {
            ClsPrueba prueba = null;

            ClsMyConnection miConexion = null;

            SqlCommand    miComando = new SqlCommand();
            SqlConnection conexion  = null;
            SqlDataReader miLector  = null;

            miConexion = new ClsMyConnection();

            try
            {
                conexion = miConexion.getConnection();

                miComando.CommandText = "select top 1 * from CJ_Pruebas";

                miComando.Connection = conexion;
                miLector             = miComando.ExecuteReader();

                //Si hay lineas en el lector
                if (miLector.HasRows)
                {
                    miLector.Read();

                    prueba = new ClsPrueba();

                    prueba.IdPrueba       = (int)miLector["idPrueba"];
                    prueba.NumeroPalabras = (int)miLector["numeroPalabras"];
                    prueba.TiempoMaximo   = miLector["tiempoMaximo"].ToString();
                }
            }
            catch (SqlException exSql)
            {
                throw exSql;
            }
            finally
            {
                if (conexion != null)
                {
                    miConexion.closeConnection(ref conexion);
                }
            }
            return(prueba);
        }
Exemplo n.º 12
0
        /// <summary>
        /// prototipo: public int InsertarPruebaDAL(ClsPrueba prueba)
        /// comentarios: sirve para insertar una prueba a la bbdd
        /// precondiciones: los datos de entrada tienen que ser correctos
        /// </summary>
        /// <param name="prueba">ClsPrueba</param>
        /// <returns>un entero</returns>
        /// postcondiciones: asociado a nombre devuelve un 1 si la prueba se ha insertado correctamente y un 0 si no
        public int InsertarPruebaDAL(ClsPrueba prueba)
        {
            ClsMyConnection miConexion = null;

            int exito = 0;

            SqlCommand    miComando = new SqlCommand();
            SqlDataReader miLector  = null;
            SqlConnection conexion  = null;

            miConexion = new ClsMyConnection();

            miComando.Parameters.Add("@numeroPalabras", System.Data.SqlDbType.Int).Value   = prueba.NumeroPalabras;
            miComando.Parameters.Add("@tiempoMaximo", System.Data.SqlDbType.VarChar).Value = prueba.TiempoMaximo;

            miComando.CommandText = "insert into CJ_Pruebas (numeroPalabras,tiempoMaximo) " +
                                    "values(@numeroPalabras, @tiempoMaximo)";

            try
            {
                conexion             = miConexion.getConnection();
                miComando.Connection = conexion;
                exito = miComando.ExecuteNonQuery();
            }

            catch (SqlException exSql)
            {
                throw exSql;
            }
            finally
            {
                if (miLector != null)
                {
                    miLector.Close();
                }

                if (conexion != null)
                {
                    miConexion.closeConnection(ref conexion);
                }
            }
            return(exito);
        }
Exemplo n.º 13
0
        public ActionResult Index(ClsPrueba model)
        {
            List <int> izq = GetNumbers(model.numerosactualesizq);
            List <int> der = GetNumbers(model.numerosactualesder);

            if (model.numseleccionadosizq != null)
            {
                foreach (var i in model.numseleccionadosizq)
                {
                    izq.Remove(i);
                    der.Add(i);
                }
            }

            if (model.numseleccionadosder != null)
            {
                foreach (var i in model.numseleccionadosder)
                {
                    der.Remove(i);
                    izq.Add(i);
                }
            }
            return(View(GetModel(izq, der)));
        }
Exemplo n.º 14
0
 public Form1()
 {
     InitializeComponent();
     prueba = new ClsPrueba();
 }
Exemplo n.º 15
0
        private string borderBrushPalabraEscrita;//para poner el textbox de la palabra que escribe el jugador en rojo si se equivoca
        #endregion


        #region constructores
        public ClsJuegoVM(string nick)
        {
            try
            {
                this.borderBrushPalabraEscrita = "Black";
                this.nick = nick;

                int id = new ClsManejadoraProgresosBL().ObtenerUltimoProgresoBL(this.nick);

                this.imagenCamello = "ms-appx:///Assets/Imagenes/camellos.gif";

                if (id == 0)//es la primera vez que juega
                {
                    this.pruebaActual = new ClsManejadoraPruebaBL().ObtenerPrimeraPruebaBL();
                }
                else
                {
                    this.pruebaActual = new ClsManejadoraPruebaBL().ObtenerSiguentePruebaBL(id);
                }

                if (this.pruebaActual != null)//si tengo timepo pondré que pueda volver a jugar
                {
                    this.listadoPalabrasPorPrueba = new ClsListadoPalabrasBL().ObtenerPalabrasPorIdPruebaBL(this.pruebaActual.IdPrueba);
                    if (this.listadoPalabrasPorPrueba != null)//por si hay pruebas que todavia no tienen palabras
                    {
                        obtenerTotalDificultades();
                        //calcularTamañoPantalla();
                        this.moverCamello = 0.0;
                        barjarPalabras();

                        primeraPalabra();

                        this.tiempoMaximo = this.pruebaActual.TiempoMaximo;
                        this.minutos      = Convert.ToInt32(this.tiempoMaximo.Substring(3, 2));
                        this.segundos     = Convert.ToInt32(this.tiempoMaximo.Substring(6, 2));

                        this.tiempo = new DispatcherTimer();

                        this.tiempo.Interval = new TimeSpan(0, 0, 1);

                        this.tiempo.Tick += Timer_Tik;
                    }
                    else
                    {
                        irAlMenu();
                        var dlg = new MessageDialog("Esta prueba aún no tiene palabras,Pronto podrás jugar. Gracias ");
                        var res = dlg.ShowAsync();
                    }
                }
                else
                {
                    irAlMenu();
                    var dlg = new MessageDialog("Has superado  todas la pruebas");
                    var res = dlg.ShowAsync();
                    //nivelesSuperados();
                }
            }
            catch (Exception)
            {
                var dlg = new MessageDialog("Problemas de conexión. Inténtalo más tarde por favor");
                var res = dlg.ShowAsync();
            }
        }
Exemplo n.º 16
0
 public ClsJuegoVM(ClsPrueba pruebaActual, ObservableCollection <ClsPalabras> listadoPalabrasPorPrueba, string tiempoMaximo)
 {
     this.pruebaActual             = pruebaActual;
     this.listadoPalabrasPorPrueba = listadoPalabrasPorPrueba;
     this.tiempoMaximo             = tiempoMaximo;
 }
Exemplo n.º 17
0
        /// <summary>
        /// primero  inserta la prueba
        /// segundo obtiene el id de esa prueba
        /// tercero inserta las palabras
        /// cuarto obtiene los ids de esas palabras
        /// quinto inserta en la tabla intermedia CJ_PruebasPalabras
        /// </summary>
        private void guardar()
        {
            int        exito              = 0;
            int        idUltimaPrueba     = 0;
            List <int> idsUltimasPalabras = null;

            if (listadoPalabras.Count > 4)//tiene que insertar al menos 5 palabras
            {
                progressRingVisibilidad = true;
                NotifyPropertyChanged("ProgressRingVisibilidad");
                progressRing = true;
                NotifyPropertyChanged("ProgressRing");
                try
                {
                    this.prueba.NumeroPalabras = listadoPalabras.Count;
                    exito = new ClsManejadoraPruebaBL().InsertarPruebaBL(this.prueba);

                    if (exito > 0)
                    {
                        idUltimaPrueba = new ClsManejadoraPruebaBL().ObtenerIdUltimaPruebaBL();

                        for (int i = 0; i < listadoPalabras.Count; i++)
                        {
                            new ClsManejadoraPalabraBL().InsertarPalabraBL(listadoPalabras[i]);
                        }

                        idsUltimasPalabras = new ClsListadoUltimasNPalabrasBL().ObtenerIdsDeUltimasNPalabrasBL(listadoPalabras.Count);

                        for (int i = 0; i < idsUltimasPalabras.Count; i++)
                        {
                            new ClsManejadoraPruebaPalabraBL().InsertarPruebaPalabrasDAL(idUltimaPrueba, idsUltimasPalabras[i]);
                        }

                        listadoPalabras = new ObservableCollection <ClsPalabras>();
                        NotifyPropertyChanged("ListadoPalabras");
                        this.prueba = new ClsPrueba();
                        NotifyPropertyChanged("Prueba");
                    }
                    else
                    {
                        var dlg = new MessageDialog("La prueba no se ha insertado correctamente");
                        var res = dlg.ShowAsync();
                    }
                }
                catch (Exception)
                {
                    var dlg = new MessageDialog("Problemas de conexión. Inténtalo más tarde por favor");
                    var res = dlg.ShowAsync();
                }
            }
            else
            {
                var dlg = new MessageDialog("Hay que insertar al menos 5 palabras");
                var res = dlg.ShowAsync();
            }

            progressRing = false;
            NotifyPropertyChanged("ProgressRing");
            progressRingVisibilidad = false;
            NotifyPropertyChanged("ProgressRingVisibilidad");
        }