/** @brief Método que realiza la setencia SQL para reestablece la contraseña de un recurso humano especìfico que se encuentran en la Base de Datos. * @param nombre_usuario del recuros humano que se desea consultar. * @param nueva_contrasena que tendrá el recurso humano. * @return 0 si la operación se realizó con éxito, números negativos si pasó algún error con la Base de Datos. */ public int cambiar_contrasena(RecursoHumano recurso_humano) { SqlCommand comando = new SqlCommand("CAMBIAR_CONTRASENA"); comando.CommandType = CommandType.StoredProcedure; comando.Parameters.Add("@username", SqlDbType.VarChar).Value = recurso_humano.usuario; comando.Parameters.Add("@nueva_contrasena", SqlDbType.VarChar).Value = recurso_humano.contrasena; return m_data_base_adapter.ejecutar_consulta(comando); }
/** @brief Método que asigna las operaciones necesarias para poder modificar un recurso humano. * @param datos vector que contiene los datos para poder crear un recurso humano. * @return 0 si la operación se realizó con éxito, números negativos si pasó algún error con la Base de Datos. */ public int modificar_recurso_humano(Object[] datos) { RecursoHumano recurso_humano = new RecursoHumano(datos); return m_base_datos.modificar_recurso_humano(recurso_humano); }
// Métodos /** @brief Método que asigna las operaciones necesarias para poder insertar un recurso humano. * @param datos vector que contiene los datos para poder crear un recurso humano. * @return 0 si la operación se realizó con éxito, números negativos si pasó algún error con la Base de Datos. */ public int insertar_recurso_humano(Object[] datos) { RecursoHumano recurso_humano = new RecursoHumano(datos); return m_base_datos.insertar_recurso_humano(recurso_humano); }
// Métodos auxiliares /** @brief Método auxiliar que rellena los parámetros de un recurso humano para poder realizar un procedimiento almacenado. * @param comando comando sql que contendrá el procedimiento y sus respectivos parámetros. Se envía por referencia por lo tanto se va a modificar. * @param recurso_humano recurso humano con la información necesaria para realizar el procedimiento. */ private void rellenar_parametros_recurso_humano(ref SqlCommand comando, RecursoHumano recurso_humano) { comando.CommandType = CommandType.StoredProcedure; comando.Parameters.Add("@username", SqlDbType.VarChar).Value = recurso_humano.usuario; comando.Parameters.Add("@cedula", SqlDbType.VarChar).Value = recurso_humano.cedula; if (recurso_humano.es_administrador) { comando.Parameters.Add("@id_proyecto", SqlDbType.Int).Value = DBNull.Value; comando.Parameters.Add("@rol", SqlDbType.VarChar).Value = DBNull.Value; } else { comando.Parameters.Add("@id_proyecto", SqlDbType.Int).Value = recurso_humano.proyecto_asociado; comando.Parameters.Add("@rol", SqlDbType.VarChar).Value = recurso_humano.rol; } comando.Parameters.Add("@telefono", SqlDbType.VarChar).Value = recurso_humano.telefono; comando.Parameters.Add("@nombre", SqlDbType.VarChar).Value = recurso_humano.nombre; comando.Parameters.Add("@hashed", SqlDbType.VarChar).Value = recurso_humano.contrasena; comando.Parameters.Add("@correo", SqlDbType.VarChar).Value = recurso_humano.correo; comando.Parameters.Add("@admin", SqlDbType.Bit).Value = recurso_humano.es_administrador ? 1 : 0; }
/** @brief Método que realiza la setencia SQL para modificar un recurso humano. * @param recurso_humano a guardar en la base de datos. * @return 0 si la operación se realizó con éxito, números negativos si pasó algún error con la Base de Datos. */ public int modificar_recurso_humano(RecursoHumano recurso_humano) { // Procedimiento almacenado SqlCommand comando = new SqlCommand("MODIFICAR_RH"); rellenar_parametros_recurso_humano(ref comando, recurso_humano); return m_data_base_adapter.ejecutar_consulta(comando); }