Files
zh-chat-flutter/lib/controllers/user_controller.dart
2022-10-26 14:05:58 +08:00

41 lines
1.2 KiB
Dart

import 'package:chat/models/upload_model.dart';
import 'package:chat/providers/user_provider.dart';
import 'package:chat/services/auth_service.dart';
import 'package:chat/services/tim/friend_service.dart';
import 'package:chat/utils/ui_tools.dart';
import 'package:get/get.dart';
class UserController extends GetxController {
static UserController get to => Get.find<UserController>();
Future<bool> updateNickname(String nickname) async {
var result = await UserProvider.updateNickname(nickname);
if (result) {
AuthService.to.updateUserInfo('nickname', nickname);
UiTools.toast('昵称修改成功');
}
try {
TimFriendService.to.setSelfInfo(nickname: nickname);
} catch (e) {
UiTools.toast(e.toString());
}
return result;
}
Future<void> uploadAvatar(String filePath) async {
UploadModel? result = await UserProvider.uploadAvatar(filePath);
if (result != null) {
AuthService.to.updateUserInfo('avatar', result.url);
UiTools.toast('头像修改成功');
try {
TimFriendService.to.setSelfInfo(avatar: result.url);
} catch (e) {
UiTools.toast(e.toString());
}
}
}
}