private static void CrearUnaTablaPorFecha(IEnumerable <Fecha> fechas, ResumenDeJornadasVM result) { foreach (var fecha in fechas) { result.JornadasPorFecha.Add(new JornadasPorFechaVM(fecha.Id, fecha.Numero, fecha.Publicada)); } }
private static void AgregarCategorias(Zona zona, ResumenDeJornadasVM result) { foreach (var categoria in zona.Torneo.Categorias) { result.Categorias.Add(new CategoriaVM { Nombre = categoria.Nombre, Id = categoria.Id, Orden = categoria.Orden }); } result.Categorias.Sort((x, y) => x.Orden.CompareTo(y.Orden)); }
public ActionResult ResumenDeJornadas(ResumenDeJornadasVM vm) { var jornadas = Context.Jornadas; foreach (var jornadaVerificadaId in vm.JornadasVerificadasId) { var jornada = jornadas.Find(jornadaVerificadaId); jornada.ResultadosVerificados = true; } Context.SaveChanges(); return(RedirectToAction("ResumenDeJornadas", new { parentId = vm.TorneoId, id = vm.ZonaId })); }
public ActionResult Jornadas(int zonaId) { var zona = _context.Zonas.Find(zonaId); var result = new ResumenDeJornadasVM(); if (zona != null) { var resumenJornadasHelper = new ResumenDeJornadasBuilder(); var fechas = zona.Fechas.Where(x => x.Publicada).ToList(); result = resumenJornadasHelper.Tablas(zona, fechas); } return(Json(result, JsonRequestBehavior.AllowGet)); }
public ResumenDeJornadasVM Tablas(Zona zona, List <Fecha> fechas) { var result = new ResumenDeJornadasVM($"Resumen de jornadas {zona.DescripcionCompleta()}", zona.TorneoId, zona.Id); AgregarCategorias(zona, result); CrearUnaTablaPorFecha(fechas, result); foreach (var fecha in fechas) { var jornadasContador = 1; foreach (var jornada in fecha.Jornadas) { var renglonLocal = new JornadasPorFechaRenglonVM { JornadaId = jornada.Id, JornadaNumero = jornadasContador, Equipo = jornada.NombreDelLocal(), Escudo = _imagenesEscudosPersistence.PathRelativo(jornada.Local?.ClubId ?? -1), }; var renglonVisitante = new JornadasPorFechaRenglonVM { JornadaId = jornada.Id, JornadaNumero = jornadasContador, Equipo = jornada.NombreDelVisitante(), Escudo = _imagenesEscudosPersistence.PathRelativo(jornada.Visitante?.ClubId ?? -1), }; foreach (var partido in jornada.Partidos) { var resultadoPorCatLocal = new ResultadosPorCategoriaVM { Orden = partido.Categoria.Orden, Goles = partido.GolesLocal }; var resultadoPorCatVisit = new ResultadosPorCategoriaVM { Orden = partido.Categoria.Orden, Goles = partido.GolesVisitante }; renglonLocal.ResultadosPorCategorias.Add(resultadoPorCatLocal); renglonVisitante.ResultadosPorCategorias.Add(resultadoPorCatVisit); } renglonLocal.ResultadosPorCategorias.Sort((x, y) => x.Orden.CompareTo(y.Orden)); renglonVisitante.ResultadosPorCategorias.Sort((x, y) => x.Orden.CompareTo(y.Orden)); CalcularPuntosTotales(renglonLocal, renglonVisitante); renglonLocal.PartidoVerificado = jornada.ResultadosVerificados.ToCheckString(); renglonVisitante.PartidoVerificado = jornada.ResultadosVerificados.ToCheckString(); result.JornadasPorFecha.Single(x => x.FechaId == fecha.Id).Renglones.Add(renglonLocal); result.JornadasPorFecha.Single(x => x.FechaId == fecha.Id).Renglones.Add(renglonVisitante); jornadasContador++; } } return(result); }