Commit 0b4687d1afe3dbc64f1d12a6f2d2cdb86aa3b4a0

Authored by wdn127929
1 parent db102ddb

苹果token需做本地缓存

@@ -17,9 +17,9 @@ if (flutterRoot == null) { @@ -17,9 +17,9 @@ if (flutterRoot == null) {
17 17
18 18
19 19
20 -def flutterVersionCode = "497" 20 +def flutterVersionCode = "498"
21 if (flutterVersionCode == null) { 21 if (flutterVersionCode == null) {
22 - flutterVersionCode = '497' 22 + flutterVersionCode = '498'
23 23
24 24
25 } 25 }
@@ -28,9 +28,9 @@ if (flutterVersionCode == null) { @@ -28,9 +28,9 @@ if (flutterVersionCode == null) {
28 28
29 29
30 30
31 -def flutterVersionName = "4.9.7" 31 +def flutterVersionName = "4.9.8"
32 if (flutterVersionName == null) { 32 if (flutterVersionName == null) {
33 - flutterVersionName = '4.9.7' 33 + flutterVersionName = '4.9.8'
34 34
35 } 35 }
36 36
@@ -525,7 +525,7 @@ @@ -525,7 +525,7 @@
525 "$(inherited)", 525 "$(inherited)",
526 "$(PROJECT_DIR)/Flutter", 526 "$(PROJECT_DIR)/Flutter",
527 ); 527 );
528 - MARKETING_VERSION = 4.9.7; 528 + MARKETING_VERSION = 4.9.8;
529 PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine; 529 PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine;
530 PRODUCT_NAME = Runner; 530 PRODUCT_NAME = Runner;
531 PROVISIONING_PROFILE_SPECIFIER = ""; 531 PROVISIONING_PROFILE_SPECIFIER = "";
@@ -671,7 +671,7 @@ @@ -671,7 +671,7 @@
671 "$(inherited)", 671 "$(inherited)",
672 "$(PROJECT_DIR)/Flutter", 672 "$(PROJECT_DIR)/Flutter",
673 ); 673 );
674 - MARKETING_VERSION = 4.9.7; 674 + MARKETING_VERSION = 4.9.8;
675 PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine; 675 PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine;
676 PRODUCT_NAME = Runner; 676 PRODUCT_NAME = Runner;
677 PROVISIONING_PROFILE_SPECIFIER = ""; 677 PROVISIONING_PROFILE_SPECIFIER = "";
@@ -707,7 +707,7 @@ @@ -707,7 +707,7 @@
707 "$(inherited)", 707 "$(inherited)",
708 "$(PROJECT_DIR)/Flutter", 708 "$(PROJECT_DIR)/Flutter",
709 ); 709 );
710 - MARKETING_VERSION = 4.9.7; 710 + MARKETING_VERSION = 4.9.8;
711 PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine; 711 PRODUCT_BUNDLE_IDENTIFIER = com.naji.reserveLine;
712 PRODUCT_NAME = Runner; 712 PRODUCT_NAME = Runner;
713 PROVISIONING_PROFILE_SPECIFIER = ""; 713 PROVISIONING_PROFILE_SPECIFIER = "";
@@ -24,6 +24,8 @@ class User { @@ -24,6 +24,8 @@ class User {
24 String nickName; // 昵称 24 String nickName; // 昵称
25 String edate; //店铺过期日期 25 String edate; //店铺过期日期
26 26
  27 + String tokenLoginOut; //信鸽token
  28 +
27 User( 29 User(
28 this.openid, 30 this.openid,
29 this.account, 31 this.account,
@@ -43,7 +45,8 @@ class User { @@ -43,7 +45,8 @@ class User {
43 this.userphone, 45 this.userphone,
44 this.token, 46 this.token,
45 this.nickName, 47 this.nickName,
46 - this.edate); 48 + this.edate,
  49 + this.tokenLoginOut);
47 50
48 factory User.fromJson(Map<String, dynamic> json) => _$UserFromJson(json); 51 factory User.fromJson(Map<String, dynamic> json) => _$UserFromJson(json);
49 52
@@ -51,6 +54,6 @@ class User { @@ -51,6 +54,6 @@ class User {
51 54
52 @override 55 @override
53 String toString() { 56 String toString() {
54 - return 'User{openid: $openid, account: $account, role_name: $role_name, sellerid: $sellerid, sellercode: $sellercode, sellername: $sellername,sellerimage:$sellerimage, sellerphone: $sellerphone, sellerAddr: $sellerAddr, scatter: $scatter, room: $room, cassette: $cassette, morning: $morning, noon: $noon, night: $night ,userphone:$userphone,token:$token,nickName:$nickName,edate:$edate}'; 57 + return 'User{openid: $openid, account: $account, role_name: $role_name, sellerid: $sellerid, sellercode: $sellercode, sellername: $sellername,sellerimage:$sellerimage, sellerphone: $sellerphone, sellerAddr: $sellerAddr, scatter: $scatter, room: $room, cassette: $cassette, morning: $morning, noon: $noon, night: $night ,userphone:$userphone,token:$token,nickName:$nickName,edate:$edate},tokenLoginOut:${tokenLoginOut}';
55 } 58 }
56 } 59 }
@@ -27,6 +27,7 @@ User _$UserFromJson(Map<String, dynamic> json) { @@ -27,6 +27,7 @@ User _$UserFromJson(Map<String, dynamic> json) {
27 json['token'] as String, 27 json['token'] as String,
28 json['nickname'] as String, 28 json['nickname'] as String,
29 json['edate'] as String, 29 json['edate'] as String,
  30 + json['tokenLoginOut'] as String
30 ); 31 );
31 } 32 }
32 33
@@ -49,5 +50,6 @@ Map<String, dynamic> _$UserToJson(User instance) => <String, dynamic>{ @@ -49,5 +50,6 @@ Map<String, dynamic> _$UserToJson(User instance) => <String, dynamic>{
49 'userphone': instance.userphone, 50 'userphone': instance.userphone,
50 'token': instance.token, 51 'token': instance.token,
51 'nickname': instance.nickName, 52 'nickname': instance.nickName,
52 - 'edate': instance.edate 53 + 'edate': instance.edate,
  54 + 'tokenLoginOut':instance.tokenLoginOut
53 }; 55 };
@@ -152,7 +152,8 @@ class _FeastPageState extends State<FeastPage> { @@ -152,7 +152,8 @@ class _FeastPageState extends State<FeastPage> {
152 } 152 }
153 }), 153 }),
154 feastModel.beFollowData != null && 154 feastModel.beFollowData != null &&
155 - feastModel.beFollowData.length > 0 155 + feastModel.beFollowData.length > 0 &&
  156 + (Utils.getAuthority(context, '待跟进'))
