public ActionResult play(Guid id) { JuegoPRViewModel model = new JuegoPRViewModel(); var user = User.Identity.GetUserId(); var historiepreguntas = new Repositorio <JuegoHistory>(db).TraerTodos().Where(x => x.Categoria.Id == id && x.Usuario.ApplicationUser.Id == user); var preguntas = new Repositorio <Pregunta>(db).TraerTodos().Where(x => x.Categoria.Id == id); var categoria = new Repositorio <Categoria>(db).Traer(id); Usuario usuario = new Repositorio <Usuario>(db).TraerTodos().FirstOrDefault(x => x.ApplicationUser.Id == user); Random rnd = new Random(); List <Guid> historyPreg = historiepreguntas.Select(x => x.Pregunta.Id).ToList(); List <Guid> preguntasall = preguntas.Select(x => x.Id).ToList(); List <Guid> pregFaltantes = preguntasall.Except(historyPreg).ToList(); int indice = rnd.Next(pregFaltantes.Count()); if (pregFaltantes.Count > 0) { Pregunta preg = preguntas.ToList().Where(x => x.Id == pregFaltantes[indice]).FirstOrDefault(); model.Nombre = preg.Nombre; model.PregId = preg.Id; model.catId = categoria.Id; model.UserId = usuario.Id; model.RespuestaDisponibles = preg.Respuestas.Select(x => new JuegoRespuestaViewModel { Id = x.Id, esCorrecta = x.Escorrecta, Nombre = x.Nombre }).ToList(); return(View(model)); } else { return(RedirectToAction("Result", new { id = categoria.Id })); } }
public JuegoHistory(JuegoPRViewModel model, ApplicationDbContext db) { Nombre = "History"; Categoria = new Repositorio <Categoria>(db).Traer(model.catId); Respuesta = new Repositorio <Respuesta>(db).Traer(model.RespSeleccionada); Pregunta = new Repositorio <Pregunta>(db).Traer(model.PregId); Usuario = new Repositorio <Usuario>(db).Traer(model.UserId); }
public ActionResult saveGame(JuegoPRViewModel model) { //model.UserId = new Guid(User.Identity.GetUserId()); var respuestas = new Repositorio <Respuesta>(db).TraerTodos().Where(x => x.Pregunta.Id == model.PregId); var respOk = respuestas.Where(p => p.Escorrecta == true).Select(x => x.Id).FirstOrDefault(); var hist = new JuegoHistory(model, db); new Repositorio <JuegoHistory>(db).Crear(hist); //var pelicula = new Repositorio<Pelicula>(db).Traer(Id); return(Json(new { Id = respOk, model = model }, JsonRequestBehavior.AllowGet)); }
public ActionResult saveGame(/*JuegoPRViewModel model*/) { if (string.IsNullOrEmpty(this.error)) { JuegoPRViewModel model = Newtonsoft.Json.JsonConvert.DeserializeObject <JuegoPRViewModel>(this.Contenido); //model.UserId = new Guid(User.Identity.GetUserId()); var respuestas = new Repositorio <Respuesta>(db).TraerTodos().Where(x => x.Pregunta.Id == model.PregId); var respOk = respuestas.Where(p => p.Escorrecta == true).Select(x => x.Id).FirstOrDefault(); var hist = new JuegoHistory(model, db); new Repositorio <JuegoHistory>(db).Crear(hist); //var pelicula = new Repositorio<Pelicula>(db).Traer(Id); return(Json(new { Id = respOk, model = model }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { error = this.error }, JsonRequestBehavior.AllowGet)); } }
public ActionResult play() { if (string.IsNullOrEmpty(this.error)) { Guid id = Newtonsoft.Json.JsonConvert.DeserializeObject <Guid>(this.Contenido); JuegoPRViewModel model = new JuegoPRViewModel(); var user = this.usuarioId; var historiepreguntas = new Repositorio <JuegoHistory>(db).TraerTodos().Where(x => x.Categoria.Id == id && x.Usuario.ApplicationUser.Id == user); var preguntas = new Repositorio <Pregunta>(db).TraerTodos().Where(x => x.Categoria.Id == id); var categoria = new Repositorio <Categoria>(db).Traer(id); Usuario usuario = new Repositorio <Usuario>(db).TraerTodos().FirstOrDefault(x => x.ApplicationUser.Id == user); Random rnd = new Random(); List <Guid> historyPreg = historiepreguntas.Select(x => x.Pregunta.Id).ToList(); List <Guid> preguntasall = preguntas.Select(x => x.Id).ToList(); List <Guid> pregFaltantes = preguntasall.Except(historyPreg).ToList(); int indice = rnd.Next(pregFaltantes.Count()); if (pregFaltantes.Count > 0) { Pregunta preg = preguntas.ToList().Where(x => x.Id == pregFaltantes[indice]).FirstOrDefault(); model.Nombre = preg.Nombre; model.PregId = preg.Id; model.catId = categoria.Id; model.UserId = usuario.Id; model.RespuestaDisponibles = preg.Respuestas.Select(x => new JuegoRespuestaViewModel { Id = x.Id, esCorrecta = x.Escorrecta, Nombre = x.Nombre }).ToList(); return(Json(new { model = model, Result = "" }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { Result = categoria.Id }, JsonRequestBehavior.AllowGet)); } //return RedirectToAction("Result", new { id = categoria.Id }); } else { return(Json(new { error = this.error }, JsonRequestBehavior.AllowGet)); } }