Commit 5487a56b authored by skeyboy's avatar skeyboy

登出功能

parent 2aff02c7
...@@ -12,6 +12,7 @@ import 'package:chart/pages/application/index.dart'; ...@@ -12,6 +12,7 @@ import 'package:chart/pages/application/index.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_easyloading/flutter_easyloading.dart'; import 'package:flutter_easyloading/flutter_easyloading.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
// import 'package:connectivity_plus/connectivity_plus.dart'; // import 'package:connectivity_plus/connectivity_plus.dart';
// import 'package:highlight/languages/rust.dart'; // import 'package:highlight/languages/rust.dart';
// import 'package:social_login_buttons/social_login_buttons.dart'; // import 'package:social_login_buttons/social_login_buttons.dart';
...@@ -28,16 +29,20 @@ class UserStore extends GetxController { ...@@ -28,16 +29,20 @@ class UserStore extends GetxController {
// static StorageService get to => Get.put(StorageService()); // static StorageService get to => Get.put(StorageService());
// 是否登录 // 是否登录
final _isLogin = false.obs; late final _isLogin = false.obs;
// 令牌 token // 令牌 token
String token = ''; String token = '';
// 用户 profile // 用户 profile
final _profile = IntegralEntity( final _profile = IntegralEntity(
id: '', token: '', username: '', integral: 0, expireTime: null) id: '', token: '', username: '', integral: 0, expireTime: null)
.obs; .obs;
bool get isLogin => _isLogin.value; bool get isLogin => _isLogin.value;
IntegralEntity get profile => _profile.value; IntegralEntity get profile => _profile.value;
bool get hasToken => token.isNotEmpty; bool get hasToken => token.isNotEmpty;
@override @override
...@@ -104,6 +109,12 @@ class UserStore extends GetxController { ...@@ -104,6 +109,12 @@ class UserStore extends GetxController {
} }
} }
void logout() {
_profile.value = IntegralEntity(
id: '', token: '', username: '', integral: 0, expireTime: null);
_isLogin.value = false;
}
Future refreshInfo() async { Future refreshInfo() async {
if (GetPlatform.isIOS) { if (GetPlatform.isIOS) {
IosDeviceInfo iosInfo = await deviceInfo.iosInfo; IosDeviceInfo iosInfo = await deviceInfo.iosInfo;
...@@ -198,6 +209,7 @@ class UserStore extends GetxController { ...@@ -198,6 +209,7 @@ class UserStore extends GetxController {
StorageService.to StorageService.to
.setString(STORAGE_USER_PROFILE_KEY, jsonEncode(copiedMap)); .setString(STORAGE_USER_PROFILE_KEY, jsonEncode(copiedMap));
} }
// // 保存 profile // // 保存 profile
// Future<void> saveProfile(UserLoginResponseEntity profile) async { // Future<void> saveProfile(UserLoginResponseEntity profile) async {
// _isLogin.value = true; // _isLogin.value = true;
......
import 'package:bruno/bruno.dart';
import 'package:chart/common/routers/routes.dart'; import 'package:chart/common/routers/routes.dart';
import 'package:chart/common/store/store.dart'; import 'package:chart/common/store/store.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
...@@ -29,7 +30,8 @@ class MyPage extends GetView<MyController> { ...@@ -29,7 +30,8 @@ class MyPage extends GetView<MyController> {
alignment: Alignment.center, alignment: Alignment.center,
child: Container( child: Container(
// color: Colors.amber, // color: Colors.amber,
padding: EdgeInsets.symmetric(horizontal: 20, vertical: 0), padding:
EdgeInsets.symmetric(horizontal: 20, vertical: 0),
child: RichText( child: RichText(
textAlign: TextAlign.center, textAlign: TextAlign.center,
text: TextSpan(children: [ text: TextSpan(children: [
...@@ -180,6 +182,12 @@ class MyPage extends GetView<MyController> { ...@@ -180,6 +182,12 @@ class MyPage extends GetView<MyController> {
), ),
), ),
), ),
UserStore.to.isLogin ?
Column(children: [ SizedBox(height: 145,),
BrnBigMainButton(title: "退出", onTap: () {
UserStore.to.logout();
Get.back();
})],) : Container()
// GradientButton(child: Text("321"), callback: () {}) // GradientButton(child: Text("321"), callback: () {})
], ],
); );
......
...@@ -81,6 +81,14 @@ packages: ...@@ -81,6 +81,14 @@ packages:
url: "https://pub.flutter-io.cn" url: "https://pub.flutter-io.cn"
source: hosted source: hosted
version: "0.1.5+1" version: "0.1.5+1"
bindings_compatible:
dependency: transitive
description:
name: bindings_compatible
sha256: "5dd5189f7512aff8ec180a8a11bd59230aa34a2d743e65e427192b7292a78d87"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.1"
boolean_selector: boolean_selector:
dependency: transitive dependency: transitive
description: description:
...@@ -89,6 +97,14 @@ packages: ...@@ -89,6 +97,14 @@ packages:
url: "https://pub.flutter-io.cn" url: "https://pub.flutter-io.cn"
source: hosted source: hosted
version: "2.1.1" version: "2.1.1"
bruno:
dependency: "direct main"
description:
name: bruno
sha256: "18866ef04d470876dc2434eb44c2ec3c2213ef354f734f8f99cfabee93fd4027"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.3.0"
bubble: bubble:
dependency: "direct main" dependency: "direct main"
description: description:
...@@ -973,6 +989,14 @@ packages: ...@@ -973,6 +989,14 @@ packages:
url: "https://pub.flutter-io.cn" url: "https://pub.flutter-io.cn"
source: hosted source: hosted
version: "1.1.1" version: "1.1.1"
lpinyin:
dependency: transitive
description:
name: lpinyin
sha256: "0bb843363f1f65170efd09fbdfc760c7ec34fc6354f9fcb2f89e74866a0d814a"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.0.3"
markdown: markdown:
dependency: transitive dependency: transitive
description: description:
...@@ -1069,6 +1093,22 @@ packages: ...@@ -1069,6 +1093,22 @@ packages:
url: "https://pub.flutter-io.cn" url: "https://pub.flutter-io.cn"
source: hosted source: hosted
version: "1.8.2" version: "1.8.2"
path_drawing:
dependency: transitive
description:
name: path_drawing
sha256: bbb1934c0cbb03091af082a6389ca2080345291ef07a5fa6d6e078ba8682f977
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.1"
path_parsing:
dependency: transitive
description:
name: path_parsing
sha256: e3e67b1629e6f7e8100b367d3db6ba6af4b1f0bb80f64db18ef1fbabd2fa9ccf
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.1"
path_provider: path_provider:
dependency: "direct main" dependency: "direct main"
description: description:
......
...@@ -127,6 +127,7 @@ dependencies: ...@@ -127,6 +127,7 @@ dependencies:
custom_pop_up_menu: ^1.2.4 custom_pop_up_menu: ^1.2.4
speech_to_text: ^6.1.1 speech_to_text: ^6.1.1
flutter_persistent_keyboard_height: ^1.0.5 flutter_persistent_keyboard_height: ^1.0.5
bruno: ^3.3.0
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment