コード例 #1
0
        public IHttpActionResult GetEquipos(int prmIdTorneo) //fpaz: trae los datos de todos los esquipos del torneo
        {
            try
            {
                var listEquipos = (from l in db.EquipoTorneos
                                   where l.ZonaTorneo.TorneoId == prmIdTorneo
                                   select l.Equipo)
                                  .Include(i => i.ImagenesEquipo);

                if (listEquipos == null)
                {
                    return(BadRequest("No existen equipos cargados"));
                }

                #region fpaz: para cada Equipo solo muestro la ultima imagen cargada como logo
                foreach (var item in listEquipos)
                {
                    ImagenEquipo        ultimaImagen = item.ImagenesEquipo.LastOrDefault();
                    List <ImagenEquipo> imagenes     = new List <ImagenEquipo>();
                    imagenes.Add(ultimaImagen);

                    item.ImagenesEquipo = imagenes;
                }
                #endregion

                return(Ok(listEquipos));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #2
0
        public IHttpActionResult GetEquipo(int id) //fpaz: trae los datos de un equipo en particular, incluidos los jugadores
        {
            try
            {
                Equipo equipo = (from e in db.Equipoes
                                 where e.Id == id
                                 select e)
                                .Include(j => j.PlantillaActual)
                                .Include(i => i.ImagenesEquipo)
                                .FirstOrDefault();
                if (equipo == null)
                {
                    return(NotFound());
                }

                #region fpaz: obtengo la ultima imagen del equipo para el logo
                ImagenEquipo        ultimaImagen = equipo.ImagenesEquipo.LastOrDefault();
                List <ImagenEquipo> imagenes     = new List <ImagenEquipo>();
                imagenes.Add(ultimaImagen);
                equipo.ImagenesEquipo = imagenes;
                #endregion

                return(Ok(equipo));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #3
0
        public IHttpActionResult GetCategoria(int id)
        {
            try
            {
                Categoria categoria = (from c in db.Categorias
                                       where c.Id == id
                                       select c)
                                      .Include(e => e.Equipos.Select(i => i.ImagenesEquipo))
                                      .FirstOrDefault();

                if (categoria == null)
                {
                    return(NotFound());
                }

                #region fpaz: para cada Equipo solo muestro la ultima imagen cargada como logo
                foreach (var item in categoria.Equipos)
                {
                    ImagenEquipo        ultimaImagen = item.ImagenesEquipo.LastOrDefault();
                    List <ImagenEquipo> imagenes     = new List <ImagenEquipo>();
                    imagenes.Add(ultimaImagen);

                    item.ImagenesEquipo = imagenes;
                }
                #endregion

                return(Ok(categoria));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #4
0
        public IHttpActionResult GetZonaTorneo(int id) // fpaz: devuelvo la info de una zona de un torneo en particular
        {
            try
            {
                ZonaTorneo zonaTorneo = (from z in db.ZonaTorneos
                                         where z.Id == id
                                         select z)
                                        .Include(t => t.Torneo)
                                        .Include(e => e.EquiposTorneo
                                                 .Select(eq => eq.Equipo.ImagenesEquipo)
                                                 )
                                        .FirstOrDefault();

                if (zonaTorneo == null)
                {
                    return(NotFound());
                }
                else
                {
                    #region fpaz: obtengo los logos actuales de los equipos
                    var equiposTorneo = zonaTorneo.EquiposTorneo.ToList();

                    List <EquipoTorneo> equiposTorneoConImagen = new List <EquipoTorneo>();

                    foreach (var item in equiposTorneo)
                    {
                        ImagenEquipo        ultimaImagenEquipo = item.Equipo.ImagenesEquipo.LastOrDefault();
                        List <ImagenEquipo> imagenesEquipo     = new List <ImagenEquipo>();
                        imagenesEquipo.Add(ultimaImagenEquipo);

                        item.Equipo.ImagenesEquipo = imagenesEquipo;

                        equiposTorneoConImagen.Add(item);
                    }

                    zonaTorneo.EquiposTorneo = equiposTorneoConImagen;
                    #endregion
                }

                return(Ok(zonaTorneo));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #5
0
        // GET: api/ZonaTorneos
        public IHttpActionResult GetZonaTorneos(int prmIdTorneo) // fpaz devuelve todas las zonas de un torneo en particular y los equipos de cada zona
        {
            try
            {
                var listZonas = (from z in db.ZonaTorneos
                                 where z.TorneoId == prmIdTorneo
                                 select z)
                                .Include(e => e.EquiposTorneo
                                         .Select(eq => eq.Equipo.ImagenesEquipo)
                                         )
                                .ToList();
                if (listZonas == null)
                {
                    return(BadRequest("No existen Zonas Cargadas Para el Torneo Seleccionado"));
                }

                foreach (var zona in listZonas) //para cada zona agrego los logos actuales de los equipos
                {
                    #region fpaz: obtengo los logos actuales de los equipos
                    var equiposTorneo = zona.EquiposTorneo.ToList();

                    List <EquipoTorneo> equiposTorneoConImagen = new List <EquipoTorneo>();

                    foreach (var item in equiposTorneo)
                    {
                        ImagenEquipo        ultimaImagenEquipo = item.Equipo.ImagenesEquipo.LastOrDefault();
                        List <ImagenEquipo> imagenesEquipo     = new List <ImagenEquipo>();
                        imagenesEquipo.Add(ultimaImagenEquipo);

                        item.Equipo.ImagenesEquipo = imagenesEquipo;

                        equiposTorneoConImagen.Add(item);
                    }

                    zona.EquiposTorneo = equiposTorneoConImagen;
                    #endregion
                }

                return(Ok(listZonas));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #6
0
        public IHttpActionResult PostImagenEquipo(ImagenEquipo imagenEquipo)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try
            {
                db.ImagenesEquipo.Add(imagenEquipo);
                db.SaveChanges();

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #7
0
        //fpaz: funcion para traer toda la info del partido, incluyendo equipo local y visitantes, con sus respectivos jugadore, arbitros, etc
        public IHttpActionResult GetPartido(int id)
        {
            try
            {
                Partido partido = (from p in db.Partidos
                                   where p.Id == id
                                   select p)
                                  .Include(el => el.EquipoLocal.ImagenesEquipo)
                                  .Include(el => el.EquipoVisitante.ImagenesEquipo)
                                  .Include(a => a.Arbitro)
                                  .Include(f => f.Fecha.Torneo)
                                  .Include(j => j.JugadoresDelPartido.Select(jug => jug.Jugador))
                                  .Include(s => s.Sede)
                                  .FirstOrDefault();

                if (partido == null)
                {
                    return(NotFound());
                }

                #region fpaz: obtengo la ultima imagen del equipo local para el logo
                ImagenEquipo        ultimaImagenLocal = partido.EquipoLocal.ImagenesEquipo.LastOrDefault();
                List <ImagenEquipo> imagenesLocal     = new List <ImagenEquipo>();
                imagenesLocal.Add(ultimaImagenLocal);
                partido.EquipoLocal.ImagenesEquipo = imagenesLocal;
                #endregion

                #region fpaz: obtengo la ultima imagen del equipo Visitante para el logo
                ImagenEquipo        ultimaImagenVisitante = partido.EquipoVisitante.ImagenesEquipo.LastOrDefault();
                List <ImagenEquipo> imagenesVisitante     = new List <ImagenEquipo>();
                imagenesVisitante.Add(ultimaImagenLocal);
                partido.EquipoVisitante.ImagenesEquipo = imagenesLocal;
                #endregion

                return(Ok(partido));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #8
0
        // GET: api/Equipoes
        public IHttpActionResult GetEquipoes(int prmIdLiga) //fpaz: trae los datos de todos los equipos de la liga agrupados por categoria
        {
            try
            {
                var listEquipos = (from c in db.Categorias //obtengo las categorias y todos sus equipos
                                   where c.LigaId == prmIdLiga
                                   select c)
                                  .Include(e => e.Equipos.Select(i => i.ImagenesEquipo))
                                  .ToList();

                if (listEquipos == null)
                {
                    return(BadRequest("No existen equipos cargados"));
                }

                #region fpaz: para cada Equipo solo muestro la ultima imagen cargada como logo
                foreach (var categoria in listEquipos)
                {
                    foreach (var item in categoria.Equipos)
                    {
                        ImagenEquipo        ultimaImagen = item.ImagenesEquipo.LastOrDefault();
                        List <ImagenEquipo> imagenes     = new List <ImagenEquipo>();
                        imagenes.Add(ultimaImagen);

                        item.ImagenesEquipo = imagenes;
                    }
                }
                #endregion

                return(Ok(listEquipos));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #9
0
        public IHttpActionResult GetEquipoTorneo(int id) //fpaz: devuelve la tabla de posiciones para un torneo en particular
        {
            try
            {
                //var tablaPosiciones = (from t in db.EquipoTorneos
                //                       where t.ZonaTorneo.TorneoId == id
                //                       select t)
                //                       .Include(e =>e.Equipo.ImagenesEquipo)
                //                       .OrderByDescending(t => t.Puntos)
                //                       .ToList();

                var tablaPosiciones = (from z in db.ZonaTorneos
                                       where z.TorneoId == id
                                       select z)
                                      .Include(et => et.EquiposTorneo
                                               .Select(e => e.Equipo.ImagenesEquipo)
                                               )
                                      .ToList();

                if (tablaPosiciones == null)
                {
                    return(NotFound());
                }

                #region fpaz: para cada Equipo solo muestro la ultima imagen cargada como logo
                foreach (var zona in tablaPosiciones) //para cada zona agrego los logos actuales de los equipos
                {
                    #region fpaz: obtengo los logos actuales de los equipos
                    var equiposTorneo = zona.EquiposTorneo.ToList();

                    List <EquipoTorneo> equiposTorneoConImagen = new List <EquipoTorneo>();

                    foreach (var item in equiposTorneo)
                    {
                        ImagenEquipo        ultimaImagenEquipo = item.Equipo.ImagenesEquipo.LastOrDefault();
                        List <ImagenEquipo> imagenesEquipo     = new List <ImagenEquipo>();
                        imagenesEquipo.Add(ultimaImagenEquipo);

                        item.Equipo.ImagenesEquipo = imagenesEquipo;

                        equiposTorneoConImagen.Add(item);
                    }

                    zona.EquiposTorneo = equiposTorneoConImagen;
                    #endregion
                }
                #endregion

                #region fpaz: ordeno a los equipos de cada zona de manera descendene segun sus puntos
                foreach (var zona in tablaPosiciones)
                {
                    var tablaZona = zona.EquiposTorneo.OrderByDescending(p => p.Puntos).ToList();
                    zona.EquiposTorneo = tablaZona;
                }
                #endregion

                return(Ok(tablaPosiciones));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }