updateUserInfo method

Future<bool> updateUserInfo(
  1. UserClass user,
  2. int idUser
)

Método que actualizar la información de un usuario de la base de datos basado en su ID.

Parámetros:

  • user: El usuario con los datos nuevos a actualizar.
  • idUser: El ID del usuario al que se desea actualiza la información.

Retorna:

  • bool: true si se actualizó al menos una fila, false si ocurrió un error.

Implementation

Future<bool> updateUserInfo(UserClass user, int idUser) async {
  final db = await DatabaseHelper.database;
  try {
    // MAPA CON LOS VALORES A ACTUALIZAR
    final Map<String, dynamic> userData = {
      'idUser': idUser,
      'username': user.username,
      'passwordHash': user.password,
      'imageUrl': user.imageUrl
    };

    // ACTUALIZAMOS EL USUARIO
    final result = await db.update(
      'user',
      userData, // DATOS A ACTUALIZAR
      where: 'idUser = ?',
      whereArgs: [idUser],
    );

    // DEVUELVE TRUE SI SE ACTUALIZO AL MENOS UNA FILA
    return result > 0;
  } catch (e) {
    // RETORNA FALSE Y MUESTRA UN MENSAJE DE ERROR SI FALLA
    DatabaseHelper.logger.e(
        "Error al actualizar la información del usuario ${user.toString()}: $e");
    return false;
  }
}