private void UpdateContextRelampago(ModificarEquiposVM vm, Zona zona) { if (vm.EquiposDeLaZonaResult != null) { foreach (var equipoId in vm.EquiposDeLaZonaResult) { var equipo = Context.Equipos.Find(equipoId); if (Context.ZonaRelampagoEquipos.SingleOrDefault(x => x.EquipoId == equipoId && x.ZonaId == zona.Id) == null) { Context.ZonaRelampagoEquipos.Add(new ZonaRelampagoEquipo { Equipo = equipo, Zona = zona }); } } } if (vm.EquiposDelTorneoSinZonaResult != null) { foreach (var equipoId in vm.EquiposDelTorneoSinZonaResult) { var zonaRelampagoEquipo = Context.ZonaRelampagoEquipos.SingleOrDefault(x => x.EquipoId == equipoId && x.ZonaId == zona.Id); if (zonaRelampagoEquipo != null) { Context.ZonaRelampagoEquipos.Remove(zonaRelampagoEquipo); } } } }
public ActionResult ModificarEquipos(int parentId, int id) { var zona = Context.Zonas.Find(id); var zonaHelper = new ZonaHelper(Context); var equiposDeLaZona = zonaHelper.EquiposDeLaZona(zona); var equiposDelTorneoSinZona = zonaHelper.EquiposDelTorneoSinZona(zona); var vm = new ModificarEquiposVM(id, zona?.Nombre, zona.Torneo.Id, zona.Torneo.Descripcion, equiposDeLaZona, equiposDelTorneoSinZona); return(View(vm)); }
public ActionResult ModificarEquipos(ModificarEquiposVM vm) { var zona = Context.Zonas.Find(vm.ZonaId); var formato = zona.Torneo.Tipo.Formato; if (formato.Equals(TorneoFormato.AperturaClausura)) { UpdateContextAperturaClausura(vm); } else if (formato.Equals(TorneoFormato.Relampago)) { UpdateContextRelampago(vm, zona); } Context.SaveChanges(); return(RedirectTo("Index", vm.TorneoId)); }
private void UpdateContextAperturaClausura(ModificarEquiposVM vm) { if (vm.EquiposDeLaZonaResult != null) { foreach (var equipoId in vm.EquiposDeLaZonaResult) { var equipo = Context.Equipos.Find(equipoId); equipo.ZonaId = vm.ZonaId; } } if (vm.EquiposDelTorneoSinZonaResult != null) { foreach (var equipoId in vm.EquiposDelTorneoSinZonaResult) { var equipo = Context.Equipos.Find(equipoId); equipo.ZonaId = null; } } }