コード例 #1
0
        public async Task <IActionResult> Crear([Bind("CampeonatoID, CategoriaID, SerieID, Ronda, GrupoJornada, EquipoIDLocal, EquipoIDVisita , FechaInicial, Hora")] JornadasCrear jornadasCrear)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try
            {
                if (jornadasCrear.EquipoIDLocal == jornadasCrear.EquipoIDVisita)
                {
                    return(BadRequest("El equipo local y visitante no pueden ser el mismo equipo."));
                }

                if (JornadaExiste(jornadasCrear))
                {
                    return(BadRequest("Ya existe esta relación de juego, seleccione otros equipos"));
                }

                // Creamos el partido
                Partidos partido = new Partidos
                {
                    PartidoEstadoID = 1,
                    FechaHora       = jornadasCrear.FechaInicial.AddHours(jornadasCrear.Hora)
                };
                _context.Partidos.Add(partido);
                _context.SaveChanges();

                //Creamos la jornada y pasamos el id del partido
                Jornadas jornadas = new Jornadas()
                {
                    // Le asignamos valores a la jornada
                    CampeonatoID   = jornadasCrear.CampeonatoID,
                    PartidoID      = partido.ID,
                    EquipoIDLocal  = jornadasCrear.EquipoIDLocal,
                    EquipoIDVisita = jornadasCrear.EquipoIDVisita,
                    CategoriaID    = jornadasCrear.CategoriaID,
                    SerieID        = jornadasCrear.SerieID,
                    GrupoJornada   = jornadasCrear.GrupoJornada,
                    Ronda          = jornadasCrear.Ronda
                };

                _context.Jornadas.Add(jornadas);
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException ex)
            {
                string errMsg = FormateadorCadenas.ObtenerMensajesErrores(ex);
                return(BadRequest(errMsg));
            }
            catch (Exception ex)
            {
                string errMsg = FormateadorCadenas.ObtenerMensajesErrores(ex);
                return(BadRequest(errMsg));
            }

            return(Ok());
        }
コード例 #2
0
 private bool JornadaExiste(JornadasCrear jornadasCrear)
 {
     return(_context.Jornadas.Any(e => e.CampeonatoID == jornadasCrear.CampeonatoID &&
                                  e.CategoriaID == jornadasCrear.CategoriaID &&
                                  e.SerieID == jornadasCrear.SerieID &&
                                  e.Ronda == jornadasCrear.Ronda &&
                                  e.GrupoJornada == jornadasCrear.GrupoJornada &&
                                  e.EquipoIDLocal == jornadasCrear.EquipoIDLocal &&
                                  e.EquipoIDVisita == jornadasCrear.EquipoIDVisita));
 }