Commit 38e9d257a1a44382d40fb8fd67c6d60a64c071c7

Authored by wdn127929
1 parent 21d0f5a5

不足一天提醒,0天提醒 and 预订安排页面短信余量提示

... ... @@ -16,17 +16,17 @@ if (flutterRoot == null) {
def flutterVersionCode = "490"
def flutterVersionCode = "492"
if (flutterVersionCode == null) {
flutterVersionCode = '490'
flutterVersionCode = '492'
}
def flutterVersionName = "4.9.0"
def flutterVersionName = "4.9.2"
if (flutterVersionName == null) {
flutterVersionName = '4.9.0'
flutterVersionName = '4.9.2'
}
... ...
... ... @@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objectVersion = 50;
objects = {
/* Begin PBXBuildFile section */
... ... @@ -510,7 +510,7 @@
CODE_SIGN_ENTITLEMENTS = Runner/RunnerProfile.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 490;
CURRENT_PROJECT_VERSION = 4901;
DEVELOPMENT_TEAM = 8J59HM8B82;
ENABLE_BITCODE = NO;
FLUTTER_BUILD_MODE = release;
... ... @@ -656,7 +656,7 @@
CODE_SIGN_ENTITLEMENTS = "Runner/一键订Debug.entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 490;
CURRENT_PROJECT_VERSION = 4901;
DEVELOPMENT_TEAM = 8J59HM8B82;
ENABLE_BITCODE = NO;
FLUTTER_BUILD_MODE = release;
... ... @@ -692,7 +692,7 @@
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 490;
CURRENT_PROJECT_VERSION = 4901;
DEVELOPMENT_TEAM = 8J59HM8B82;
ENABLE_BITCODE = NO;
FLUTTER_BUILD_MODE = release;
... ...
... ... @@ -3,10 +3,10 @@ import 'package:fluwx/fluwx.dart';
class Constant {
static const int status_success = 200; //服务器返回成功
// static const WXMiniProgramType wxMiniProgramType =
// WXMiniProgramType.RELEASE; //正式版
static const WXMiniProgramType wxMiniProgramType =
WXMiniProgramType.PREVIEW; //体验版
WXMiniProgramType.RELEASE; //正式版
// static const WXMiniProgramType wxMiniProgramType =
// WXMiniProgramType.PREVIEW; //体验版
// static const WXMiniProgramType wxMiniProgramType =
// WXMiniProgramType.TEST; //开发版
... ...
... ... @@ -126,7 +126,7 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
_currIndex = widget.initialIndex;
if (App.sp.containsKey('sellerEdate')) {
List<String> data = App.sp.getStringList('sellerEdate');
if (data.contains('0')) {
if (data.contains('-1')) {
//已经弹过过期弹窗,默认我的
_currIndex = 4;
}
... ... @@ -240,8 +240,10 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
//店铺过期日期
DateTime edate = DateTime.fromMillisecondsSinceEpoch(
int.parse(sellerInfoSunModel.data.edate) * 1000);
//当前日期
final datenow = DateTime.now();
//比较相差的天数
int difference = edate.difference(datenow).inDays;
... ... @@ -257,9 +259,12 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
} else if (difference == 1) {
//过期差1天,提醒一次
_showSellerAlert('1', edate);
} else if (difference == 0 && differenceSeconds > 0) {
//剩余不足一天
_showSellerAlert('0', edate);
} else if (difference < 0 || (difference == 0 && differenceSeconds <= 0)) {
//已到期
_showSellerAlert('0', edate);
_showSellerAlert('-1', edate);
} else if (difference > 7) {
//没到期
App.sp.remove('sellerEdate');
... ... @@ -274,17 +279,19 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
Provider.of<StoreBaseIndoProvider>(context, listen: false);
sellerInfoSunModel = await storeBaseIndoProvider.getSellerById(context);
if (sellerInfoSunModel != null) {
//获取到店铺过期时间
//店铺过期提醒
// 计算时间差
//店铺过期日期
_edateShow();
timerSellerEdate = Timer.periodic(Duration(days: 1), (_) {
if (sellerInfoSunModel.data.edate != null) {
//获取到店铺过期时间
//店铺过期提醒
// 计算时间差
//店铺过期日期
_edateShow();
});
timerSellerEdate = Timer.periodic(Duration(days: 1), (_) {
//店铺过期提醒
// 计算时间差
//店铺过期日期
_edateShow();
});
}
}
}
... ... @@ -296,7 +303,7 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
data.add(day);
App.sp.setStringList("sellerEdate", data);
//过期差ji天,提醒一次s
if (day == '0') {
if (day == '-1') {
DialogUtil.cupertinoAlertSellerHasEdateDialog(
context,
title: '温馨提示',
... ... @@ -326,7 +333,7 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
} else {
App.sp.setStringList("sellerEdate", [day]);
//过期差ji天,提醒一次s
if (day == '0') {
if (day == '-1') {
DialogUtil.cupertinoAlertSellerHasEdateDialog(
context,
title: '温馨提示',
... ... @@ -1225,7 +1232,7 @@ class HomePageState extends State<HomePage> with WidgetsBindingObserver {
if (_currIndex != index) {
if (App.sp.containsKey('sellerEdate')) {
List<String> data = App.sp.getStringList('sellerEdate');
if (data.contains('0')) {
if (data.contains('-1')) {
DialogUtil.cupertinoAlertSellerHasEdateDialog(
context,
title: '温馨提示',
... ...
... ... @@ -43,7 +43,9 @@ import 'dart:ui' as ui;
import '../../app.dart';
import '../../models/sms_info.dart';
import '../../provider/customer_provider.dart';
import '../../provider/my_model.dart';
import '../../widgets/special_text/my_extended_text_selection_controls.dart';
class InvicationPage extends StatefulWidget {
... ... @@ -158,6 +160,9 @@ class InvicationPageState extends State<InvicationPage>
MyTextSelectionControls _myExtendedMaterialTextSelectionControlsNum =
MyTextSelectionControls();
MyModel myModel;
SmsInfoData smsInfoData;
@override
void initState() {
super.initState();
... ... @@ -258,9 +263,9 @@ class InvicationPageState extends State<InvicationPage>
offset: value.toString().length)));
});
couponProvider.sendSMS = 0;
await _couponNetworkData(isShowLoading: false);
// await _couponNetworkData(isShowLoading: false);
await _getCustomerActivityBaseinfo();
_getSmsInfo(context);
await _getReserveDetail(showCicle: false);
await _getTablesPhoto();
... ... @@ -270,7 +275,7 @@ class InvicationPageState extends State<InvicationPage>
await remarkManagerModel.getRemarks(context, params);
});
bus.on("refresh_coupon_invitation", (args) {
_couponNetworkData(isShowLoading: false);
// _couponNetworkData(isShowLoading: false);
});
bus.on("refresh_invitaion_info", (args) {
_getReserveDetail();
... ... @@ -318,6 +323,34 @@ class InvicationPageState extends State<InvicationPage>
}
}
///获取短信余量
_getSmsInfo(context) async {
smsInfoData = await myModel.getSmsInfo(context, selfDismiss: false);
if (myModel.smsInfo == '0') {
if (!mounted) {
return;
}
setState(() {
showErroInfo = true;
erroInfo = '短信余额不足,请充值短信条数';
});
} else {
if (!mounted) {
return;
}
setState(() {
showErroInfo = false;
erroInfo = '';
});
}
// setState(() {
// if (smsInfoData != null) {
// smsInfo = smsInfoData?.lastNum;
// }
// });
}
///倒计时方法
startCountdown() {
countdownTime = 60;
... ... @@ -1175,7 +1208,7 @@ class InvicationPageState extends State<InvicationPage>
}
couponProvider.couponListSelect = temp;
//获取绑定的优惠券
_getActivityByRid();
// _getActivityByRid();
// if (couponProvider.coupons.length == 0) {
// setState(() {
... ... @@ -2275,7 +2308,7 @@ class InvicationPageState extends State<InvicationPage>
],
),
// 选择优惠
_couponWidget(),
// _couponWidget(),
showErroInfo
? Container(
margin: EdgeInsets.only(
... ... @@ -3905,6 +3938,13 @@ class InvicationPageState extends State<InvicationPage>
_showConfirmWidget(
needWechat: true,
callback: () async {
if (myModel.smsInfo == '0') {
setState(() {
showErroInfo = true;
erroInfo = '短信余额不足,请充值短信条数';
});
return;
}
if (canSendSms) {
if (reserverPhone == null ||
reserverPhone.isEmpty ||
... ... @@ -4001,6 +4041,13 @@ class InvicationPageState extends State<InvicationPage>
});
canSendSms = false;
startCountdown();
} else {
if (couponProvider.errorSMS != '') {
setState(() {
showErroInfo = true;
erroInfo = couponProvider.errorSMS;
});
}
}
// if (success) {
// Utils.showToast('短信已经发送成功!');
... ... @@ -4020,6 +4067,13 @@ class InvicationPageState extends State<InvicationPage>
});
removeOverlay();
} else {
if (myModel.smsInfo == '0') {
setState(() {
showErroInfo = true;
erroInfo = '短信余额不足,请充值短信条数';
});
return;
}
if (canSendSms) {
if (reserverPhone == null ||
reserverPhone.isEmpty ||
... ... @@ -4064,6 +4118,13 @@ class InvicationPageState extends State<InvicationPage>
});
canSendSms = false;
startCountdown();
} else {
if (couponProvider.errorSMS != '') {
setState(() {
showErroInfo = true;
erroInfo = couponProvider.errorSMS;
});
}
}
}
} else {
... ... @@ -4567,6 +4628,7 @@ class InvicationPageState extends State<InvicationPage>
_baseIndoProvider = Provider.of<BaseIndoProvider>(context, listen: true);
couponProvider = Provider.of<CouponProvider>(context, listen: true);
remarkManagerModel = Provider.of<RemarkManagerModel>(context, listen: true);
myModel = Provider.of<MyModel>(context, listen: true);
return SafeArea(
child: Scaffold(
appBar: SystemAppBar('预订安排', titleColor: MyColours.color_438E93,
... ...
... ... @@ -40,6 +40,7 @@ class CouponProvider with ChangeNotifier {
List<IsExamineSunModel> isExamineList = []; //商家券核销列表
IsExamineSunModel isExamineDetail;
String errorSMS = '';
CouponProvider() {
// for (int i = 0; i < 20; i++) {
// swichStateData.add(true);
... ... @@ -781,6 +782,12 @@ class CouponProvider with ChangeNotifier {
sendSMS++;
return true;
} else {
if (baseResp.code == 396) {
//余量不足
errorSMS = '短信余额不足,请充值短信条数';
} else {
errorSMS = '';
}
Utils.showToast(baseResp.msg ?? "");
return false;
}
... ...
... ... @@ -423,7 +423,9 @@ var handleInvicationHandler = new Handler(
child: ChangeNotifierProvider<BaseIndoProvider>(
create: (_) => BaseIndoProvider(),
child: ChangeNotifierProvider<CustomerProvider>(
create: (_) => CustomerProvider(), child: InvicationPage(rid))));
create: (_) => CustomerProvider(),
child: ChangeNotifierProvider<MyModel>(
create: (_) => MyModel(), child: InvicationPage(rid)))));
});
// 发短信
... ...