diff --git a/lib/data/services/account_service.dart b/lib/data/services/account_service.dart index 96ae06708..5fbaf41ee 100644 --- a/lib/data/services/account_service.dart +++ b/lib/data/services/account_service.dart @@ -1,9 +1,11 @@ import 'package:get/get.dart'; import 'package:get_storage/get_storage.dart'; import 'package:logger/logger.dart'; +import '../../core/utils/synchrodata.dart'; import '../../modules/login/controllers/googleLogin.dart'; import '../../modules/login/controllers/facebookLogin.dart'; import '../services/network/api.dart'; +import 'db/database_helper.dart'; /// 账号管理服务 /// @@ -76,6 +78,12 @@ class AccountService extends GetxService { /// 返回操作结果,包含成功状态和错误信息 Future signOut() async { try { + // 上传会议记录操作记录 + await Synchrodata.uploadOperationRecords(); + + // 关闭数据库连接 + await DatabaseHelper().close(); + // 清理本地数据 final dataCleaned = await clearUserData(); if (!dataCleaned) { diff --git a/lib/data/services/db/database_helper.dart b/lib/data/services/db/database_helper.dart index b0d7562c0..34941efbe 100644 --- a/lib/data/services/db/database_helper.dart +++ b/lib/data/services/db/database_helper.dart @@ -22,6 +22,8 @@ class DatabaseHelper { Map? userInfo = storage.read("user_info"); if (userInfo != null) { _userId = userInfo['user']['uid']; + } else { + _userId = ''; } String path = join( await getDatabasesPath(), @@ -115,4 +117,11 @@ class DatabaseHelper { }); await batch.commit(); } + + Future close() async { + if (_database != null) { + await _database!.close(); + _database = null; + } + } } diff --git a/lib/modules/profile/controllers/profile_controller.dart b/lib/modules/profile/controllers/profile_controller.dart index a26ec587e..50493ad08 100644 --- a/lib/modules/profile/controllers/profile_controller.dart +++ b/lib/modules/profile/controllers/profile_controller.dart @@ -6,7 +6,6 @@ import 'package:flutter/material.dart'; import 'package:image_picker/image_picker.dart'; import 'package:logger/logger.dart'; import '../../../data/models/user_Info.dart'; -import '../../settings/controllers/settings_controller.dart'; import 'dart:io'; //import 'dart:convert'; import 'package:flutter_image_compress/flutter_image_compress.dart';