Browse Source

PayMethod 修改

dart3
wurong 6 months ago
parent
commit
e1491699ad
  1. 153
      lib/settlement/settlement_view/pay_method.dart

153
lib/settlement/settlement_view/pay_method.dart

@ -1,15 +1,12 @@
import 'dart:convert'; import 'dart:convert';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
import 'package:huixiang/data/min_order_info.dart'; import 'package:huixiang/data/min_order_info.dart';
import 'package:huixiang/data/settle_order_info.dart'; import 'package:huixiang/data/settle_order_info.dart';
import 'package:huixiang/generated/l10n.dart'; import 'package:huixiang/generated/l10n.dart';
import 'package:huixiang/utils/font_weight.dart'; import 'package:huixiang/utils/font_weight.dart';
import 'package:shared_preferences/shared_preferences.dart'; import 'package:shared_preferences/shared_preferences.dart';
import '../../view_widget/settlement_tips_dialog.dart';
class PayMethod extends StatefulWidget { class PayMethod extends StatefulWidget {
final Function(int payChannel) payChannelCheck; final Function(int payChannel) payChannelCheck;
final String coupons; final String coupons;
@ -92,10 +89,21 @@ class _PayMethod extends State<PayMethod> {
), ),
), ),
), ),
if(widget.tableId > 0 ? !(widget.minOrderInfo?.isRaise ?? false) : !(widget.settleOrderInfo?.isRaise ?? false)) if(widget.tableId > 0 ? !(widget?.minOrderInfo?.isRaise ?? false) : !(widget?.settleOrderInfo?.isRaise ?? false))
GestureDetector( GestureDetector(
behavior: HitTestBehavior.opaque, behavior: HitTestBehavior.opaque,
onTap: () { onTap: () {
double m = double.parse(money);
if (m == null) {
m = 0;
}
double orderSum = double.parse(widget.settleOrderInfo?.orderSum ?? '0');
if (orderSum == null) {
orderSum = 0;
}
if (orderSum > m) {
return;
}
setState(() { setState(() {
checkIndex = 1; checkIndex = 1;
}); });
@ -105,7 +113,7 @@ class _PayMethod extends State<PayMethod> {
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
children: [ children: [
checkView(1), checkView(1, isHide: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(money) ?? 0)),
Expanded( Expanded(
child: Container(), child: Container(),
flex: 1, flex: 1,
@ -115,7 +123,7 @@ class _PayMethod extends State<PayMethod> {
style: TextStyle( style: TextStyle(
fontSize: 14.sp, fontSize: 14.sp,
fontFamily: 'JDZhengHT', fontFamily: 'JDZhengHT',
color: Color(0xff353535), color: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(money) ?? 0) ? Color(0x66353535) : Color(0xff353535),
fontWeight: MyFontWeight.medium, fontWeight: MyFontWeight.medium,
), ),
), ),
@ -126,21 +134,32 @@ class _PayMethod extends State<PayMethod> {
S.of(context).huixiangqianbao, S.of(context).huixiangqianbao,
style: TextStyle( style: TextStyle(
fontSize: 14.sp, fontSize: 14.sp,
color: Color(0xff353535), color: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(money) ?? 0) ? Color(0x66353535) : Color(0xff353535),
fontWeight: MyFontWeight.semi_bold, fontWeight: MyFontWeight.semi_bold,
), ),
), ),
], ],
), ),
), ),
if(widget.tableId > 0 ? !(widget.minOrderInfo?.isRaise ?? false) : !(widget.settleOrderInfo?.isRaise ?? false)) if(widget.tableId > 0 ? !(widget?.minOrderInfo?.isRaise ?? false) : !(widget?.settleOrderInfo?.isRaise ?? false))
SizedBox( SizedBox(
height: 10, height: 10,
), ),
if(widget.tableId > 0 ? !(widget.minOrderInfo?.isRaise ?? false) : !(widget.settleOrderInfo?.isRaise ?? false)) if(widget.tableId > 0 ? !(widget?.minOrderInfo?.isRaise ?? false) : !(widget?.settleOrderInfo?.isRaise ?? false))
GestureDetector( GestureDetector(
behavior: HitTestBehavior.opaque, behavior: HitTestBehavior.opaque,
onTap: () { onTap: () {
double balanceMoney = double.parse(balance);
if (balanceMoney == null) {
balanceMoney = 0;
}
double orderSum = double.parse(widget.settleOrderInfo?.orderSum ?? '0');
if (orderSum == null) {
orderSum = 0;
}
if (orderSum > balanceMoney) {
return;
}
setState(() { setState(() {
checkIndex = 2; checkIndex = 2;
}); });
@ -150,7 +169,7 @@ class _PayMethod extends State<PayMethod> {
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
children: [ children: [
checkView(2), checkView(2, isHide: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(balance) ?? 0)),
Expanded( Expanded(
child: Container(), child: Container(),
flex: 1, flex: 1,
@ -160,7 +179,7 @@ class _PayMethod extends State<PayMethod> {
style: TextStyle( style: TextStyle(
fontSize: 14.sp, fontSize: 14.sp,
fontFamily: 'JDZhengHT', fontFamily: 'JDZhengHT',
color: Color(0xff353535), color: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(balance) ?? 0) ? Color(0x66353535) : Color(0xff353535),
fontWeight: MyFontWeight.medium, fontWeight: MyFontWeight.medium,
), ),
), ),
@ -171,50 +190,63 @@ class _PayMethod extends State<PayMethod> {
S.of(context).mendianyue, S.of(context).mendianyue,
style: TextStyle( style: TextStyle(
fontSize: 14.sp, fontSize: 14.sp,
color: Color(0xff353535), color: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(balance) ?? 0) ? Color(0x66353535) : Color(0xff353535),
fontWeight: MyFontWeight.semi_bold, fontWeight: MyFontWeight.semi_bold,
), ),
), ),
], ],
), ),
), ),
if(widget.tableId > 0 ? !(widget.minOrderInfo?.isRaise ?? false) : !(widget.settleOrderInfo?.isRaise ?? false)) if(widget.tableId > 0 ? !(widget?.minOrderInfo?.isRaise ?? false) : !(widget?.settleOrderInfo?.isRaise ?? false))
SizedBox( SizedBox(
height: 10, height: 10,
), ),
if(mGreenMoney!="0.00" && (widget.tableId > 0 ? !(widget.minOrderInfo?.isRaise ?? false) : !(widget.settleOrderInfo?.isRaise ?? false))) if(mGreenMoney!="0.00" && (widget.tableId > 0 ? !(widget?.minOrderInfo?.isRaise ?? false) : !(widget?.settleOrderInfo?.isRaise ?? false)))
GestureDetector( GestureDetector(
behavior: HitTestBehavior.opaque, behavior: HitTestBehavior.opaque,
onTap: () { onTap: () {
setState(() { double greenMoney = double.parse(mGreenMoney);
checkIndex = 3; if (greenMoney == null) {
if(widget.promotions != "" || widget.coupons != "" || widget.useVipPriceSelect || widget.useBenefitSelect){ greenMoney = 0;
SmartDialog.show( }
widget: SettlementTips( double orderSum = double.parse(widget.settleOrderInfo?.orderSum ?? '0');
() { if (orderSum == null) {
}, orderSum = 0;
text: "绿币支付不参与任何活动优惠,请重新选择支付方式", }
)); if (orderSum > greenMoney) {
return; return;
} }
setState(() {
checkIndex = 3;
// if(widget.promotions != "" || widget.coupons != "" || widget.useVipPriceSelect || widget.useBenefitSelect){
// print("discount-promotions: ${widget.promotions}");
// print("discount-coupons: ${widget.coupons}");
// print("discount-useVipPriceSelect: ${widget.useVipPriceSelect}");
// print("discount-useBenefitSelect: ${widget.useBenefitSelect}");
// SmartDialog.show(
// widget: SettlementTips(
// () {
// },
// text: "绿币支付不参与任何活动优惠,请重新选择支付方式",
// ));
// return;
// }
}); });
print("discount-payChannelCheck: 5");
widget.payChannelCheck(5); widget.payChannelCheck(5);
}, },
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
children: [ children: [
checkView(3), checkView(3, isHide: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(mGreenMoney) ?? 0)),
Expanded( Spacer(flex: 1,),
child: Container(),
flex: 1,
),
Text( Text(
"¥$mGreenMoney", "¥$mGreenMoney",
style: TextStyle( style: TextStyle(
fontSize: 14.sp, fontSize: 14.sp,
fontFamily: 'JDZhengHT', fontFamily: 'JDZhengHT',
color: Color(0xff353535), color: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(mGreenMoney) ?? 0) ? Color(0x66353535) : Color(0xff353535),
fontWeight: MyFontWeight.medium, fontWeight: MyFontWeight.medium,
), ),
), ),
@ -225,32 +257,43 @@ class _PayMethod extends State<PayMethod> {
S.of(context).lvbizhifu, S.of(context).lvbizhifu,
style: TextStyle( style: TextStyle(
fontSize: 14.sp, fontSize: 14.sp,
color: Color(0xff353535), color: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(mGreenMoney) ?? 0) ? Color(0x66353535) : Color(0xff353535),
fontWeight: MyFontWeight.semi_bold, fontWeight: MyFontWeight.semi_bold,
), ),
), ),
], ],
), ),
), ),
if(mGreenMoney!="0.00" && (widget.tableId > 0 ? !(widget.minOrderInfo?.isRaise ?? false) : !(widget.settleOrderInfo?.isRaise ?? false))) if(mGreenMoney != "0.00" && (widget.tableId > 0 ? !(widget?.minOrderInfo?.isRaise ?? false) : !(widget?.settleOrderInfo?.isRaise ?? false)))
SizedBox( SizedBox(
height: 10, height: 10,
), ),
if(mRaiseMoney!="0" && (widget.tableId > 0? (widget.minOrderInfo?.isRaise ?? false) : (widget.settleOrderInfo?.isRaise ?? false))) if(mRaiseMoney != "0" && (widget.tableId > 0 ? (widget?.minOrderInfo?.isRaise ?? false) : (widget?.settleOrderInfo?.isRaise ?? false)))
GestureDetector( GestureDetector(
behavior: HitTestBehavior.opaque, behavior: HitTestBehavior.opaque,
onTap: () { onTap: () {
setState(() { double raiseMoney = double.parse(mRaiseMoney);
checkIndex = 4; if (raiseMoney == null) {
if(widget.promotions != "" || widget.coupons != "" || widget.useVipPriceSelect || widget.useBenefitSelect){ raiseMoney = 0;
SmartDialog.show( }
widget: SettlementTips( double orderSum = double.parse(widget.settleOrderInfo?.orderSum ?? '0');
() { if (orderSum == null) {
}, orderSum = 0;
text: "助农积分不参与任何活动优惠,请重新选择支付方式", }
)); if (orderSum > raiseMoney) {
return; return;
} }
setState(() {
checkIndex = 4;
// if(widget.promotions != "" || widget.coupons != "" || widget.useVipPriceSelect || widget.useBenefitSelect){
// SmartDialog.show(
// widget: SettlementTips(
// () {},
// text: "助农积分不参与任何活动优惠,请重新选择支付方式",
// ),
// );
// return;
// }
}); });
widget.payChannelCheck(7); widget.payChannelCheck(7);
}, },
@ -258,9 +301,8 @@ class _PayMethod extends State<PayMethod> {
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
children: [ children: [
checkView(4), checkView(4, isHide: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(mRaiseMoney) ?? 0)),
Expanded( Spacer(
child: Container(),
flex: 1, flex: 1,
), ),
Text( Text(
@ -268,7 +310,7 @@ class _PayMethod extends State<PayMethod> {
style: TextStyle( style: TextStyle(
fontSize: 14.sp, fontSize: 14.sp,
fontFamily: 'JDZhengHT', fontFamily: 'JDZhengHT',
color: Color(0xff353535), color: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(mRaiseMoney) ?? 0) ? Color(0x66353535) : Color(0xff353535),
fontWeight: MyFontWeight.medium, fontWeight: MyFontWeight.medium,
), ),
), ),
@ -279,16 +321,16 @@ class _PayMethod extends State<PayMethod> {
S.of(context).zhunongjifen, S.of(context).zhunongjifen,
style: TextStyle( style: TextStyle(
fontSize: 14.sp, fontSize: 14.sp,
color: Color(0xff353535), color: (double.parse(widget.settleOrderInfo?.orderSum ?? '0') ?? 0) > (double.parse(mRaiseMoney) ?? 0) ? Color(0x66353535) : Color(0xff353535),
fontWeight: MyFontWeight.semi_bold, fontWeight: MyFontWeight.semi_bold,
), ),
), ),
], ],
), ),
), ),
if(mRaiseMoney !="0" && (widget.tableId > 0 ? !(widget.minOrderInfo?.isRaise ?? false) : !(widget.settleOrderInfo?.isRaise ?? false))) if(mRaiseMoney !="0" && (widget.tableId > 0 ? !(widget?.minOrderInfo?.isRaise ?? false) : !(widget?.settleOrderInfo?.isRaise ?? false)))
if(widget.tableId > 0 ? !(widget.minOrderInfo?.isRaise ?? false) : !(widget.settleOrderInfo?.isRaise ?? false)) if(widget.tableId > 0 ? !(widget?.minOrderInfo?.isRaise ?? false) : !(widget?.settleOrderInfo?.isRaise ?? false))
GestureDetector( GestureDetector(
behavior: HitTestBehavior.opaque, behavior: HitTestBehavior.opaque,
onTap: () { onTap: () {
@ -325,7 +367,20 @@ class _PayMethod extends State<PayMethod> {
var checkIndex = 5; var checkIndex = 5;
Widget checkView(var index) { Widget checkView(var index, {bool isHide = false}) {
if (isHide) {
return Container(
padding: EdgeInsets.only(right:36.w),
alignment: Alignment.center,
child: Image.asset(
"assets/image/disenable_seletor.png",
width: 15.w,
height: 15.h,
),
);
}
return Container( return Container(
padding: EdgeInsets.only(right:36.w), padding: EdgeInsets.only(right:36.w),
alignment: Alignment.center, alignment: Alignment.center,

Loading…
Cancel
Save