Commit 4b3857d53b0007e42a931b74c996f318d917fb02

Authored by wdn127929
2 parents 490142ac 8fa26689

Merge branch 'v5.1.0+' into v5.1.1+

... ... @@ -211,73 +211,76 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
child: ChangeNotifierProvider<CollectStoreProvider>(
create: (_) => CollectStoreProvider(), child: MyPage()),
)));
WidgetsBinding.instance.addPostFrameCallback((_) {
WidgetsBinding.instance.addPostFrameCallback((_) async {
bus.on('refresh_token', (arg) {
initPlatformState();
});
getSellerVersion();
initPlatformState();
_getTableList();
_getSellerById();
List<PullMarketingByUidSunModel> data =
Provider.of<UserModel>(context, listen: false)
.pullMarketingByUidSunModel;
if (data != null && Utils.getAuthority(context, '全店任务')) {
if (data.length > 0) {
Future.delayed(Duration(milliseconds: 300), () {
DialogUtil.cupertinoAlertDialog(context,
title: "全店任务",
content: "管理员发布了新的任务,请立即查看并完成任务",
lTitle: "稍后提醒",
rTitle: "立即查看", lCallback: () {
print("稍后提醒");
// 30分钟后重新弹窗
_startTimerSeller();
}, rCallback: () {
_endTimerSeller();
if (data.length == 1) {
//进入营销详情
NavigatorUtil.goSellerMyMarketingRecordsDetailPage(
context, data[0].mid,
fromNotify: true);
} else {
//进入我的客情首页
NavigatorUtil.goMyCustomerPage(context);
}
bool success = await getSellerVersion();
if (success) {
initPlatformState();
_getTableList();
_getSellerById();
List<PullMarketingByUidSunModel> data =
Provider.of<UserModel>(context, listen: false)
.pullMarketingByUidSunModel;
if (data != null && Utils.getAuthority(context, '全店任务')) {
if (data.length > 0) {
Future.delayed(Duration(milliseconds: 300), () {
DialogUtil.cupertinoAlertDialog(context,
title: "全店任务",
content: "管理员发布了新的任务,请立即查看并完成任务",
lTitle: "稍后提醒",
rTitle: "立即查看", lCallback: () {
print("稍后提醒");
// 30分钟后重新弹窗
_startTimerSeller();
}, rCallback: () {
_endTimerSeller();
if (data.length == 1) {
//进入营销详情
NavigatorUtil.goSellerMyMarketingRecordsDetailPage(
context, data[0].mid,
fromNotify: true);
} else {
//进入我的客情首页
NavigatorUtil.goMyCustomerPage(context);
}
});
});
});
}
}
}
if (widget.initialIndex == 0 ||
widget.initialIndex == 1 && needRefreshTemp == false) return;
_initNotification();
Future.delayed(Duration(milliseconds: 30000), () {
//30000
ContactModel.getInstance().uploadLocalContact(context);
UserModel usermodel = Provider.of<UserModel>(context, listen: false);
if (needUpdate && !usermodel.downLoading) {
UpdateModelMy updateModel = new UpdateModelMy();
updateModel.checkUpdate(context, (version) {
updateModel.showUpdateDialog(context, version);
}, showToast: false);
if (widget.initialIndex == 0 ||
widget.initialIndex == 1 && needRefreshTemp == false) return;
_initNotification();
Future.delayed(Duration(milliseconds: 30000), () {
//30000
ContactModel.getInstance().uploadLocalContact(context);
UserModel usermodel = Provider.of<UserModel>(context, listen: false);
if (needUpdate && !usermodel.downLoading) {
UpdateModelMy updateModel = new UpdateModelMy();
updateModel.checkUpdate(context, (version) {
updateModel.showUpdateDialog(context, version);
}, showToast: false);
}
});
if (Utils.getAuthority(context, '消息中心')) {
timer = Timer.periodic(Duration(minutes: 3), (_) {
_getAllUnMessages();
});
}
});
if (Utils.getAuthority(context, '消息中心')) {
timer = Timer.periodic(Duration(minutes: 3), (_) {
_getAllUnMessages();
});
_getUnMsgNum();
}
_getUnMsgNum();
});
}
getSellerVersion() async {
await collectStoreProvider.getSellerVersion(context);
if (collectStoreProvider.sellerVersionList != null) {
if (collectStoreProvider.sellerVersionList != null &&
collectStoreProvider.sellerVersionList.length > 0) {
//获取到店铺过期时间
//店铺过期提醒
// 计算时间差
... ... @@ -312,8 +315,21 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
// //店铺过期日期
// _edateShow();
// });
return true;
} else {
if (_currIndex != 4) {
if (App.sp.containsKey('sellerEdate')) {
List<String> data = App.sp.getStringList('sellerEdate');
if (data.contains('-1')) {
//已经弹过过期弹窗,默认我的
_currIndex = 4;
}
}
NavigatorUtil.goHomePage(context, initialIndex: _currIndex);
}
return false;
}
setState(() {});
}
_getTableList() async {
... ... @@ -551,19 +567,19 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
Provider.of<StoreBaseIndoProvider>(context, listen: false);
sellerInfoSunModel = await storeBaseIndoProvider.getSellerById(context);
if (sellerInfoSunModel != null) {
if (sellerInfoSunModel.data.edate != null) {
//获取到店铺过期时间
//店铺过期提醒
// 计算时间差
//店铺过期日期
_edateShow();
timerSellerEdate = Timer.periodic(Duration(days: 1), (_) {
//店铺过期提醒
// 计算时间差
//店铺过期日期
_edateShow();
});
}
// if (sellerInfoSunModel.data.edate != null) {
// //获取到店铺过期时间
// //店铺过期提醒
// // 计算时间差
// //店铺过期日期
// _edateShow();
// timerSellerEdate = Timer.periodic(Duration(days: 1), (_) {
// //店铺过期提醒
// // 计算时间差
// //店铺过期日期
// _edateShow();
// });
// }
if (App.sp.containsKey('user')) {
String s = App.sp.getString('user');
... ...
... ... @@ -93,7 +93,7 @@ class MyPageState extends State<MyPage> with WidgetsBindingObserver {
///获取积分
_getMyIntegral(context);
_getSellerById();
// _getSellerById();
///apk版本检测
checkUpdate();
... ... @@ -139,34 +139,34 @@ class MyPageState extends State<MyPage> with WidgetsBindingObserver {
}
///获取店铺过期时间
_getSellerById() async {
StoreBaseIndoProvider storeBaseIndoProvider =
Provider.of<StoreBaseIndoProvider>(context, listen: false);
GetSellerInfoSunModel sellerInfoSunModel =
await storeBaseIndoProvider.getSellerById(context);
if (sellerInfoSunModel != null) {
if (sellerInfoSunModel.data.edate != null) {
//店铺过期提醒
// 计算时间差
//店铺过期日期
edate = DateTime.fromMillisecondsSinceEpoch(
int.parse(sellerInfoSunModel.data.edate) * 1000);
// _getSellerById() async {
// StoreBaseIndoProvider storeBaseIndoProvider =
// Provider.of<StoreBaseIndoProvider>(context, listen: false);
// GetSellerInfoSunModel sellerInfoSunModel =
// await storeBaseIndoProvider.getSellerById(context);
// if (sellerInfoSunModel != null) {
// if (sellerInfoSunModel.data.edate != null) {
// //店铺过期提醒
// // 计算时间差
// //店铺过期日期
// edate = DateTime.fromMillisecondsSinceEpoch(
// int.parse(sellerInfoSunModel.data.edate) * 1000);
String from =
DateUtil.formatDate(DateTime.now(), format: DateFormats.y_mo_d) +
' 00:00:00';
DateTime datenow = DateUtil.getDateTime(from);
//比较相差的天数
int day = edate.difference(datenow).inDays;
outDay = day < 0 ? '0' : day.toString();
// print(outDay);
} else {
outDay = '';
}
setState(() {});
//
}
}
// String from =
// DateUtil.formatDate(DateTime.now(), format: DateFormats.y_mo_d) +
// ' 00:00:00';
// DateTime datenow = DateUtil.getDateTime(from);
// //比较相差的天数
// int day = edate.difference(datenow).inDays;
// outDay = day < 0 ? '0' : day.toString();
// // print(outDay);
// } else {
// outDay = '';
// }
// setState(() {});
// //
// }
// }
///获取短信余量
_getSmsInfo(context) async {
... ... @@ -204,7 +204,29 @@ class MyPageState extends State<MyPage> with WidgetsBindingObserver {
getSellerVersion() async {
await collectStoreProvider.getSellerVersion(context);
if (collectStoreProvider.sellerNormal) {
if (collectStoreProvider.sellerNormalEdate != null) {
//店铺过期提醒
// 计算时间差
//店铺过期日期
edate = DateTime.fromMillisecondsSinceEpoch(
int.parse(collectStoreProvider.sellerNormalEdate) * 1000);
String from =
DateUtil.formatDate(DateTime.now(), format: DateFormats.y_mo_d) +
' 00:00:00';
DateTime datenow = DateUtil.getDateTime(from);
//比较相差的天数
int day = edate.difference(datenow).inDays;
outDay = day < 0 ? '0' : day.toString();
// print(outDay);
} else {
outDay = '0';
}
setState(() {});
} else {
outDay = '0';
}
setState(() {});
}
... ...
... ... @@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'package:one_key/provider/user_model.dart';
import 'package:provider/provider.dart';
import '../app.dart';
import '../constant/constant.dart';
import '../constant/error.dart';
import '../models/seller_version_model.dart';
... ... @@ -21,6 +22,9 @@ class CollectStoreProvider with ChangeNotifier {
bool sellerFeast = false; //宴会
bool sellerPreserve = false; //客情维护
bool sellerMarketing = false; //客情营销
bool sellerNormal = false; //超能或者标准
String sellerNormalEdate = '';
/// 收集店铺信息
Future<dynamic> setSellerCollect(
... ... @@ -114,6 +118,31 @@ class CollectStoreProvider with ChangeNotifier {
element == '2' ||
element == '3' ||
element == '11');
sellerNormal = versionCodeList.any((element) =>
element == '1' ||
element == '2' ||
element == '3' ||
element == '4');
sellerVersionList.forEach((element) {
if (element.vid == '1' ||
element.vid == '2' ||
element.vid == '3' ||
element.vid == '4') {
sellerNormalEdate = element.edate;
}
});
if (!sellerNormal) {
//超能版或者标准版过期
App.sp.setStringList("sellerEdate", ['-1']);
} else {
if (App.sp.containsKey("sellerEdate")) {
App.sp.remove("sellerEdate");
}
}
}else{
//超能版或者标准版过期
App.sp.setStringList("sellerEdate", ['-1']);
}
return true;
... ...