public JogadaModel ReturnPlayWinner(TorneioModel torneioModel) { if (torneioModel.ListaPartidas.Any(x => x.ListaJogadas.Count != 2)) { return(null); } var jogadas = torneioModel.ListaPartidas.SelectMany(x => x.ListaJogadas); jogadas = jogadas.Where(x => !(x.Strategy.Equals("S") || x.Strategy.Contains("P") || x.Strategy.Contains("R"))); if (jogadas.Count() > 0) { string returnString = "Partidas inválidas! Verifiquem as partidas: "; jogadas.ToList().ForEach(x => returnString += string.Format("\n jogador {0}, partida {1}", x.NamePlayer, x.PartidaModel.Ordem) ); } var torneio = Mapper.Map <Torneio>(torneioModel); var winner = RetornaVencedorTorneio(torneio); return(Mapper.Map <JogadaModel>(winner)); }
public ActionResult Create([Bind(Include = "Id,Nome,Qnt_Times")] TorneioModel torneioModel) { if (ModelState.IsValid) { var result = db.Times .Select(m => new { Id = m.Id, Name = m.Nome, Escudo = m.EscudoUrl }).ToList(); if (result.Count >= torneioModel.Qnt_Times) { db.TorneioModels.Add(torneioModel); db.SaveChanges(); } else { } return(RedirectToAction("Index")); } return(View(torneioModel)); }
public ActionResult DeleteConfirmed(int id) { TorneioModel torneioModel = db.TorneioModels.Find(id); db.TorneioModels.Remove(torneioModel); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "Id,Nome,Qnt_Times")] TorneioModel torneioModel) { if (ModelState.IsValid) { db.Entry(torneioModel).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(torneioModel)); }
public ResponseModelDados <JogadaModel> RetornaVencedorTorneio(TorneioModel torneio) { var request = new RestRequest(); var estrategias = new RestRequest("http://localhost:55737/api/RockPaperScissors/ReturnWinner"); estrategias.Method = Method.POST; estrategias.AddHeader("Accept", "application/json"); estrategias.AddJsonBody(torneio); return(teste.Executar <JogadaModel>(torneio, estrategias)); }
// GET: Torneio/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TorneioModel torneioModel = db.TorneioModels.Find(id); if (torneioModel == null) { return(HttpNotFound()); } return(View(torneioModel)); }
public JsonResult VerificaVencedor() { if (Session["listaPartidas"] != null) { listaPartidas = (List <PartidaModel>)Session["listaPartidas"]; } var torneio = new TorneioModel(); torneio.ListaPartidas = listaPartidas; var winner = rockPaperScissors.RetornaVencedorTorneio(torneio); string mensagem = string.Format("Parabéns {0} com sua jogada mestre {1}!", winner.Dados.NamePlayer, winner.Dados.NameStrategy); return(Json(JsonConvert.SerializeObject(mensagem))); }
public IHttpActionResult ReturnWinner(TorneioModel torneio) { var rockPaperScissorsBusiness = new RockPaperScissorsBusiness(); return(Response(rockPaperScissorsBusiness.ReturnPlayWinner(torneio))); }