From b8b2cac2f5bc5b87677085719839931e7f6ebb6e Mon Sep 17 00:00:00 2001 From: laiiihz Date: Wed, 17 Mar 2021 15:40:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=9D=83=E7=9B=8A=E5=8D=A1?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E6=88=90=E5=8A=9F=E6=88=96=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../upgradeCard/upgrade_card_unused_view.dart | 82 ++++++++++++++++++- .../upgrade_card_use_result_page.dart | 34 ++++++++ 2 files changed, 113 insertions(+), 3 deletions(-) create mode 100644 lib/pages/upgradeCard/upgrade_card_use_result_page.dart diff --git a/lib/pages/upgradeCard/upgrade_card_unused_view.dart b/lib/pages/upgradeCard/upgrade_card_unused_view.dart index 2d273e4..83793b5 100644 --- a/lib/pages/upgradeCard/upgrade_card_unused_view.dart +++ b/lib/pages/upgradeCard/upgrade_card_unused_view.dart @@ -1,4 +1,8 @@ import 'package:flutter/material.dart'; +import 'package:get/get.dart'; +import 'package:recook/pages/upgradeCard/upgrade_card_use_result_page.dart'; +import 'package:recook/widgets/alert.dart'; +import 'package:recook/widgets/progress/re_toast.dart'; import 'package:recook/widgets/refresh_widget.dart'; import 'package:velocity_x/velocity_x.dart'; import 'package:recook/constants/header.dart'; @@ -66,9 +70,44 @@ class _UpgradeUnusedViewState extends State { mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.center, children: [ - _renderButton(title: '使用', onTap: () {}), + _renderButton( + title: '使用', + onTap: () async { + DateTime now = DateTime.now(); + DateTime nextMonth = DateTime(now.year, now.month + 1); + + bool result = await _openUseCardDialog( + confirmTitle: '使用黄金卡', + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + '黄金卡使用后将于${nextMonth.month}月1日考核时生效' + .text + .black + .size(15.sp) + .make(), + '您使用了黄金卡,将于下月1日生效,若店铺考核未达到黄金店铺考核标准,则消耗一张黄金卡成为黄金店铺,享受黄金店铺权益;若店铺考核达到黄金店铺标准,则黄金卡将返还至您的卡包。' + .text + .color(Color(0xFFDE180C)) + .size(15.sp) + .make(), + ], + ), + ); + if (result) { + final cancel = ReToast.loading(text: '使用中'); + //TODO 请求使用权益卡接口 + await Future.delayed(Duration(seconds: 2)); + cancel(); + await Get.to(() => UpgradeUseResultPage( + result: true, + content: '恭喜', + )); + _refreshController.requestRefresh(); + } + }), 16.hb, - _renderButton(title: '赠送', onTap: () {}), + _renderButton(title: '赠送', onTap: () async {}), ], ), ], @@ -111,7 +150,31 @@ class _UpgradeUnusedViewState extends State { mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.center, children: [ - _renderButton(title: '使用', onTap: () {}), + _renderButton( + title: '使用', + onTap: () async { + DateTime now = DateTime.now(); + DateTime nextMonth = DateTime(now.year, now.month + 1); + + bool result = await _openUseCardDialog( + confirmTitle: '使用白银卡', + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + '白银卡使用后将于${nextMonth.month}月1日考核时生效' + .text + .black + .size(15.sp) + .make(), + '您使用了白银卡,将于下月1日生效,若店铺考核未达到白银店铺考核标准,则消耗一张白银卡成为白银店铺,享受白银店铺权益;若店铺考核达到白银店铺标准,则白银卡将返还至您的卡包。' + .text + .color(Color(0xFFDE180C)) + .size(15.sp) + .make(), + ], + ), + ); + }), 16.hb, _renderButton(title: '赠送', onTap: () {}), ], @@ -126,6 +189,19 @@ class _UpgradeUnusedViewState extends State { ); } + Future _openUseCardDialog({String confirmTitle, Widget child}) async { + return (await Get.dialog(NormalContentDialog( + title: '提示', + content: child, + type: NormalTextDialogType.delete, + items: ['取消'], + deleteItem: confirmTitle, + listener: (_) => Get.back(), + deleteListener: () => Get.back(result: true), + ))) == + true; + } + @override void dispose() { _refreshController?.dispose(); diff --git a/lib/pages/upgradeCard/upgrade_card_use_result_page.dart b/lib/pages/upgradeCard/upgrade_card_use_result_page.dart new file mode 100644 index 0000000..a7442b6 --- /dev/null +++ b/lib/pages/upgradeCard/upgrade_card_use_result_page.dart @@ -0,0 +1,34 @@ +import 'package:flutter/material.dart'; +import 'package:recook/widgets/recook/recook_scaffold.dart'; +import 'package:recook/constants/header.dart'; +import 'package:velocity_x/velocity_x.dart'; + +class UpgradeUseResultPage extends StatelessWidget { + final bool result; + final String content; + + const UpgradeUseResultPage( + {Key key, @required this.result, @required this.content}) + : super(key: key); + + @override + Widget build(BuildContext context) { + return RecookScaffold( + title: '权益卡', + whiteBg: true, + body: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + 70.hb, + Image.asset( + result ? R.ASSETS_RESULT_SUCCESS_PNG : R.ASSETS_RESULT_FAIL_PNG, + width: 68.w, + height: 68.w, + ), + 10.hb, + content.text.size(18.sp).black.make().centered(), + ], + ), + ); + } +}