156 ? Positioned( 157 ? Positioned(
157 right: ScreenUtil().setWidth(0), 158 right: ScreenUtil().setWidth(0),
158 bottom: ScreenUtil().setWidth(38), 159 bottom: ScreenUtil().setWidth(38),
@@ -48,6 +48,7 @@ import '../../models/user.dart'; @@ -48,6 +48,7 @@ import '../../models/user.dart';
48 import '../../provider/feast_model.dart'; 48 import '../../provider/feast_model.dart';
49 import '../../provider/remark_manager_model.dart'; 49 import '../../provider/remark_manager_model.dart';
50 import '../../provider/store_base_info_provider.dart'; 50 import '../../provider/store_base_info_provider.dart';
  51 +import '../../utils/event_bus.dart';
51 import '../../utils/screen_util.dart'; 52 import '../../utils/screen_util.dart';
52 import '../feast/feast_page.dart'; 53 import '../feast/feast_page.dart';
53 54
@@ -184,6 +185,9 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { @@ -184,6 +185,9 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
184 create: (_) => StoreBaseIndoProvider(), child: MyPage()), 185 create: (_) => StoreBaseIndoProvider(), child: MyPage()),
185 )); 186 ));
186 WidgetsBinding.instance.addPostFrameCallback((_) { 187 WidgetsBinding.instance.addPostFrameCallback((_) {
  188 + bus.on('refresh_token', (arg) {
  189 + initPlatformState();
  190 + });
187 initPlatformState(); 191 initPlatformState();
188 _getTableList(); 192 _getTableList();
189 _getSellerById(); 193 _getSellerById();
@@ -914,15 +918,26 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { @@ -914,15 +918,26 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
914 } 918 }
915 919
916 //初始化推送token 920 //初始化推送token
917 - userTokenInit(String token) { 921 + userTokenInit(String token) async {
  922 + // userModel.token = token;
  923 + // userModel.tokenLoginOut =
  924 + // Platform.isAndroid ? "Android_$token" : "Ios_$token";
918 UserModel userModel = Provider.of<UserModel>(context, listen: false); 925 UserModel userModel = Provider.of<UserModel>(context, listen: false);
919 - userModel.token = token;  
920 Map<String, String> params = { 926 Map<String, String> params = {
921 "sid": userModel.user.sellerid, 927 "sid": userModel.user.sellerid,
922 "account": userModel.user.account, 928 "account": userModel.user.account,
923 "user_token": Platform.isAndroid ? "Android_$token" : "Ios_$token" 929 "user_token": Platform.isAndroid ? "Android_$token" : "Ios_$token"
924 }; 930 };
  931 +
925 userModel.userTokenInit(context, params); 932 userModel.userTokenInit(context, params);
  933 + if (App.sp.containsKey('user')) {
  934 + String s = App.sp.getString('user');
  935 + User _user = User.fromJson(json.decode(s));
  936 + _user.tokenLoginOut =
  937 + Platform.isAndroid ? "Android_$token" : "Ios_$token";
  938 +
  939 + await UserModel().saveUserInfo(_user);
  940 + }
926 } 941 }
927 942
928 // 消息类型ID 1/2/10 提前点餐/新订单(预定)消息/在线预订 943 // 消息类型ID 1/2/10 提前点餐/新订单(预定)消息/在线预订
@@ -1102,7 +1117,8 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { @@ -1102,7 +1117,8 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
1102 Positioned( 1117 Positioned(
1103 top: -8, 1118 top: -8,
1104 right: -8, 1119 right: -8,
1105 - child: _getUnMsgNumUI() 1120 + child: _getUnMsgNumUI() &&
  1121 + (Utils.getAuthority(context, '消息中心'))
1106 ? Container( 1122 ? Container(
1107 constraints: BoxConstraints( 1123 constraints: BoxConstraints(
1108 minWidth: ScreenUtil().setWidth(36)), 1124 minWidth: ScreenUtil().setWidth(36)),
@@ -1147,7 +1163,8 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { @@ -1147,7 +1163,8 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
1147 Positioned( 1163 Positioned(
1148 top: -8, 1164 top: -8,
1149 right: -8, 1165 right: -8,
1150 - child: _getUnMsgNumUI() 1166 + child: _getUnMsgNumUI() &&
  1167 + (Utils.getAuthority(context, '消息中心'))
1151 ? Container( 1168 ? Container(
1152 constraints: BoxConstraints( 1169 constraints: BoxConstraints(
1153 minWidth: ScreenUtil().setWidth(36)), 1170 minWidth: ScreenUtil().setWidth(36)),
@@ -1409,6 +1426,8 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver { @@ -1409,6 +1426,8 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
1409 // TODO: implement dispose 1426 // TODO: implement dispose
1410 super.dispose(); 1427 super.dispose();
1411 LogUtil.v("home_dispose"); 1428 LogUtil.v("home_dispose");
  1429 +
  1430 + bus.off('refresh_token');
1412 if (timer != null) { 1431 if (timer != null) {
1413 timer.cancel(); 1432 timer.cancel();
1414 } 1433 }
1 import 'dart:convert'; 1 import 'dart:convert';
  2 +import 'dart:io';
2 3
3 import 'package:cached_network_image/cached_network_image.dart'; 4 import 'package:cached_network_image/cached_network_image.dart';
4 import 'package:dotted_border/dotted_border.dart'; 5 import 'package:dotted_border/dotted_border.dart';
@@ -135,6 +136,9 @@ class _IfNeedCreateStoreState extends State<IfNeedCreateStore> @@ -135,6 +136,9 @@ class _IfNeedCreateStoreState extends State<IfNeedCreateStore>
135 _loginStore(context, CheckSellerAccSunModel sunModel) { 136 _loginStore(context, CheckSellerAccSunModel sunModel) {
136 UserModel userModel = Provider.of<UserModel>(context, listen: false); 137 UserModel userModel = Provider.of<UserModel>(context, listen: false);
137 App.sp.setBool("accountLogin", false); 138 App.sp.setBool("accountLogin", false);
  139 + if (Platform.isIOS) {
  140 + XgFlutterPlugin().stopXg();
  141 + }
138 if (App.sp.containsKey('table_list')) { 142 if (App.sp.containsKey('table_list')) {
139 //退出清空桌位数据 143 //退出清空桌位数据
140 App.sp.remove('table_list'); 144 App.sp.remove('table_list');
@@ -148,6 +152,7 @@ class _IfNeedCreateStoreState extends State<IfNeedCreateStore> @@ -148,6 +152,7 @@ class _IfNeedCreateStoreState extends State<IfNeedCreateStore>
148 //退出清空店铺过期数据缓存 152 //退出清空店铺过期数据缓存
149 App.sp.remove('sellerEdate'); 153 App.sp.remove('sellerEdate');
150 } 154 }
  155 + bus.emit('refresh_token');
151 Map<String, dynamic> seller = sunModel.toJson(); 156 Map<String, dynamic> seller = sunModel.toJson();
152 Map<String, dynamic> userMap = { 157 Map<String, dynamic> userMap = {
153 "openid": seller['uid'], 158 "openid": seller['uid'],
@@ -25,7 +25,9 @@ import '../models/set_xuan_tai_model.dart'; @@ -25,7 +25,9 @@ import '../models/set_xuan_tai_model.dart';
25 25
26 class UserModel with ChangeNotifier { 26 class UserModel with ChangeNotifier {
27 String _registrationId; //极光推送registrationId 27 String _registrationId; //极光推送registrationId
28 - String _token; //信鸽推送token 28 + // String token; //信鸽推送token
  29 +
  30 + // String tokenLoginOut; //信鸽推送token+前缀
29 List<PullMarketingByUidSunModel> pullMarketingByUidSunModel; 31 List<PullMarketingByUidSunModel> pullMarketingByUidSunModel;
30 // bool accountLogin = false; 32 // bool accountLogin = false;
31 33
@@ -45,11 +47,17 @@ class UserModel with ChangeNotifier { @@ -45,11 +47,17 @@ class UserModel with ChangeNotifier {
45 47
46 String get registrationId => _registrationId; 48 String get registrationId => _registrationId;
47 49
48 - String get token => _token; 50 + // String get token => _token;
49 51
50 - set token(String value) {  
51 - _token = value;  
52 - } 52 + // String get tokenLoginOut => _tokenLoginOut;
  53 +
  54 + // set token(String value) {
  55 + // _token = value;
  56 + // }
  57 +
  58 + // set tokenLoginOut(String value) {
  59 + // tokenLoginOut = value;
  60 + // }
53 61
54 /// 初始化 User 62 /// 初始化 User
55 // void initUser() { 63 // void initUser() {
@@ -332,6 +340,9 @@ class UserModel with ChangeNotifier { @@ -332,6 +340,9 @@ class UserModel with ChangeNotifier {
332 340
333 ///退出登录 341 ///退出登录
334 loginOut(BuildContext context, Map<String, String> params) async { 342 loginOut(BuildContext context, Map<String, String> params) async {
  343 + params['token'] =
  344 + Provider.of<UserModel>(context, listen: false).user.tokenLoginOut;
  345 + print(params);
335 BaseResp<int> baseResp = await DioUtil() 346 BaseResp<int> baseResp = await DioUtil()
336 .request<int>(context, Method.get, HttpUrl.login_out, data: params) 347 .request<int>(context, Method.get, HttpUrl.login_out, data: params)
337 .catchError((error) { 348 .catchError((error) {
@@ -372,6 +383,9 @@ class UserModel with ChangeNotifier { @@ -372,6 +383,9 @@ class UserModel with ChangeNotifier {
372 ///切换店铺时的退出登录 383 ///切换店铺时的退出登录
373 Future<bool> loginOutOnly( 384 Future<bool> loginOutOnly(
374 BuildContext context, Map<String, String> params) async { 385 BuildContext context, Map<String, String> params) async {
  386 + params['token'] =
  387 + Provider.of<UserModel>(context, listen: false).user.tokenLoginOut;
  388 + print(params);
375 BaseResp<int> baseResp = await DioUtil() 389 BaseResp<int> baseResp = await DioUtil()
376 .request<int>(context, Method.get, HttpUrl.login_out, data: params) 390 .request<int>(context, Method.get, HttpUrl.login_out, data: params)
377 .catchError((error) { 391 .catchError((error) {