public void completarCombate(clsCombate combate, clsLuchadorClasificado contrincante1, clsLuchadorClasificado contrincante2) { if (contrincante1.espectacular != contrincante2.espectacular && contrincante1.sangriento != contrincante2.sangriento && contrincante1.vistorioso != contrincante2.vistorioso ) { inserciones.insertarClasificacionCombate(combate, contrincante1, contrincante2); } }
/*TODO: * - int insertarCombate(clsCombate nuevoCombate) * - int checkExisteCombate(int idLuchador1, int idLuchador2, DateTime fechaCombate) */ /// <summary> /// Método que inserta un nuevo combate en la BBDD /// </summary> /// <param name="nuevoCombate">clsCombate con los datos del nuevo combate</param> /// <returns>int idCombate, del combate recién insertado</returns> public int insertarCombate(clsCombate nuevoCombate) { clsMyConnection objConnection = new clsMyConnection(); SqlConnection connection = null; SqlCommand command = new SqlCommand(); //int filasAfectadas; int idCombate = 0; try { connection = objConnection.getConnection(); command.Connection = connection; command.Parameters.Add("@fechaCombate", System.Data.SqlDbType.Date).Value = nuevoCombate.FechaCombate; //TODO ver si necesita castearse a DATETIME //command.CommandText = "INSERT INTO SH_Combates VALUES (getdate()) " + command.CommandText = "INSERT INTO SH_Combates VALUES (@fechaCombate) " + "SELECT TOP 1 * FROM SH_Combates ORDER BY idCombate DESC"; //Pilla sólo la primera columna y de la primera fila de la última prueba insertada, en mi caso el idCombate //Ejecuta la instrucción SQL //filasAfectadas = command.ExecuteNonQuery(); idCombate = (int)command.ExecuteScalar(); } catch (Exception e) { throw e; } finally { if (connection != null) { objConnection.closeConnection(ref connection); } } return(idCombate); }
/// <summary> /// Procedimiento que insertara la clasificacion de un combate entre dos luchadores en la base de datos /// </summary> /// <param name="combate"></param> /// <param name="contrincante1"></param> /// <param name="contrincante2"></param> public void insertarClasificacionCombate(clsCombate combate, clsLuchadorClasificado contrincante1, clsLuchadorClasificado contrincante2) { int num_filas = 0; try { commando = conection.CreateCommand(); commando.CommandText = "INSERT INTO dbo.clasificacionComabate (idCombate,idLuchador,puntos,idCategoriaPremio) VALUES (@idCombate,@idLuchador,@puntos,@idCategoriaPremio)"; commando.Parameters.Add("@idCombate", System.Data.SqlDbType.Int).Value = combate.id; //contrincante1 commando.Parameters.Add("@idLuchador", System.Data.SqlDbType.Int).Value = contrincante1.id; //inserccion sangrientos commando.Parameters.Add("@puntos", System.Data.SqlDbType.Int).Value = contrincante1.sangriento; commando.Parameters.Add("@idCategoriaPremio", System.Data.SqlDbType.Int).Value = 1; num_filas = commando.ExecuteNonQuery(); //inserccion espectacular commando.Parameters.RemoveAt(3); commando.Parameters.RemoveAt(2); commando.Parameters.Add("@puntos", System.Data.SqlDbType.Int).Value = contrincante1.espectacular; commando.Parameters.Add("@idCategoriaPremio", System.Data.SqlDbType.Int).Value = 2; num_filas = commando.ExecuteNonQuery(); //inserccion victorioso commando.Parameters.RemoveAt(3); commando.Parameters.RemoveAt(2); commando.Parameters.Add("@puntos", System.Data.SqlDbType.Int).Value = contrincante1.vistorioso; commando.Parameters.Add("@idCategoriaPremio", System.Data.SqlDbType.Int).Value = 3; num_filas = commando.ExecuteNonQuery(); //fin contrincante 1 //contrincante2 commando.Parameters.RemoveAt(3); commando.Parameters.RemoveAt(2); commando.Parameters.RemoveAt(1); commando.Parameters.Add("@idLuchador", System.Data.SqlDbType.Int).Value = contrincante2.id; //inserccion sangrientos commando.Parameters.Add("@puntos", System.Data.SqlDbType.Int).Value = contrincante2.sangriento; commando.Parameters.Add("@idCategoriaPremio", System.Data.SqlDbType.Int).Value = 1; num_filas = commando.ExecuteNonQuery(); //inserccion espectacular commando.Parameters.RemoveAt(3); commando.Parameters.RemoveAt(2); commando.Parameters.Add("@puntos", System.Data.SqlDbType.Int).Value = contrincante2.espectacular; commando.Parameters.Add("@idCategoriaPremio", System.Data.SqlDbType.Int).Value = 2; num_filas = commando.ExecuteNonQuery(); //inserccion victorioso commando.Parameters.RemoveAt(3); commando.Parameters.RemoveAt(2); commando.Parameters.Add("@puntos", System.Data.SqlDbType.Int).Value = contrincante2.vistorioso; commando.Parameters.Add("@idCategoriaPremio", System.Data.SqlDbType.Int).Value = 3; num_filas = commando.ExecuteNonQuery(); //fin contrincante 2 } catch (SqlException e) { throw e; } finally { } }
/// <summary> /// Método que inserta un nuevo combate en la BBDD /// </summary> /// <param name="nuevoCombate">clsCombate con los datos del nuevo combate</param> /// <returns>int idCombate, del combate recién insertado</returns> public int insertarCombate(clsCombate nuevoCombate) { return(new clsHandlerCombatesDAL().insertarCombate(nuevoCombate)); }