Files
qinglong_app/lib/base/userinfo_viewmodel.dart
2022-01-21 21:06:49 +08:00

71 lines
1.6 KiB
Dart

import 'package:qinglong_app/utils/sp_utils.dart';
import 'sp_const.dart';
import 'theme.dart';
class UserInfoViewModel {
String? _token;
String? _host = "";
String? _userName;
String? _passWord;
bool _useSecertLogined = false;
int _primaryColor = commonColor.value;
UserInfoViewModel() {
String userInfoJson = SpUtil.getString(spUserInfo);
_userName = SpUtil.getString(spUserName);
_passWord = SpUtil.getString(spPassWord);
_primaryColor = SpUtil.getInt(spCustomColor, defValue: commonColor.value);
_useSecertLogined = SpUtil.getBool(spSecretLogined, defValue: false);
_host = SpUtil.getString(spHost, defValue: '');
if (userInfoJson.isNotEmpty) {
_token = userInfoJson;
}
}
void updateToken(String token) {
_token = token;
SpUtil.putString(spUserInfo, token);
}
void updateUserName(String userName, String password) {
_userName = userName;
_passWord = password;
SpUtil.putString(spUserName, userName);
SpUtil.putString(spPassWord, password);
}
void useSecretLogin(bool use) {
_useSecertLogined = use;
SpUtil.putBool(spSecretLogined, _useSecertLogined);
}
void updateCustomColor(int color) {
_primaryColor = color;
SpUtil.putInt(spCustomColor, color);
}
void updateHost(String host) {
_host = host;
SpUtil.putString(spHost, host);
}
String? get token => _token;
String? get host => _host;
String? get userName => _userName;
String? get passWord => _passWord;
bool get useSecretLogined => _useSecertLogined;
int get primaryColor => _primaryColor;
bool isLogined() {
return token != null && token!.isNotEmpty;
}
}