protected static void LlenarTablaGeneral(TablasVM vm) { vm.TablaGeneral = new TablaCategoriaVM(); foreach (var renglon in vm.TablasPorCategoria.First().Renglones) { vm.TablaGeneral.Renglones.Add(new TablaCategoriaRenglonVM { Escudo = renglon.Escudo, Equipo = renglon.Equipo, EquipoId = renglon.EquipoId }); } foreach (var tabla in vm.TablasPorCategoria) { foreach (var renglon in tabla.Renglones) { var renglonDelEquipo = vm.TablaGeneral.Renglones.Single(x => x.EquipoId == renglon.EquipoId); renglonDelEquipo.Gc += renglon.Gc; renglonDelEquipo.Gf += renglon.Gf; renglonDelEquipo.Np += renglon.Np; renglonDelEquipo.Pe += renglon.Pe; renglonDelEquipo.Pg += renglon.Pg; renglonDelEquipo.Pj += renglon.Pj; renglonDelEquipo.Pp += renglon.Pp; renglonDelEquipo.Pts += renglon.Pts; renglonDelEquipo.CalcularDiferenciaDeGol(); } } vm.TablaGeneral.Ordenar(); vm.TablaGeneral.CompletarPosiciones(); }
private static void CompletarPosiciones(TablasVM vm) { foreach (var tabla in vm.TablasPorCategoria) { tabla.CompletarPosiciones(); } }
protected static void OrdenarTablaDeCadaCategoria(TablasVM vm) { foreach (var tabla in vm.TablasPorCategoria) { tabla.Ordenar(); } }
protected void ProcesarPartidosDeCadaEquipo(Zona zona, TablasVM vm) { var equiposQueJugaronAlMenosUnaFecha = EquiposQueJugaronAlMenosUnaFecha(zona); foreach (var equipo in equiposQueJugaronAlMenosUnaFecha) { AgregarRenglonDelEquipoALaTablaDeCadaCategoria(zona, equipo, vm); } }
protected static void CrearTablaDeCadaCategoria(Zona zona, TablasVM vm) { foreach (var cat in zona.Torneo.Categorias) { vm.TablasPorCategoria.Add(new TablaCategoriaVM { CategoriaId = cat.Id, Categoria = cat.Nombre }); } }
public TablasVM Tablas(Zona zona) { var vm = new TablasVM { ZonaId = zona.Id, TorneoId = zona.TorneoId, Titulo = $"Tablas de {zona.DescripcionCompleta()}", VerGoles = zona.VerGolesEnTabla }; if (zona.TieneAlMenosUnaCategoriaUnaFechaYUnEquipo()) { CrearTablaDeCadaCategoria(zona, vm); ProcesarPartidosDeCadaEquipo(zona, vm); OrdenarTablaDeCadaCategoria(vm); CompletarPosiciones(vm); LlenarTablaGeneral(vm); } return(vm); }
protected static void AgregarRenglonesDelEquipoALaTablaDeCadaCategoria(Equipo equipo, TablasVM vm, IQueryable <Partido> partidosDelEquipoEnLaZona) { foreach (var tablaCategoria in vm.TablasPorCategoria) { var partidosDelEquipoEnLaZonaDeEstaCategoria = partidosDelEquipoEnLaZona.Where(x => x.CategoriaId == tablaCategoria.CategoriaId).ToList(); var renglonDelEquipo = new TablaCategoriaRenglonVM { Escudo = _imagenesEscudosPersistence.PathRelativo(equipo.Club.Id), EquipoId = equipo.Id, Equipo = equipo.Nombre }; foreach (var partido in partidosDelEquipoEnLaZonaDeEstaCategoria) { ProcesarPartido(ref renglonDelEquipo, partido, equipo); } renglonDelEquipo.CalcularDiferenciaDeGol(); tablaCategoria.Renglones.Add(renglonDelEquipo); } }
protected void AgregarRenglonDelEquipoALaTablaDeCadaCategoria(Zona zona, Equipo equipo, TablasVM vm) { var partidosDelEquipoEnLaZona = PartidosDelEquipoEnLaZona(zona, equipo); AgregarRenglonesDelEquipoALaTablaDeCadaCategoria(equipo, vm, partidosDelEquipoEnLaZona); }