diff --git a/lib/models/user_brief_info_model.dart b/lib/models/user_brief_info_model.dart index abeab24..39e922c 100644 --- a/lib/models/user_brief_info_model.dart +++ b/lib/models/user_brief_info_model.dart @@ -32,6 +32,9 @@ class UserBrief { OrderCenter orderCenter; VersionInfo versionInfo; String identifier; + int secret; + + bool get secretValue => secret == 1; UserBrief({ this.balance, @@ -43,6 +46,7 @@ class UserBrief { this.orderCenter, this.versionInfo, this.identifier, + this.secret, }); UserBrief.empty() { @@ -56,6 +60,7 @@ class UserBrief { OrderCenter(waitPay: 0, waitSend: 0, waitRecv: 0, afterSales: 0); this.versionInfo = VersionInfo(); this.identifier = ""; + this.secret = 0; } UserBrief.fromJson(Map json) { @@ -80,6 +85,7 @@ class UserBrief { ? new VersionInfo.fromJson(json['VersionInfo']) : null; identifier = json['identifier']; + secret = json['secret']; } Map toJson() { diff --git a/lib/pages/user/account_and_safety/account_and_safety_page.dart b/lib/pages/user/account_and_safety/account_and_safety_page.dart index 1b74f40..036c0d5 100644 --- a/lib/pages/user/account_and_safety/account_and_safety_page.dart +++ b/lib/pages/user/account_and_safety/account_and_safety_page.dart @@ -1,5 +1,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; +import 'package:recook/base/base_store_state.dart'; +import 'package:recook/manager/user_manager.dart'; import 'package:velocity_x/velocity_x.dart'; @@ -17,16 +19,31 @@ class AccountAndSafetyPage extends StatefulWidget { _AccountAndSafetyPageState createState() => _AccountAndSafetyPageState(); } -class _AccountAndSafetyPageState extends State { +class _AccountAndSafetyPageState extends BaseStoreState { bool secureValue = false; @override void initState() { super.initState(); - //TODO 初始化手机号显示开关数值 + secureValue = UserManager.instance.userBrief.secretValue; + } + + Future updateProfile() async { + await UserManager.instance.updateUserBriefInfo(getStore()).then((success) { + if (success) { + if (UserManager.instance.user.info.roleLevel != + getStore().state.userBrief.roleLevel) { + UserManager.instance.user.info.roleLevel = + getStore().state.userBrief.roleLevel; + UserManager.instance.refreshUserRole.value = + !UserManager.instance.refreshUserRole.value; + UserManager.updateUserInfo(getStore()); + } + } + }); } @override - Widget build(BuildContext context) { + Widget buildContext(BuildContext context, {store}) { return Scaffold( backgroundColor: AppColor.frenchColor, appBar: CustomAppBar( @@ -92,10 +109,11 @@ class _AccountAndSafetyPageState extends State { secureValue = !secureValue; await HttpManager.post( APIV2.userAPI.securePhone, - {'secure': secureValue ? 1 : 0}, + {'secret': secureValue ? 1 : 0}, ); + await updateProfile(); cancel(); - ReToast.success(text: '修改成功'); + ReToast.success(text: secureValue ? '已开启' : '已关闭'); setState(() {}); }