public IHttpActionResult update([FromBody] List <Zona> lsZonas) { List <Equipo> lsEquipos = new List <Equipo>(); try { foreach (Zona zona in lsZonas) { var totalEquipos = db.equipos_zona.Where(x => x.id_zona == zona.id_zona).ToList(); lsEquipos = zona.lsEquipos; var result = totalEquipos.Where(p => !lsEquipos.Any(l => p.id_equipo == l.id_equipo)).ToList(); foreach (var r in result) { equipos_zona equiposZonaDto = db.equipos_zona.SingleOrDefault(x => x.id_equipo == r.id_equipo); equiposZonaDto.id_zona = null; db.SaveChanges(); } foreach (var equiposZona in lsEquipos) { equipos_zona equiposZonaDto = db.equipos_zona.SingleOrDefault(x => x.id_equipo == equiposZona.id_equipo); equiposZonaDto.id_zona = zona.id_zona; db.SaveChanges(); } } return(Ok()); } catch (Exception e) { return(BadRequest(e.ToString())); } }
public IHttpActionResult eliminar([FromBody] Zona zona) { List <Equipo> lsEquipos = new List <Equipo>(); try { foreach (var equiposZona in zona.lsEquipos) { equipos_zona equiposZonaDto = db.equipos_zona.SingleOrDefault(x => x.id_equipo == equiposZona.id_equipo); equiposZonaDto.id_zona = null; db.SaveChanges(); } fixture_zona fixture_zona = db.fixture_zona.SingleOrDefault(x => x.id_zona == zona.id_zona); db.fixture_zona.Attach(fixture_zona); db.fixture_zona.Remove(fixture_zona); db.SaveChanges(); zonas zonaDto = new zonas(); lsEquipos = zona.lsEquipos; zonaDto.id_torneo = zona.torneo.id_torneo; zonaDto.descripcion = zona.descripcion; zonaDto.id_zona = (int)zona.id_zona; db.zonas.Attach(zonaDto); db.zonas.Remove(zonaDto); db.SaveChanges(); return(Ok()); } catch (Exception e) { return(BadRequest(e.ToString())); } }
public IHttpActionResult registrar([FromBody] List <Zona> lsZonas) { int id_zona = 0; List <Equipo> lsEquipos = new List <Equipo>(); try { foreach (Zona z in lsZonas) { int zonaCheck = db.zonas.Where(x => x.descripcion == z.descripcion && x.id_torneo == z.torneo.id_torneo).Count(); if (zonaCheck != 0) { return(BadRequest("Alguna de las zonas con ese nombre ya ha sido creada para ese torneo")); } } foreach (Zona zona in lsZonas) { zonas zonaDto = new zonas(); lsEquipos = zona.lsEquipos; zonaDto.id_torneo = zona.torneo.id_torneo; zonaDto.descripcion = zona.descripcion; db.zonas.Add(zonaDto); db.SaveChanges(); id_zona = zonaDto.id_zona; foreach (var equiposZona in lsEquipos) { equipos_zona equiposZonaDto = db.equipos_zona.SingleOrDefault(x => x.id_equipo == equiposZona.id_equipo); equiposZonaDto.id_zona = id_zona; db.SaveChanges(); } fixture_zona fixture_zona = new fixture_zona(); fixture_zona.id_tipo = 1; fixture_zona.id_torneo = zona.torneo.id_torneo; fixture_zona.id_zona = id_zona; db.fixture_zona.Add(fixture_zona); db.SaveChanges(); } return(Ok()); } catch (Exception e) { return(BadRequest(e.ToString())); } }
public IHttpActionResult registrar([FromBody] Equipo equipo) { try { int id_equipo; equipos equipoDto = new equipos(); categorias categoria = new categorias(); clubes club = new clubes(); equipoDto.nombre = equipo.nombre; equipoDto.descripcion = equipo.descripcion; equipoDto.fecha_alta = DateTime.Now; equipoDto.logo = equipo.logo; equipoDto.camiseta = equipo.camiseta; equipoDto.camisetalogo = equipo.camisetalogo; equipoDto.id_club = equipo.club.id_club; equipoDto.id_categoria_equipo = equipo.categoria.id_categoria; equipoDto.id_torneo = equipo.torneo.id_torneo; int equiposCheck = db.equipos.Where(x => x.nombre.ToUpper().Equals(equipoDto.nombre.ToUpper()) && x.id_categoria_equipo == equipoDto.id_categoria_equipo).Count(); if (equiposCheck == 0) { db.equipos.Add(equipoDto); db.SaveChanges(); id_equipo = equipoDto.id_equipo; equipos_zona equipo_zona = new equipos_zona(); equipo_zona.id_equipo = id_equipo; equipo_zona.id_torneo = equipoDto.id_torneo; equipo_zona.id_zona = null; db.equipos_zona.Add(equipo_zona); db.SaveChanges(); return(Ok()); } } catch (Exception e) { return(BadRequest(e.ToString())); } return(BadRequest("Ya existe un equipo registrado para esta categoría con ese nombre.")); }