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

Loading…
Cancel
Save