public ActionResult Create([Bind(Include = "id,nome,TotalTimes")] Torneio torneio) { if (ModelState.IsValid) { db.Torneios.Add(torneio); db.SaveChanges(); db.Torneios.Include(T => T.Times).Include(T => T.Jogos).Load(); torneio.CriarJogos(db); return(RedirectToAction("Index")); } return(View(torneio)); }
public static bool DefinirJogos(Torneio torneio, TorneioContext db) { if (torneio.Times.Count != torneio.TotalTimes) { return(false); } else { var times = torneio.Times.ToList(); for (int i = 1; i < torneio.TotalTimes; i++) { Jogo novoJogo = new Jogo() { Nome = $"Jogo {i}" }; if (i <= (torneio.TotalTimes / 2)) { novoJogo.Time1 = times[i]; novoJogo.Time2 = times[i + (torneio.TotalTimes / 2)]; } //TorneioContext db = new TorneioContext(); //db.Torneios.Find(torneio.Id).Jogos.Add(novoJogo); torneio.Jogos.Add(novoJogo); db.SaveChanges(); } return(true); } }
private void DefinirJogos(TorneioContext db, int numRodada) { int totalRodadas = Rodadas(); if (numRodada < totalRodadas) { var times = Times.ToList(); var jogosRodadaAtual = JogosPorRodada(numRodada); var jogosProximaRodada = JogosPorRodada(numRodada + 1); for (int i = 0; i < jogosProximaRodada.Count; i++) { if (jogosRodadaAtual[i * 2].JogoEncerrado) { jogosProximaRodada[i].Time1 = times.Find(t => t.Id == jogosRodadaAtual[i * 2].IdTimeVencedor); } if (jogosRodadaAtual[(i * 2) + 1].JogoEncerrado) { jogosProximaRodada[i].Time2 = times.Find(t => t.Id == jogosRodadaAtual[(i * 2) + 1].IdTimeVencedor); } } db.Entry(this).State = EntityState.Modified; db.SaveChanges(); } }
public void GerarResultados(TorneioContext db, int numRodada) { foreach (var jogo in JogosPorRodada(numRodada)) { if (!jogo.JogoEncerrado) { int gols1 = new Random().Next(0, 7); int gols2 = new Random().Next(0, 7); while (gols1 == gols2) { gols2 = new Random().Next(0, 7); } jogo.GolsTime1 = gols1; jogo.GolsTime2 = gols2; if (gols1 > gols2) { jogo.IdTimeVencedor = jogo.Time1.Id; } else { jogo.IdTimeVencedor = jogo.Time2.Id; } jogo.JogoEncerrado = true; db.Entry(this).State = EntityState.Modified; db.SaveChanges(); } } DefinirJogos(db, numRodada); }
public static void Initialize(TorneioContext contexto) { contexto.Database.EnsureCreated(); if (contexto.Eventos.Any()) { return; } var eventos = new Evento[] { new Evento { Nome = "Evento teste 1" }, new Evento { Nome = "Evento teste 12" }, new Evento { Nome = "Evento teste 13" } }; //foreach (Evento evento in eventos) //{ // EventoView ev = new EventoView(); // ev.Nome = evento.Nome; // contexto.Add(ev); //} contexto.SaveChanges(); contexto.Dispose(); }
public void Insert(Equipe equipe, TorneioContext context) { if (equipe != null) { context.Equipes.Add(equipe); context.SaveChanges(); } }
public void Insert(Desafio desafio, TorneioContext context) { if (desafio != null) { context.Desafios.Add(desafio); context.SaveChanges(); } }
public void Insert(Evento evento, TorneioContext context) { if (evento != null) { context.Eventos.Add(evento); context.SaveChanges(); } }
public ActionResult Create([Bind(Include = "Id,Nome,Torneio_id")] Time time, int idTorneio) { if (ModelState.IsValid) { var torneio = db.Torneios.Find(idTorneio); if (!torneio.TimesCompletos()) { torneio.Times.Add(time); db.SaveChanges(); var parametro = new RouteValueDictionary(); parametro.Add("id", idTorneio); return(RedirectToAction("Gerenciar", "Torneios", parametro)); } else { return(View("Máximo de times cadastrados")); } } return(View()); }
public void DefinirJogos(TorneioContext db) { if (Jogos.Count == TotalTimes - 1 && Times.Count == TotalTimes) { var times = Times.ToList(); foreach (var jogo in Jogos) { if (jogo.Rodada != 1) { break; } jogo.Time1 = times[0]; times.RemoveAt(0); jogo.Time2 = times[0]; times.RemoveAt(0); } db.Entry(this).State = EntityState.Modified; db.SaveChanges(); } }
public bool CriarJogos(TorneioContext db) { if (Jogos.Count == 0) { List <int> jogosPorRodada = mapearJogosRodadas(TotalTimes); for (int i = 1; i < TotalTimes; i++) { Jogo novoJogo = new Jogo() { Nome = $"Jogo {i}", NumeroJogo = i, Rodada = jogosPorRodada[i - 1] }; Jogos.Add(novoJogo); db.SaveChanges(); } return(true); } return(false); }
public void Update(TorneioContext context, Equipe equipe) { context.Equipes.Update(equipe); context.SaveChanges(); }
public void Update(TorneioContext context, Desafio desafio) { context.Desafios.Update(desafio); context.SaveChanges(); }
public int Save() => _database.SaveChanges();
public void Atualizar(TorneioContext context, Evento evento) { context.Eventos.Update(evento); context.SaveChanges(); }