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()); }
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)); }