From aedd9886eb9d95529395b5a6fc8117074d5a360a Mon Sep 17 00:00:00 2001 From: laiiihz Date: Tue, 16 Mar 2021 10:19:19 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8B=E5=8D=95=E9=A1=B5=E9=9D=A2=E4=BF=9D?= =?UTF-8?q?=E7=A8=8E=E4=BB=93=E7=B1=BB=E5=9E=8B2=EF=BC=8C3=20=20=E4=B8=8D?= =?UTF-8?q?=E8=83=BD=E4=BD=BF=E7=94=A8=E7=91=9E=E5=B8=81=E6=8A=B5=E6=89=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../home/classify/order_preview_page.dart | 52 ++++++++++++++----- 1 file changed, 40 insertions(+), 12 deletions(-) diff --git a/lib/pages/home/classify/order_preview_page.dart b/lib/pages/home/classify/order_preview_page.dart index 202c035..2e5c457 100644 --- a/lib/pages/home/classify/order_preview_page.dart +++ b/lib/pages/home/classify/order_preview_page.dart @@ -29,6 +29,7 @@ import 'package:recook/widgets/bottom_sheet/bottom_list.dart'; import 'package:recook/widgets/custom_app_bar.dart'; import 'package:recook/widgets/custom_image_button.dart'; import 'package:recook/widgets/input_view.dart'; +import 'package:recook/widgets/toast.dart'; class GoodsOrderPage extends StatefulWidget { final Map arguments; @@ -65,7 +66,7 @@ class _GoodsOrderPageState extends BaseStoreState { _controller = ScrollController(); _controller.addListener(() {}); _editController = - TextEditingController(text: _orderModel.data?.buyerMessage??''); + TextEditingController(text: _orderModel.data?.buyerMessage ?? ''); _focusNode.addListener(() { if (!_focusNode.hasFocus) { String text = _editController.text; @@ -540,6 +541,17 @@ class _GoodsOrderPageState extends BaseStoreState { ); } + ///下单页面 包税仓类型2,3 不能使用瑞币抵扣 + /// + ///找到包含 2,3类型的仓库返回true + bool get _checkSwitchEnabled { + return _orderModel.data.brands.every((element) { + return element.goods.every((element) { + return element.storehouse == 2 || element.storehouse == 3; + }); + }); + } + _coinTile() { // String text = _orderModel.data.coinTotalAmount > 0 // ? "可用 ${(_orderModel.data.coinTotalAmount * 100).toInt()} 瑞币抵扣 ${_orderModel.data.coinTotalAmount} 元" @@ -559,15 +571,27 @@ class _GoodsOrderPageState extends BaseStoreState { Container( height: 5, ), - _titleRow("瑞币抵扣", "", - "本单抵扣: ¥${_orderModel.data.coinTotalAmount.toStringAsFixed(2)}", - rightTitleColor: Colors.black, - switchValue: _orderModel.data.coinStatus.isUseCoin, - switchEnable: _orderModel.data.coinStatus.isEnable, - switchChange: (change) { - // 切换瑞币抵扣状态 - _changeOrderCoinOnOff(); - }), + Builder( + builder: (context) { + bool switchEnabled = true; + switchEnabled = _orderModel.data.coinStatus.isEnable; + if (_checkSwitchEnabled) { + switchEnabled = false; + } + return _titleRow( + "瑞币抵扣", + "", + "本单抵扣: ¥${_orderModel.data.coinTotalAmount.toStringAsFixed(2)}", + rightTitleColor: Colors.black, + switchValue: _orderModel.data.coinStatus.isUseCoin, + switchEnable: switchEnabled, + switchChange: (change) { + // 切换瑞币抵扣状态 + _changeOrderCoinOnOff(); + }, + ); + }, + ), Container( height: 10, ), @@ -613,8 +637,9 @@ class _GoodsOrderPageState extends BaseStoreState { "", "-¥${(_orderModel.data.universeCouponTotalAmount + _orderModel.data.brandCouponTotalAmount).toStringAsFixed(2)}", ), - _titleRow("瑞币抵扣", "", - "-¥${_orderModel.data.coinTotalAmount.toStringAsFixed(2)}"), + if (!_checkSwitchEnabled) + _titleRow("瑞币抵扣", "", + "-¥${_orderModel.data.coinTotalAmount.toStringAsFixed(2)}"), Container( height: 10, ), @@ -1002,6 +1027,9 @@ class _GoodsOrderPageState extends BaseStoreState { return; } _orderModel = model.data; + if (_checkSwitchEnabled) { + Toast.showError('订单含保税仓或海外仓商品,无法使用瑞币抵扣'); + } setState(() {}); }