jufubao-mall 2.0.33 → 2.0.35-beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/components/CusCouponChose/CusCouponChose.vue +10 -13
- package/src/components/CusEnter/CusEnter.vue +9 -1
- package/src/components/CusListItem/CusListItem.vue +141 -0
- package/src/components/CusPoster/CusPoster.vue +17 -62
- package/src/components/CusPrice/CusPrice.vue +391 -0
- package/src/components/CusProduct/CusProduct.vue +576 -184
- package/src/components/CusShops/CusShops.vue +409 -209
- package/src/components/CusTab/CusTab.vue +159 -22
- package/src/components/CusVipList/CusVipList.vue +169 -0
- package/src/components/JfbMallConfirm/Api.js +1 -1
- package/src/components/JfbMallConfirm/Attr.js +167 -453
- package/src/components/JfbMallConfirm/JfbMallConfirm.vue +362 -162
- package/src/components/JfbMallConfirm/Mock.js +61 -43
- package/src/components/JfbMallConfirm/XdAddrDefault.vue +26 -13
- package/src/components/JfbMallConfirm/XdAddrOld.vue +9 -7
- package/src/components/JfbMallConfirm/XdListItem.vue +10 -2
- package/src/components/JfbMallConfirm/cusAttr/advanced.js +91 -0
- package/src/components/JfbMallConfirm/cusAttr/content.js +355 -0
- package/src/components/JfbMallConfirm/cusAttr/style.js +628 -0
- package/src/components/JfbMallConfirm/shopList.vue +84 -42
- package/src/components/JfbMallNetworkMedia/Api.js +94 -0
- package/src/components/JfbMallNetworkMedia/Attr.js +20 -0
- package/src/components/JfbMallNetworkMedia/JfbMallNetworkMedia.vue +1167 -0
- package/src/components/JfbMallNetworkMedia/JfbMallNetworkMediaLess.less +80 -0
- package/src/components/JfbMallNetworkMedia/JfbMallNetworkMediaMixin.js +30 -0
- package/src/components/JfbMallNetworkMedia/Mock.js +372 -0
- package/src/components/JfbMallNetworkMedia/cusAttr/advanced.js +60 -0
- package/src/components/JfbMallNetworkMedia/cusAttr/content.js +230 -0
- package/src/components/JfbMallNetworkMedia/cusAttr/font.js +123 -0
- package/src/components/JfbMallNetworkMedia/cusAttr/icon.js +257 -0
- package/src/components/JfbMallNetworkMedia/cusAttr/style.js +12 -0
- package/src/components/JfbMallProductInfo/cusAttr/content.js +2 -0
- package/src/components/JfbMallProductList/JfbMallProductList.vue +7 -1
- package/src/components/JfbMallProductList/XdCateV1.vue +0 -1
- package/src/components/SkeProduct/SkeProduct.vue +88 -3
|
@@ -15,16 +15,10 @@
|
|
|
15
15
|
</view>
|
|
16
16
|
</view>
|
|
17
17
|
<!-- #endif -->
|
|
18
|
-
<view class="jfb-mall-confirm__body" :style="
|
|
19
|
-
minHeight: layoutInfo.bodyMinHeight,
|
|
20
|
-
'--main-color': mainColor,
|
|
21
|
-
'--section-height': sectionHeight + 'px',
|
|
22
|
-
'--order-line-height': (orderInfoHeight * $rpxNum) + 'px',
|
|
23
|
-
'--money-box-height': moneyBoxHeight + 'px'
|
|
24
|
-
}">
|
|
18
|
+
<view class="jfb-mall-confirm__body" :style="[bodyStyleComp]">
|
|
25
19
|
<template>
|
|
26
|
-
<view class="section">
|
|
27
|
-
<view v-if="showTopLine === '
|
|
20
|
+
<view class="section" :style="[addrStyleComp]">
|
|
21
|
+
<view v-if="showTopLine === 'T'" class="decorate" style="top:0;"></view>
|
|
28
22
|
<view v-if="show_pick_up_address==='Y'" @click="toAddress('Y')">
|
|
29
23
|
<xd-addr-old v-if="address_layout==='old'" :curAddr="curCacheAddr"></xd-addr-old>
|
|
30
24
|
<xd-addr-default v-else :curAddr="curCacheAddr"></xd-addr-default>
|
|
@@ -33,14 +27,15 @@
|
|
|
33
27
|
<xd-addr-old v-if="address_layout==='old'" :curAddr="curAddr"></xd-addr-old>
|
|
34
28
|
<xd-addr-default v-else :curAddr="curCacheAddr"></xd-addr-default>
|
|
35
29
|
</view>
|
|
30
|
+
<view v-if="showTopLine === 'B'" class="decorate" style="bottom: 0;"></view>
|
|
36
31
|
</view>
|
|
37
|
-
<view v-if="showBuyer == 'Y'" class="buyer_info section">
|
|
38
|
-
<view
|
|
39
|
-
<input v-model="buyer_phone_number" class="uni-input" :focus="true" placeholder="
|
|
32
|
+
<view v-if="showBuyer == 'Y'" class="buyer_info section" :style=[blockSectionStyleComp]>
|
|
33
|
+
<view>订购信息</view>
|
|
34
|
+
<input v-model="buyer_phone_number" class="uni-input" :focus="true" placeholder="请填写订购人手机号" />
|
|
40
35
|
</view>
|
|
41
36
|
<!-- 商品信息 -->
|
|
42
37
|
<view class="prod_info_wrap">
|
|
43
|
-
<view v-for="(shop, shopIndex) in shopList" :key="shopIndex" class="shop_item section">
|
|
38
|
+
<view v-for="(shop, shopIndex) in shopList" :key="shopIndex" class="shop_item section" :style=[blockSectionStyleComp]>
|
|
44
39
|
<view class="shop_name">{{shop.repo_name || "未命名"}}</view>
|
|
45
40
|
<view class="prod_list">
|
|
46
41
|
<view v-for="(prod,i) in shop.product" :key="i">
|
|
@@ -54,7 +49,7 @@
|
|
|
54
49
|
prod_tit_one:prod.brand_name||prod.product_sku_name||(showActivityPrice==='Y'&&prod.is_activity==='Y')
|
|
55
50
|
}">{{prod.product_name}}</view>
|
|
56
51
|
<view class="prod_brand" :style="{color:brandTextColor}" v-if="prod.brand_name">{{prod.brand_name}}</view>
|
|
57
|
-
<view class="prod_specs" v-if="prod.product_sku_name"
|
|
52
|
+
<view class="prod_specs" v-if="prod.product_sku_name">规格:{{prod.product_sku_name}}</view>
|
|
58
53
|
<view class="prod_price">
|
|
59
54
|
<view style="display:flex;align-items:center">
|
|
60
55
|
<!-- <xd-unit :price="prod.sale_price" :isOld="false" color="#333" :iconSize="0.3" :fontSize="32"/> -->
|
|
@@ -78,50 +73,55 @@
|
|
|
78
73
|
</view>
|
|
79
74
|
</view>
|
|
80
75
|
</view>
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
76
|
+
<!-- 配送信息 -->
|
|
77
|
+
<view v-if="shop.support_delivery_method_options.length" class="delivery">
|
|
78
|
+
<xd-list-item v-if="shop.sub_show_delivery_method==='Y'" label="配送方式" showRight :paddingLR="isCardLayout ? '32rpx' : '48rpx'" paddingTB="24rpx" showBottom size="large" class="xd-my-list-item">
|
|
79
|
+
<picker @change="e => bindPickerChange(e, shopIndex)"
|
|
80
|
+
range-key="label" :range="shop.support_delivery_method_options"
|
|
81
|
+
:value="shop.support_delivery_method_options.findIndex(ll => ll.value == shop.deliveryPickValue)"
|
|
82
|
+
>
|
|
83
|
+
<view style="color: #333333;">{{shop.deliveryPickLabel || "选择配送方式"}}</view>
|
|
84
|
+
</picker>
|
|
85
|
+
</xd-list-item>
|
|
86
|
+
<template>
|
|
87
|
+
<xd-list-item v-if="shop.sub_show_delivery_price==='Y'" label="配送费用" showBottom :paddingLR="isCardLayout ? '32rpx' : '48rpx'" paddingTB="24rpx" class="xd-my-list-item">
|
|
88
|
+
<xd-unit :price="shop.user_logistics_amount_origin" :fontSize="28" :isOld="false"></xd-unit>
|
|
89
|
+
</xd-list-item>
|
|
90
|
+
<xd-list-item v-if="shop.deliveryPickValue === 'samecity'" class="xd-my-list-item"
|
|
91
|
+
:label="shop.time_label" showRight :paddingLR="isCardLayout ? '32rpx' : '48rpx'" paddingTB="24rpx" showBottom
|
|
92
|
+
@click="toSetSelectTime(shopIndex,shop)">
|
|
93
|
+
{{shop.selectTime ? shop.selectTime.dateTime : "请选择"}}
|
|
90
94
|
</xd-list-item>
|
|
91
|
-
<
|
|
92
|
-
|
|
93
|
-
|
|
95
|
+
<template v-if="shop.deliveryPickValue === 'takeout'" >
|
|
96
|
+
<!-- 配送方式:到店自提 -->
|
|
97
|
+
<xd-list-item label="选择门店" show-right :paddingLR="isCardLayout ? '32rpx' : '48rpx'" paddingTB="24rpx" showBottom @click="toSetSelectShop(shopIndex)" class="xd-my-list-item">
|
|
98
|
+
<view style="text-overflow: ellipsis;overflow: hidden;white-space: nowrap;width: 460rpx;text-align: right;">
|
|
99
|
+
{{shop.choseShop ? shop.choseShop.resource_shop_name : "请选择"}}
|
|
100
|
+
</view>
|
|
94
101
|
</xd-list-item>
|
|
95
|
-
<xd-list-item v-if="shop.
|
|
96
|
-
{{shop.
|
|
102
|
+
<xd-list-item v-if="shop.takeoutTimeList" :label="shop.time_label" show-right :paddingLR="isCardLayout ? '32rpx' : '48rpx'" paddingTB="24rpx" @click="toSetTakeoutTime(shopIndex,shop)" class="xd-my-list-item">
|
|
103
|
+
<view style="">{{shop.takeoutTime ? shop.takeoutTime.dateTime : '请选择'}}</view>
|
|
97
104
|
</xd-list-item>
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
</view>
|
|
109
|
-
</view>
|
|
110
|
-
</view>
|
|
111
|
-
<xd-list-item v-if="shop.delivery_message" :label="shop.delivery_message" paddingLR="60rpx" size="large"></xd-list-item>
|
|
112
|
-
<view v-if="shop.is_support_delivery == 'N'" :style="{background:bgColor,color:warningColor}" class="err_message">
|
|
113
|
-
{{shop.message}}
|
|
114
|
-
</view>
|
|
105
|
+
</template>
|
|
106
|
+
</template>
|
|
107
|
+
</view>
|
|
108
|
+
<!-- <xd-list-item v-if="shop.delivery_message" :label="shop.delivery_message" paddingLR="48rpx" size="large"></xd-list-item> -->
|
|
109
|
+
<view v-if="showLogisticsTip === 'Y' && shop.deliveryPickValue === 'logistics'" class="logistics_tip">
|
|
110
|
+
{{logisticsTipText}}
|
|
111
|
+
</view>
|
|
112
|
+
<view v-if="shop.is_support_delivery == 'N'" :style="{background:bgColor,color:warningColor}" class="err_message">
|
|
113
|
+
{{shop.message}}
|
|
114
|
+
</view>
|
|
115
115
|
</view>
|
|
116
116
|
</view>
|
|
117
117
|
|
|
118
118
|
<!-- 订单备注信息 -->
|
|
119
|
-
<view v-if="showOrderComment == 'Y'" class="order_comment section">
|
|
119
|
+
<view v-if="showOrderComment == 'Y'" class="order_comment section" :style=[blockSectionStyleComp]>
|
|
120
120
|
<view class="title">备注信息</view>
|
|
121
|
-
<
|
|
121
|
+
<input v-model="comment" class="order_market" :maxlength="50" placeholder="建议留言前先与平台沟通确认,最多只支持50字"/>
|
|
122
122
|
</view>
|
|
123
123
|
<!-- 展示vip -->
|
|
124
|
-
<view v-if="is_show_vip_card_list === 'Y'" class="section">
|
|
124
|
+
<view v-if="is_show_vip_card_list === 'Y'" class="section" style="overflow: hidden;" :style=[blockSectionStyleComp]>
|
|
125
125
|
<cus-vip-list :list="vipCardList"
|
|
126
126
|
:vip_card_id="vip_card_id"
|
|
127
127
|
:plus_saving_money="orderFee.plus_saving_money"
|
|
@@ -130,67 +130,68 @@
|
|
|
130
130
|
|
|
131
131
|
<!-- 订单费用详情 -->
|
|
132
132
|
<!-- 礼包不显示订单信息 -->
|
|
133
|
-
<view class="order_fee">
|
|
133
|
+
<view class="order_fee" :style=[blockSectionStyleComp]>
|
|
134
134
|
<view v-if="showPrice === 'Y'" class="money_box">
|
|
135
|
-
<xd-list-item label="商品价格" paddingLR="
|
|
136
|
-
<xd-unit :price="gift_id ? orderFee.product_amount : orderFee.origin_amount" :isOld="false" :fontSize="
|
|
135
|
+
<xd-list-item v-if="showProductPrice" label="商品价格" :paddingLR="isCardLayout ? '32rpx' : '48rpx'" :showBottom="showLogisticsAmount&&main_show_delivery_price==='Y'">
|
|
136
|
+
<xd-unit :price="gift_id ? orderFee.product_amount : orderFee.origin_amount" :isOld="false" :fontSize="28" :iconSize="0.3"></xd-unit>
|
|
137
137
|
</xd-list-item>
|
|
138
|
-
<xd-list-item v-if="showLogisticsAmount&&main_show_delivery_price==='Y'" label="商品运费" paddingLR="
|
|
139
|
-
<xd-unit :price="orderFee.user_logistics_amount_origin" :isOld="false" :fontSize="
|
|
138
|
+
<xd-list-item v-if="showLogisticsAmount&&main_show_delivery_price==='Y'" label="商品运费" :paddingLR="isCardLayout ? '32rpx' : '48rpx'">
|
|
139
|
+
<xd-unit :price="orderFee.user_logistics_amount_origin" :isOld="false" :fontSize="28" :iconSize="0.3"></xd-unit>
|
|
140
140
|
</xd-list-item>
|
|
141
141
|
</view>
|
|
142
142
|
<view v-if="showPrice === 'Y' || otherPayMethod.filter(it => it.method!=='third').length" class="money_box">
|
|
143
143
|
<template v-if="showPrice === 'Y'">
|
|
144
|
-
<xd-list-item v-if="isShowPlusSavingMoney" label="PLUS专享立减" showBottom paddingLR="
|
|
145
|
-
<view slot="label" style="color: #
|
|
146
|
-
<xd-unit :largeZero="false" :price="-orderFee.plus_saving_money" :isOld="false" :fontSize="
|
|
144
|
+
<xd-list-item v-if="isShowPlusSavingMoney" label="PLUS专享立减" showBottom :paddingLR="isCardLayout ? '32rpx' : '48rpx'">
|
|
145
|
+
<view slot="label" style="color: #7F5629;">PLUS专享立减</view>
|
|
146
|
+
<xd-unit :largeZero="false" :price="-orderFee.plus_saving_money" :isOld="false" :fontSize="28" :iconSize="0.3"></xd-unit>
|
|
147
147
|
</xd-list-item>
|
|
148
|
-
<xd-list-item v-if="showLogisticsDiscount&&main_show_delivery_price==='Y'" label="运费减免" :showBottom="!!showPayMethods.length" paddingLR="
|
|
149
|
-
<xd-unit :largeZero="false" :price="-orderFee.user_logistics_discount_amount" :isOld="false" :fontSize="
|
|
148
|
+
<xd-list-item v-if="showLogisticsDiscount&&main_show_delivery_price==='Y'" label="运费减免" :showBottom="!!showPayMethods.length" :paddingLR="isCardLayout ? '32rpx' : '48rpx'">
|
|
149
|
+
<xd-unit :largeZero="false" :price="-orderFee.user_logistics_discount_amount" :isOld="false" :fontSize="28" :iconSize="0.3"></xd-unit>
|
|
150
150
|
</xd-list-item>
|
|
151
151
|
</template>
|
|
152
|
-
|
|
153
|
-
<view>45.00</view>
|
|
154
|
-
</xd-list-item> -->
|
|
152
|
+
|
|
155
153
|
<template v-for="item in otherPayMethod">
|
|
156
|
-
<xd-list-item v-if="item.method === 'card'" :key="item.method" :label="item.show_name" paddingLR="
|
|
154
|
+
<xd-list-item v-if="item.method === 'card'" :key="item.method" :label="item.show_name" :paddingLR="isCardLayout ? '32rpx' : '48rpx'" showBottom :showRight="!(choseCoupon && choseCoupon.cardPayPrice)" @click="toChoseCard">
|
|
157
155
|
<view slot="label">{{item.show_name}} <text v-if="choseCard && choseCard.cardPayPrice" style="color:red;margin-left: 4px;">(已选{{ choseCard.selectedCardList.length }}张)</text></view>
|
|
158
156
|
<view v-if="(choseCoupon && choseCoupon.cardPayPrice)">
|
|
159
|
-
<view style="color:#CCCCCC;font-size:
|
|
157
|
+
<view style="color:#CCCCCC;font-size: 24rpx">已使用其他票券,不可用</view>
|
|
160
158
|
</view>
|
|
161
159
|
<view v-else>
|
|
162
160
|
<!-- <view v-if="choseCard && choseCard.cardPayPrice" slot="label">{{item.show_name}} <text style="color:red;margin-left: 4px;">(已选{{ choseCard.selectedCardList.length }}张)</text></view> -->
|
|
163
|
-
<xd-unit v-if="choseCard && choseCard.cardPayPrice" :price="choseCard.cardPayPrice" :isOld="false" :fontSize="
|
|
164
|
-
<view v-else
|
|
161
|
+
<xd-unit v-if="choseCard && choseCard.cardPayPrice" :price="choseCard.cardPayPrice" :isOld="false" :fontSize="28" :iconSize="0.3"></xd-unit>
|
|
162
|
+
<view v-else>{{cardList.length}}张可用</view>
|
|
165
163
|
</view>
|
|
166
164
|
</xd-list-item>
|
|
167
|
-
<xd-list-item v-if="item.method === 'wallet'" :key="item.method" :label="item.show_name" paddingLR="
|
|
165
|
+
<xd-list-item v-if="item.method === 'wallet'" :key="item.method" :label="item.show_name" :paddingLR="isCardLayout ? '32rpx' : '48rpx'" showBottom :showRight="!(choseCoupon && choseCoupon.cardPayPrice)" @click="toChoseWallet">
|
|
166
|
+
<view slot="label">
|
|
167
|
+
{{ item.show_name }}<text :style="{color:mainColor}" style="margin-left: 8px;font-size: 24rpx;">(剩余{{ wallet_total_amount }})</text>
|
|
168
|
+
</view>
|
|
168
169
|
<view v-if="(choseCoupon && choseCoupon.cardPayPrice)">
|
|
169
|
-
<view style="color:#CCCCCC;font-size:
|
|
170
|
+
<view style="color:#CCCCCC;font-size: 24rpx">已使用其他票券,不可用</view>
|
|
170
171
|
</view>
|
|
171
172
|
<view v-else>
|
|
172
|
-
<xd-unit v-if="choseWallet && choseWallet.walletPayPrice" :price='choseWallet.walletPayPrice' :isOld="false" :fontSize="
|
|
173
|
+
<xd-unit v-if="choseWallet && choseWallet.walletPayPrice" :price='choseWallet.walletPayPrice' :isOld="false" :fontSize="28" :iconSize="0.3"></xd-unit>
|
|
173
174
|
<view v-else>请选择</view>
|
|
174
175
|
</view>
|
|
175
176
|
</xd-list-item>
|
|
176
|
-
<xd-list-item v-if="item.method === 'coupon'" :key="item.method" :label="item.show_name" paddingLR="
|
|
177
|
+
<xd-list-item v-if="item.method === 'coupon'" :key="item.method" :label="item.show_name" :paddingLR="isCardLayout ? '32rpx' : '48rpx'" showBottom :showRight="!(choseCard && choseCard.cardPayPrice)" @click="toChoseCoupon">
|
|
177
178
|
<view v-if="(choseCoupon && choseCoupon.cardPayPrice)" slot="label">
|
|
178
179
|
{{item.show_name}} <text style="color:red;margin-left: 4px;">(已选{{ choseCoupon.selectedCardList.length }}张)</text>
|
|
179
180
|
</view>
|
|
180
181
|
<view v-else>
|
|
181
|
-
<view style="color:#CCCCCC;font-size:
|
|
182
|
-
<view v-else
|
|
182
|
+
<view style="color:#CCCCCC;font-size: 24rpx" v-if="(choseWallet && choseWallet.walletPayPrice)||(choseCard && choseCard.cardPayPrice)">已使用其他票券,不可用</view>
|
|
183
|
+
<view v-else>{{couponList.length}}张可用</view>
|
|
183
184
|
</view>
|
|
184
185
|
</xd-list-item>
|
|
185
186
|
</template>
|
|
186
187
|
</view>
|
|
187
188
|
<view v-if="!is_plus_site && orderFee.total_amount && showPrice === 'Y'" class="money_box">
|
|
188
|
-
<xd-list-item label="
|
|
189
|
-
<xd-unit :price="orderFee.total_amount" :isOld="false" :fontSize="
|
|
189
|
+
<xd-list-item label="订单金额" :paddingLR="isCardLayout ? '32rpx' : '48rpx'">
|
|
190
|
+
<xd-unit :price="orderFee.total_amount" :isOld="false" :fontSize="28" :iconSize="0.3"></xd-unit>
|
|
190
191
|
</xd-list-item>
|
|
191
192
|
</view>
|
|
192
193
|
</view>
|
|
193
|
-
<view :style=
|
|
194
|
+
<view :style=[fixedBottomPlaceholder]></view>
|
|
194
195
|
<!-- 靠低支付, 增加淘福客布局 -->
|
|
195
196
|
<view class="fixe_bottom" :style="prod_bottom">
|
|
196
197
|
<view class="fixed_bottom_body" :style="[bottomBoxStyle]">
|
|
@@ -204,12 +205,16 @@
|
|
|
204
205
|
</view>
|
|
205
206
|
<view v-else class="flex_l" :style="{
|
|
206
207
|
justifyContent: bottomPricePosition
|
|
207
|
-
}"
|
|
208
|
+
}">
|
|
209
|
+
<view>
|
|
210
|
+
<view class="t_price">实付:<xd-unit :price="orderNeedPayPrice" :isOld="false"></xd-unit></view>
|
|
211
|
+
<view v-if="orderDiscountPrice > 0" class="b_price">共省<xd-unit :price="orderDiscountPrice" :isOld="false" :fontSize="24" :iconSize="0.3"></xd-unit></view>
|
|
212
|
+
</view>
|
|
208
213
|
</view>
|
|
209
214
|
<view>
|
|
210
215
|
<xd-button :disabled="is_can_buy!=='Y'"
|
|
211
216
|
:radius="bottomBtnRadius + 'rpx'"
|
|
212
|
-
:
|
|
217
|
+
:cusStyle="{
|
|
213
218
|
height: bottomBtnHeight + 'rpx',
|
|
214
219
|
lineHeight: bottomBtnHeight + 'rpx',
|
|
215
220
|
}"
|
|
@@ -252,12 +257,14 @@
|
|
|
252
257
|
:addSettleCard="addSettleCard"
|
|
253
258
|
@onChose="handleCardChose"
|
|
254
259
|
@onAlert="handleCardChoseAlert"
|
|
260
|
+
@onInit="handleCardInit"
|
|
255
261
|
>
|
|
256
262
|
</xd-card-pay-chose>
|
|
257
263
|
</template>
|
|
258
264
|
<xd-wallet-chose
|
|
259
265
|
v-if="payWallet"
|
|
260
266
|
ref="xdWalletChose"
|
|
267
|
+
:defaultUseFirst="defaultUseWalletFirst"
|
|
261
268
|
:hadChoseWallet="choseWallet && choseWallet.selectedWalletList"
|
|
262
269
|
:layoutInfo="layoutInfo"
|
|
263
270
|
:show.sync="showWalletChose"
|
|
@@ -265,15 +272,9 @@
|
|
|
265
272
|
:useBindedWallet="useBindedWallet"
|
|
266
273
|
@onChose="handleWalletChose"
|
|
267
274
|
@onAlert="() => hasAlertCardChose = true"
|
|
275
|
+
@onInit="handleWalletInit"
|
|
268
276
|
></xd-wallet-chose>
|
|
269
277
|
<cus-coupon-chose
|
|
270
|
-
:couponRadius="couponRadius"
|
|
271
|
-
:couponImageUrl="couponImageUrl"
|
|
272
|
-
:couponTitleBgColor="couponTitleBgColor"
|
|
273
|
-
:couponUseBtnPadding="couponUseBtnPadding"
|
|
274
|
-
:couponBtnRadius="couponBtnRadius"
|
|
275
|
-
:couponBtnTextStyle="couponBtnTextStyle"
|
|
276
|
-
:couponLeftBgColor="couponLeftBgColor"
|
|
277
278
|
v-if="payCoupon"
|
|
278
279
|
ref="xdCouponChose"
|
|
279
280
|
:hadChoseCoupon="choseCoupon && choseCoupon.selectedCardList"
|
|
@@ -289,6 +290,8 @@
|
|
|
289
290
|
:orderNeedPayPrice="orderNeedPayPrice"
|
|
290
291
|
:getSettleListCoupons="getSettleListCoupons"
|
|
291
292
|
:setSettleSelectCoupon="setSettleSelectCoupon"
|
|
293
|
+
:layoutStyle="coupon_layout"
|
|
294
|
+
@onInit="handleCouponInit"
|
|
292
295
|
></cus-coupon-chose>
|
|
293
296
|
<xd-select-time
|
|
294
297
|
v-if="showSelectTime"
|
|
@@ -314,7 +317,7 @@
|
|
|
314
317
|
></xd-select-time>
|
|
315
318
|
<xd-down-drawer
|
|
316
319
|
:show.sync="showShopList"
|
|
317
|
-
height="
|
|
320
|
+
height="45vh"
|
|
318
321
|
>
|
|
319
322
|
<template v-if="showShopList">
|
|
320
323
|
<view :style="{height: '100rpx'}"></view>
|
|
@@ -363,7 +366,7 @@
|
|
|
363
366
|
import JfbMallConfirmMixin from "./JfbMallConfirmMixin";
|
|
364
367
|
import componentsMixins from "@/mixins/componentsMixins";
|
|
365
368
|
import extsMixins from "@/mixins/extsMixins"
|
|
366
|
-
import { getContainerPropsValue } from "@/utils/xd.base";
|
|
369
|
+
import { getContainerPropsValue, gCPVal } from "@/utils/xd.base";
|
|
367
370
|
import getServiceUrl from "@/common/getServiceUrl"
|
|
368
371
|
import OrderMixin from "./orderMixin"
|
|
369
372
|
import { mapState } from "vuex"
|
|
@@ -372,6 +375,9 @@
|
|
|
372
375
|
import CusPrice from '@/components/CusPrice/CusPrice'
|
|
373
376
|
import CusVipList from "@/components/CusVipList/CusVipList"
|
|
374
377
|
export default {
|
|
378
|
+
// #ifdef MP-WEIXIN
|
|
379
|
+
options: { styleIsolation: 'shared' },
|
|
380
|
+
// #endif
|
|
375
381
|
name: "JfbMallConfirm",
|
|
376
382
|
components: {
|
|
377
383
|
XdFontIcon,
|
|
@@ -395,6 +401,7 @@
|
|
|
395
401
|
data() {
|
|
396
402
|
return {
|
|
397
403
|
closeMask:true,
|
|
404
|
+
isPreview: false,
|
|
398
405
|
isVip: false,
|
|
399
406
|
keyword:'',
|
|
400
407
|
page_size: 10,
|
|
@@ -418,7 +425,7 @@
|
|
|
418
425
|
scene: "",
|
|
419
426
|
buyer_phone_number: "", //订购人手机号
|
|
420
427
|
comment: "", //订单备注
|
|
421
|
-
|
|
428
|
+
optionsBlessing: {},
|
|
422
429
|
|
|
423
430
|
gift_id: "",
|
|
424
431
|
gift_mode: "",
|
|
@@ -447,13 +454,18 @@
|
|
|
447
454
|
showCardPayChoseWay: "", //支付按钮: pay_btn; 选择票券:chose_card
|
|
448
455
|
choseCard: null,
|
|
449
456
|
hasAlertCardChose: false,
|
|
457
|
+
cardList: [],
|
|
450
458
|
|
|
451
459
|
showWalletChose: false,
|
|
452
460
|
choseWallet: null,
|
|
461
|
+
wallet_total_amount: "",
|
|
453
462
|
|
|
454
463
|
//优惠券
|
|
455
464
|
choseCoupon: null,
|
|
456
465
|
showCouponChose: false,
|
|
466
|
+
couponList: [],
|
|
467
|
+
|
|
468
|
+
fixedBottomBodyHeight: 0,
|
|
457
469
|
|
|
458
470
|
//面板
|
|
459
471
|
xnamespace: "",
|
|
@@ -474,9 +486,9 @@
|
|
|
474
486
|
blessFontSize: 24, //动态输入语提示字体大小
|
|
475
487
|
brandTextColor:'',
|
|
476
488
|
address_layout: 'old',
|
|
477
|
-
sectionHeight:
|
|
489
|
+
sectionHeight: 16,
|
|
478
490
|
orderInfoHeight: 16,
|
|
479
|
-
showTopLine: "
|
|
491
|
+
showTopLine: "B",
|
|
480
492
|
blessTextColor: "",
|
|
481
493
|
priceTextColor: "",
|
|
482
494
|
bottomPadding: {},
|
|
@@ -485,6 +497,18 @@
|
|
|
485
497
|
bottomPayText: "",
|
|
486
498
|
bottomPricePosition: "",
|
|
487
499
|
|
|
500
|
+
bodyPadding: {},
|
|
501
|
+
|
|
502
|
+
cont_style: "",
|
|
503
|
+
isCardLayout: false,
|
|
504
|
+
lrPadding: {},
|
|
505
|
+
radius: 0,
|
|
506
|
+
blockShadow: '',
|
|
507
|
+
|
|
508
|
+
addrLrPadding: {},
|
|
509
|
+
addrRadius: 0,
|
|
510
|
+
addrShadow: '',
|
|
511
|
+
|
|
488
512
|
//优惠券
|
|
489
513
|
couponBtnRadius: 16,
|
|
490
514
|
couponLeftBgColor: "",
|
|
@@ -493,6 +517,7 @@
|
|
|
493
517
|
couponUseBtnPadding: {},
|
|
494
518
|
couponImageUrl: "",
|
|
495
519
|
moneyBoxHeight: 16,
|
|
520
|
+
coupon_layout: '1',
|
|
496
521
|
|
|
497
522
|
show_pick_up_address: 'N', //显示取货地址
|
|
498
523
|
show_receive_address: 'Y', //显示收货地址
|
|
@@ -505,6 +530,11 @@
|
|
|
505
530
|
is_plus_site: false,
|
|
506
531
|
skipTip: "N",
|
|
507
532
|
skipToPay: "",
|
|
533
|
+
guidePay: "",
|
|
534
|
+
showLogisticsTip: "Y",
|
|
535
|
+
logisticsTipText: "",
|
|
536
|
+
checkPayMethod: [],
|
|
537
|
+
ticketPositionStatus: "N"
|
|
508
538
|
}
|
|
509
539
|
},
|
|
510
540
|
computed: {
|
|
@@ -514,6 +544,10 @@
|
|
|
514
544
|
brandInfo: state => state.brandInfo,
|
|
515
545
|
siteInfo: state => state.siteInfo,
|
|
516
546
|
}),
|
|
547
|
+
showProductPrice(){
|
|
548
|
+
let price = this.gift_id ? this.orderFee.product_amount : this.orderFee.origin_amount;
|
|
549
|
+
return price;
|
|
550
|
+
},
|
|
517
551
|
//是否展示plus立减
|
|
518
552
|
isShowPlusSavingMoney(){
|
|
519
553
|
if(this.is_show_vip_card_list === 'Y') return this.vip_card_id;
|
|
@@ -595,6 +629,11 @@
|
|
|
595
629
|
})
|
|
596
630
|
return flat;
|
|
597
631
|
},
|
|
632
|
+
fixedBottomPlaceholder() {
|
|
633
|
+
return {
|
|
634
|
+
height: (this.fixedBottomBodyHeight + 14) + 'px'
|
|
635
|
+
}
|
|
636
|
+
},
|
|
598
637
|
prod_bottom() {
|
|
599
638
|
return this.fixedStyle({height: 0, zIndex: 111});
|
|
600
639
|
},
|
|
@@ -637,15 +676,57 @@
|
|
|
637
676
|
let result = this.$xdUniHelper.cutFloatNumber(total_amount, total);
|
|
638
677
|
return result;
|
|
639
678
|
},
|
|
679
|
+
orderDiscountPrice(){
|
|
680
|
+
let total = 0;
|
|
681
|
+
if(this.orderFee.user_logistics_discount_amount){
|
|
682
|
+
total = this.$xdUniHelper.addFloatNumber(total, this.orderFee.user_logistics_discount_amount);
|
|
683
|
+
}
|
|
684
|
+
if(this.isShowPlusSavingMoney){
|
|
685
|
+
total = this.$xdUniHelper.addFloatNumber(total, this.orderFee.plus_saving_money);
|
|
686
|
+
}
|
|
687
|
+
return total;
|
|
688
|
+
},
|
|
640
689
|
bottomBoxStyle(){
|
|
641
|
-
let padding = `${this.checkValue(this.bottomPadding.top, 20)}rpx`;
|
|
642
|
-
padding = `${padding} ${this.checkValue(this.bottomPadding.right, 20)}rpx`;
|
|
643
|
-
padding = `${padding} ${this.checkValue(this.bottomPadding.bottom, 20)}rpx`;
|
|
644
|
-
padding = `${padding} ${this.checkValue(this.bottomPadding.left, 20)}rpx`;
|
|
645
690
|
return {
|
|
646
|
-
padding:
|
|
691
|
+
padding: this.getMarginAndPadding(this.bottomPadding, 16)
|
|
692
|
+
}
|
|
693
|
+
},
|
|
694
|
+
bodyStyleComp(){
|
|
695
|
+
let defaultStr = '{"spacing":16,"margin":{"bottom":0,"top":0,"left":16,"right":16},"backgroundColor": "rgba(245, 245, 245, 1)"}';
|
|
696
|
+
let isCard = this.cont_style === defaultStr;
|
|
697
|
+
console.log( 'bodyStyleComp', isCard);
|
|
698
|
+
return {
|
|
699
|
+
minHeight: this.layoutInfo.bodyMinHeight,
|
|
700
|
+
'--main-color': this.mainColor,
|
|
701
|
+
'--section-height': (this.sectionHeight * this.$rpxNum) + 'px',
|
|
702
|
+
'--order-line-height': (this.orderInfoHeight * this.$rpxNum) + 'px',
|
|
703
|
+
'--money-box-height': (this.moneyBoxHeight * this.$rpxNum) + 'px',
|
|
704
|
+
'--cont-lr-padding': isCard ? '16px' : '24px',
|
|
705
|
+
padding: this.getMarginAndPadding(this.bodyPadding,0),
|
|
706
|
+
}
|
|
707
|
+
},
|
|
708
|
+
blockSectionStyleComp(){
|
|
709
|
+
return {
|
|
710
|
+
marginLeft: this.lrPadding.left + 'rpx',
|
|
711
|
+
marginRight: this.lrPadding.right + 'rpx',
|
|
712
|
+
borderRadius: this.radius + 'rpx',
|
|
713
|
+
boxShadow: this.blockShadow,
|
|
647
714
|
}
|
|
648
715
|
},
|
|
716
|
+
addrStyleComp(){
|
|
717
|
+
let style = {
|
|
718
|
+
marginLeft: this.addrLrPadding.left + 'rpx',
|
|
719
|
+
marginRight: this.addrLrPadding.right + 'rpx',
|
|
720
|
+
marginTop: this.addrLrPadding.top + 'rpx',
|
|
721
|
+
borderRadius: this.addrRadius + 'rpx',
|
|
722
|
+
boxShadow: this.addrShadow,
|
|
723
|
+
overflow: 'hidden'
|
|
724
|
+
}
|
|
725
|
+
return style;
|
|
726
|
+
},
|
|
727
|
+
defaultUseWalletFirst(){
|
|
728
|
+
return this.checkPayMethod.includes('wallet');
|
|
729
|
+
}
|
|
649
730
|
},
|
|
650
731
|
watch: {
|
|
651
732
|
container(value,oldValue) {
|
|
@@ -681,6 +762,7 @@
|
|
|
681
762
|
}
|
|
682
763
|
},
|
|
683
764
|
created() {
|
|
765
|
+
this.isPreview = this.$configProject['isPreview'];
|
|
684
766
|
this.is_plus_site = this.projectAttr.headers['X-Site-Group']==="vip";
|
|
685
767
|
this.init(this.container);
|
|
686
768
|
this.isVip = this.getTokenForKey('user_level') === 'VIP';
|
|
@@ -692,8 +774,15 @@
|
|
|
692
774
|
this.order_id = options.order_id || '';
|
|
693
775
|
this.gift_id = options['gift_partner'] || "";
|
|
694
776
|
this.gift_mode = options.mode || "";
|
|
695
|
-
|
|
696
777
|
this.scene = options.scene || "";
|
|
778
|
+
//祝福语从链接参数传递过来
|
|
779
|
+
if(options.blessing){
|
|
780
|
+
try{
|
|
781
|
+
this.optionsBlessing = JSON.parse(Base64.decode(options.blessing));
|
|
782
|
+
}catch(e){
|
|
783
|
+
console.error("blessing解析失败", e);
|
|
784
|
+
}
|
|
785
|
+
}
|
|
697
786
|
|
|
698
787
|
await this.p_getAddrList(); //收货
|
|
699
788
|
await this.p_getCacheAddrList(); //取货
|
|
@@ -725,45 +814,93 @@
|
|
|
725
814
|
this.paySuccessPath = getContainerPropsValue(container, 'content.paySuccessPath', {value: ""}).value;
|
|
726
815
|
this.choseCityPath = getContainerPropsValue(container, 'content.choseCityPath',{value: "/system/system/city"}).value;
|
|
727
816
|
this.preview = getContainerPropsValue(container, 'content.preview', "N");
|
|
728
|
-
|
|
817
|
+
|
|
729
818
|
this.showActivityPrice = getContainerPropsValue(container, 'content.showActivityPrice', 'N');
|
|
730
819
|
this.bindCard = getContainerPropsValue(container,"content.bindCard","1");
|
|
731
820
|
this.useMode = getContainerPropsValue(container, 'content.useMode', "market");
|
|
732
821
|
this.showPrice = getContainerPropsValue(container, 'content.showPrice', "Y");
|
|
733
|
-
this.brandTextColor = getContainerPropsValue(container, "content.brandTextColor", this.mainColor);
|
|
734
822
|
this.address_layout = getContainerPropsValue(container, 'content.address_layout', "old");
|
|
735
|
-
this.
|
|
736
|
-
this.
|
|
737
|
-
this.
|
|
738
|
-
this.
|
|
739
|
-
this.
|
|
740
|
-
this.
|
|
741
|
-
this.
|
|
742
|
-
this.
|
|
743
|
-
this.bottomPayText = getContainerPropsValue(container, 'content.bottomPayText', "支付");
|
|
744
|
-
this.bottomPricePosition = getContainerPropsValue(container, 'content.bottomPricePosition', "left");
|
|
823
|
+
this.showTopLine = getContainerPropsValue(container, 'content.showTopLine', "B");
|
|
824
|
+
this.skipTip = getContainerPropsValue(container, "content.skipTip", "N");
|
|
825
|
+
this.skipToPay = getContainerPropsValue(container, "content.skipToPay", "Y");
|
|
826
|
+
this.guidePay = getContainerPropsValue(container, "content.guidePay", "");
|
|
827
|
+
this.showLogisticsTip = gCPVal(container, 'showLogisticsTip', "Y");
|
|
828
|
+
this.logisticsTipText = gCPVal(container, 'logisticsTipText', '订单生成后72小时发货,如遇节假日发货顺延');
|
|
829
|
+
this.ticketPositionStatus = gCPVal(container, 'ticketPositionStatus', "N")
|
|
830
|
+
console.log("this.showLogisticsTip", this.showLogisticsTip);
|
|
745
831
|
if(this.useMode === "market"){
|
|
746
832
|
this.showPrice = "Y"
|
|
747
833
|
}
|
|
748
834
|
|
|
749
|
-
|
|
750
|
-
this.
|
|
751
|
-
this.
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
});
|
|
757
|
-
|
|
758
|
-
this.
|
|
759
|
-
this.
|
|
760
|
-
this.
|
|
761
|
-
this.
|
|
762
|
-
this.
|
|
763
|
-
this.
|
|
764
|
-
|
|
835
|
+
let contStyle = this.getRelationStatus(container,'cont_style',{ sectionHeightStatus: ['sectionHeight'], lrPaddingStatus: ['lrPadding'] }, `{"spacing":16,"margin":{"bottom":0,"top":0,"left":16,"right":16},"backgroundColor": "rgba(245, 245, 245, 1)"}`);
|
|
836
|
+
this.cont_style = contStyle;
|
|
837
|
+
this.isCardLayout = '{"spacing":16,"margin":{"bottom":0,"top":0,"left":16,"right":16},"backgroundColor": "rgba(245, 245, 245, 1)"}' === contStyle;
|
|
838
|
+
this.sectionHeight = gCPVal(container, 'sectionHeight', [16], {sKey: "sectionHeightStatus", fields: ['sectionHeight'], cusFields: ['cont_style', 'spacing', contStyle]});
|
|
839
|
+
this.lrPadding = gCPVal(container, 'lrPadding', [0], {sKey:'lrPaddingStatus',fields:['lrPadding'],isPMR: true, cusFields: ['cont_style', 'margin', contStyle]})
|
|
840
|
+
|
|
841
|
+
let addrStyle = this.getRelationStatus(container,'addr_style',{ addrLrPaddingStatus: ['addrLrPadding'] }, `{"margin":{"bottom":0,"top":16,"left":16,"right":16}}`);
|
|
842
|
+
this.addrLrPadding = gCPVal(container, 'addrLrPadding', [0], {sKey:'addrLrPaddingStatus',fields:['addrLrPadding'],isPMR: true, cusFields: ['addr_style', 'margin', addrStyle]});
|
|
843
|
+
|
|
844
|
+
this.brandTextColor = gCPVal(container, 'brandTextColor', [this.mainColor], {sKey: "brandTextStatus", fields: ['brandTextColor']})
|
|
845
|
+
this.blessFontSize = gCPVal(container, 'blessFontSize', [24], {sKey: 'formTipStatus', fields: ['blessFontSize', 'blessTextColor']});
|
|
846
|
+
this.blessTextColor = gCPVal(container, 'blessTextColor', [this.dangerColor], {sKey: "formTipStatus", fields: ['blessFontSize', 'blessTextColor']});
|
|
847
|
+
this.priceTextColor = gCPVal(container, 'priceTextColor', [this.mainColor], {sKey: "activityPriceStatus", fields: ['priceTextColor']})
|
|
848
|
+
this.bottomPadding = gCPVal(container, 'bottomPadding', [16], {sKey: "bottomPaddingStatus", fields: ['bottomPadding']});
|
|
849
|
+
this.bottomBtnRadius = gCPVal(container, 'bottomBtnRadius', [40], {sKey: "btnStyleStatus", fields: ['bottomBtnRadius', 'bottomBtnHeight', 'bottomPayText']});
|
|
850
|
+
this.bottomBtnHeight = gCPVal(container, 'bottomBtnHeight', [60], {sKey: "btnStyleStatus", fields: ['bottomBtnRadius', 'bottomBtnHeight', 'bottomPayText']});
|
|
851
|
+
this.bottomPayText = gCPVal(container, 'bottomPayText', ["支付"], {sKey: "btnStyleStatus", fields: ['bottomBtnRadius', 'bottomBtnHeight', 'bottomPayText']});
|
|
852
|
+
this.bottomPricePosition = gCPVal(container, 'bottomPricePosition', ['flex-start'], {sKey: "btnPriceStatus", fields: ['bottomPricePosition']});
|
|
853
|
+
|
|
854
|
+
//优惠券样式升级为不在面板设置
|
|
855
|
+
// this.couponBtnRadius = getContainerPropsValue(container, "content.couponBtnRadius", 16);
|
|
856
|
+
// this.couponUseBtnPadding = getContainerPropsValue(container, "content.couponUseBtnPadding", {top: 20, left: 20, right: 20, bottom: 20});
|
|
857
|
+
// this.couponBtnTextStyle = getContainerPropsValue(container, "content.couponBtnTextStyle", {
|
|
858
|
+
// color: '#fff',
|
|
859
|
+
// bgColor: '#ff5722',
|
|
860
|
+
// fontSize: '30rpx',
|
|
861
|
+
// fontWeight: 'normal'
|
|
862
|
+
// });
|
|
863
|
+
// this.couponTitleBgColor = getContainerPropsValue(container, "content.couponTitleBgColor", 'rgba(255, 87, 51, 0.1)');
|
|
864
|
+
// this.couponRadius = getContainerPropsValue(container, "content.couponRadius", 16);
|
|
865
|
+
// this.couponLeftBgColor = getContainerPropsValue(container, "content.couponLeftBgColor", "linear-gradient(180deg, #FFA852 0%, #FF5733 100%)");
|
|
866
|
+
// this.couponImageUrl = getContainerPropsValue(container, "content.couponImageUrl", "");
|
|
867
|
+
|
|
868
|
+
//取公用盒间距;2.0改版要求
|
|
869
|
+
// this.moneyBoxHeight = getContainerPropsValue(container, "content.moneyBoxHeight", 16);
|
|
870
|
+
this.moneyBoxHeight = this.sectionHeight;
|
|
871
|
+
// this.orderInfoHeight = 20;
|
|
872
|
+
|
|
873
|
+
this.bodyPadding = gCPVal(container,'bodyPadding', [0], {sKey:'bodyPaddingStatus',fields:['bodyPadding'],isPMR: true});
|
|
874
|
+
|
|
875
|
+
this.radius = gCPVal(container, 'radius', [this.gStyleValue.radius, 0], {sKey: "radiusStatus", fields: ['radius']})||0
|
|
876
|
+
let blockShadow = gCPVal(container, 'blockShadow', ['none'], {sKey: "blockShadowStatus", fields: ['blockShadow']});
|
|
877
|
+
this.blockShadow = blockShadow ? this.getBSStr(blockShadow, 'shadow') : 'none';
|
|
878
|
+
|
|
879
|
+
this.addrRadius = gCPVal(container, 'addrRadius', [this.gStyleValue.radius, 0], {sKey:'addrRadiusStatus',fields:['addrRadius']})||0;
|
|
880
|
+
let addrShadow = gCPVal(container, 'addrShadow', ['none'], {sKey: "addrShadowStatus", fields: ['addrShadow']});
|
|
881
|
+
this.addrShadow = addrShadow ? this.getBSStr(addrShadow, 'shadow') : 'none';
|
|
882
|
+
this.coupon_layout = gCPVal(container, 'coupon_layout', ['1']);
|
|
883
|
+
this.checkPayMethod = gCPVal(container, 'checkPayMethod', []);
|
|
884
|
+
console.log("this.checkPayMethod", this.checkPayMethod);
|
|
885
|
+
|
|
886
|
+
if(this.skipToPay === 'N'){
|
|
765
887
|
this.hasAlertCardChose = true;
|
|
766
888
|
}
|
|
889
|
+
this.$nextTick(() => {
|
|
890
|
+
setTimeout(() => {
|
|
891
|
+
this.getDomReadyRect();
|
|
892
|
+
}, 200)
|
|
893
|
+
});
|
|
894
|
+
},
|
|
895
|
+
getDomReadyRect(){
|
|
896
|
+
return new Promise((resolve, reject) => {
|
|
897
|
+
let query = uni.createSelectorQuery();
|
|
898
|
+
query.select('.fixed_bottom_body').boundingClientRect(rect => {
|
|
899
|
+
console.log('getDomReadyRect', rect);
|
|
900
|
+
this.fixedBottomBodyHeight = rect.height;
|
|
901
|
+
resolve(rect);
|
|
902
|
+
}).exec();
|
|
903
|
+
});
|
|
767
904
|
},
|
|
768
905
|
//选择元宝
|
|
769
906
|
toChoseWallet(){
|
|
@@ -779,6 +916,9 @@
|
|
|
779
916
|
console.log(this.choseWallet)
|
|
780
917
|
this.showWalletChose = false;
|
|
781
918
|
},
|
|
919
|
+
handleWalletInit(total){
|
|
920
|
+
this.wallet_total_amount = this.$xdUniHelper.divisionFloatNumber(total, 100);
|
|
921
|
+
},
|
|
782
922
|
|
|
783
923
|
//only选择满减券
|
|
784
924
|
toChoseCoupon(){
|
|
@@ -791,6 +931,9 @@
|
|
|
791
931
|
this.choseCoupon = data;
|
|
792
932
|
this.showCouponChose = false;
|
|
793
933
|
},
|
|
934
|
+
handleCouponInit(coupList){
|
|
935
|
+
this.couponList = coupList;
|
|
936
|
+
},
|
|
794
937
|
|
|
795
938
|
//only选择卡片
|
|
796
939
|
toChoseCard(){
|
|
@@ -808,11 +951,17 @@
|
|
|
808
951
|
},
|
|
809
952
|
handleCardChoseAlert(){
|
|
810
953
|
this.hasAlertCardChose = true;
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
954
|
+
if(this.ticketPositionStatus === 'Y'){
|
|
955
|
+
//滚动到底部
|
|
956
|
+
uni.pageScrollTo({
|
|
957
|
+
scrollTop: 99999,
|
|
958
|
+
duration: 0
|
|
959
|
+
})
|
|
960
|
+
}
|
|
961
|
+
|
|
962
|
+
},
|
|
963
|
+
handleCardInit(cardList){
|
|
964
|
+
this.cardList = cardList;
|
|
816
965
|
},
|
|
817
966
|
getUserWalletList(cb){
|
|
818
967
|
jfbRootExec("getUserWallet", {
|
|
@@ -924,7 +1073,7 @@
|
|
|
924
1073
|
}
|
|
925
1074
|
this.useTickAndWalletPay(selected_card_list, selected_wallet_list);
|
|
926
1075
|
}else{
|
|
927
|
-
if(this.skipToPay === '
|
|
1076
|
+
if(this.skipToPay === 'Y'){
|
|
928
1077
|
this.showCardPay = true;
|
|
929
1078
|
}else{
|
|
930
1079
|
this.useTickAndWalletPay([], [])
|
|
@@ -1289,9 +1438,16 @@
|
|
|
1289
1438
|
var formData = JSON.parse(prod.product_form_data);
|
|
1290
1439
|
if(formData.length > 0){
|
|
1291
1440
|
prod['blessingKey'] = true;
|
|
1292
|
-
|
|
1441
|
+
let blessingData = formData[0]
|
|
1442
|
+
prod['blessingData'] = blessingData;
|
|
1293
1443
|
//复制祝福语从临时存入量
|
|
1294
1444
|
if(tempProd.blessing) prod['blessing'] = tempProd.blessing;
|
|
1445
|
+
else{
|
|
1446
|
+
let blessKey = blessingData.id;
|
|
1447
|
+
if(this.optionsBlessing['product_id'] == prod.product_id && this.optionsBlessing[blessKey]){
|
|
1448
|
+
prod['blessing'] = this.optionsBlessing[blessKey];
|
|
1449
|
+
}
|
|
1450
|
+
}
|
|
1295
1451
|
}
|
|
1296
1452
|
return prod;
|
|
1297
1453
|
}catch(err){
|
|
@@ -1356,7 +1512,7 @@
|
|
|
1356
1512
|
},
|
|
1357
1513
|
|
|
1358
1514
|
p_getPayMethod(support_methods){
|
|
1359
|
-
jfbRootExec("
|
|
1515
|
+
jfbRootExec("getMallPayMethod", {
|
|
1360
1516
|
vm: this,
|
|
1361
1517
|
data: {
|
|
1362
1518
|
support_methods: JSON.stringify(support_methods)
|
|
@@ -1371,6 +1527,7 @@
|
|
|
1371
1527
|
// if (this.preview === 'Y') {
|
|
1372
1528
|
// return this.$xdAlert({content: "体验模式不支持配送地址设置", width: '65vw'})
|
|
1373
1529
|
// }
|
|
1530
|
+
if(this.isPreview) return;
|
|
1374
1531
|
if(isCache === 'Y') {
|
|
1375
1532
|
this.$xdUniHelper.navigateTo({
|
|
1376
1533
|
url: this.shipAddressPath + "?back=true&cache_key="+ this.order_id
|
|
@@ -1384,7 +1541,14 @@
|
|
|
1384
1541
|
|
|
1385
1542
|
bindPickerChange(e, index){
|
|
1386
1543
|
let pickIndex = e.detail.value;
|
|
1387
|
-
|
|
1544
|
+
let tempShopList = this.$xdUniHelper.cloneDeep(this.shopList);
|
|
1545
|
+
this.tempShopList = tempShopList.map((item, ii) => {
|
|
1546
|
+
if(index === ii){
|
|
1547
|
+
item.takeoutTime = null;
|
|
1548
|
+
item.selectTime = null;
|
|
1549
|
+
}
|
|
1550
|
+
return item;
|
|
1551
|
+
});
|
|
1388
1552
|
this.shopList = this.shopList.map((item,ii) => {
|
|
1389
1553
|
if(index === ii){
|
|
1390
1554
|
let cur = item.support_delivery_method_options[pickIndex];
|
|
@@ -1414,7 +1578,8 @@
|
|
|
1414
1578
|
@padding_l_r: 50rpx;
|
|
1415
1579
|
.jfb-mall-confirm {
|
|
1416
1580
|
&__body{
|
|
1417
|
-
|
|
1581
|
+
overflow: auto;
|
|
1582
|
+
color: #333333;
|
|
1418
1583
|
.section{
|
|
1419
1584
|
margin-bottom: var(--section-height);
|
|
1420
1585
|
background: #FFFFFF;
|
|
@@ -1440,26 +1605,20 @@
|
|
|
1440
1605
|
width: 100%;
|
|
1441
1606
|
height: 3px;
|
|
1442
1607
|
position: absolute;
|
|
1443
|
-
top: 0;
|
|
1444
1608
|
left: 0;
|
|
1445
1609
|
}
|
|
1446
1610
|
.order_fee{
|
|
1447
|
-
|
|
1611
|
+
overflow: hidden;
|
|
1448
1612
|
::v-deep .xd-my-list-item{
|
|
1449
|
-
|
|
1450
|
-
padding-top: var(--order-line-height) !important;
|
|
1451
|
-
// padding-top: 0 !important;
|
|
1452
|
-
// padding-bottom: 0 !important;
|
|
1453
|
-
|
|
1454
|
-
&.logistics_discount{
|
|
1455
|
-
// padding-top: var(--order-line-height) !important;
|
|
1456
|
-
}
|
|
1613
|
+
&.logistics_discount{}
|
|
1457
1614
|
}
|
|
1458
1615
|
|
|
1459
1616
|
.money_box{
|
|
1460
1617
|
margin-bottom: var(--money-box-height);
|
|
1461
1618
|
background-color: #FFFFFF;
|
|
1462
|
-
|
|
1619
|
+
&:last-child{
|
|
1620
|
+
margin-bottom: 0;
|
|
1621
|
+
}
|
|
1463
1622
|
}
|
|
1464
1623
|
}
|
|
1465
1624
|
.shipping-address{
|
|
@@ -1500,10 +1659,13 @@
|
|
|
1500
1659
|
}
|
|
1501
1660
|
}
|
|
1502
1661
|
.buyer_info{
|
|
1503
|
-
padding: 24rpx
|
|
1662
|
+
padding: 24rpx var(--cont-lr-padding);
|
|
1504
1663
|
display: flex;
|
|
1505
1664
|
align-items: center;
|
|
1506
1665
|
font-size: 28rpx;
|
|
1666
|
+
::v-deep .uni-input-placeholder{
|
|
1667
|
+
color: #999999;
|
|
1668
|
+
}
|
|
1507
1669
|
.uni-input{
|
|
1508
1670
|
font-size: 28rpx;
|
|
1509
1671
|
height: 64rpx;
|
|
@@ -1515,17 +1677,39 @@
|
|
|
1515
1677
|
}
|
|
1516
1678
|
}
|
|
1517
1679
|
.prod_info_wrap{
|
|
1680
|
+
::v-deep .uni-input-placeholder{
|
|
1681
|
+
color: #999999;
|
|
1682
|
+
}
|
|
1683
|
+
.logistics_tip{
|
|
1684
|
+
padding: 0 var(--cont-lr-padding) 24rpx;
|
|
1685
|
+
font-size: 24rpx;
|
|
1686
|
+
color: var(--g-theme-dangerColor);
|
|
1687
|
+
}
|
|
1518
1688
|
.err_message{
|
|
1519
|
-
padding:
|
|
1520
|
-
font-size:
|
|
1689
|
+
padding: 20rpx var(--cont-lr-padding);
|
|
1690
|
+
font-size: 24rpx;
|
|
1691
|
+
}
|
|
1692
|
+
.delivery{
|
|
1693
|
+
// #ifdef H5
|
|
1694
|
+
::v-deep .xd-my-list-item:last-child{
|
|
1695
|
+
border-bottom: none !important;
|
|
1696
|
+
}
|
|
1697
|
+
// #endif
|
|
1698
|
+
// #ifdef MP-WEIXIN
|
|
1699
|
+
.xd-my-list-item:last-child{
|
|
1700
|
+
::v-deep .xd-my-list-item{
|
|
1701
|
+
border-bottom: none !important;
|
|
1702
|
+
}
|
|
1703
|
+
}
|
|
1704
|
+
// #endif
|
|
1521
1705
|
}
|
|
1522
1706
|
.shop_name{
|
|
1523
|
-
padding: 24rpx
|
|
1707
|
+
padding: 24rpx var(--cont-lr-padding);
|
|
1524
1708
|
border-bottom: 1px solid #eee;
|
|
1525
1709
|
font-size: 28rpx;
|
|
1526
1710
|
}
|
|
1527
1711
|
.prod_item{
|
|
1528
|
-
padding: 24rpx
|
|
1712
|
+
padding: 24rpx var(--cont-lr-padding);
|
|
1529
1713
|
box-sizing: border-box;
|
|
1530
1714
|
height: auto;
|
|
1531
1715
|
background: #FFFFFF;
|
|
@@ -1533,10 +1717,9 @@
|
|
|
1533
1717
|
border-radius: 10rpx;
|
|
1534
1718
|
|
|
1535
1719
|
.prod_img{
|
|
1536
|
-
width:
|
|
1537
|
-
height:
|
|
1720
|
+
width: 180rpx;
|
|
1721
|
+
height: 180rpx;
|
|
1538
1722
|
margin-right: 24rpx;
|
|
1539
|
-
background: #DDD;
|
|
1540
1723
|
image{
|
|
1541
1724
|
width: 100%;
|
|
1542
1725
|
height: 100%;
|
|
@@ -1550,7 +1733,7 @@
|
|
|
1550
1733
|
width: 100rpx;
|
|
1551
1734
|
}
|
|
1552
1735
|
.prod_tit{
|
|
1553
|
-
font-size:
|
|
1736
|
+
font-size: 28rpx;
|
|
1554
1737
|
.uni-max-cut(2, 80);
|
|
1555
1738
|
line-height: unit(40, rpx);
|
|
1556
1739
|
}
|
|
@@ -1559,15 +1742,15 @@
|
|
|
1559
1742
|
}
|
|
1560
1743
|
|
|
1561
1744
|
.prod_brand {
|
|
1562
|
-
font-size:
|
|
1563
|
-
padding-top:
|
|
1564
|
-
line-height:
|
|
1745
|
+
font-size: 24rpx;
|
|
1746
|
+
padding-top: 4rpx;
|
|
1747
|
+
line-height: 32rpx;
|
|
1565
1748
|
}
|
|
1566
1749
|
|
|
1567
1750
|
.prod_specs{
|
|
1568
|
-
padding-top: unit(
|
|
1751
|
+
padding-top: unit(4, rpx);
|
|
1569
1752
|
display: block;
|
|
1570
|
-
font-size:
|
|
1753
|
+
font-size: 24rpx;
|
|
1571
1754
|
color: #999999;
|
|
1572
1755
|
line-height: unit(32, rpx);
|
|
1573
1756
|
}
|
|
@@ -1578,7 +1761,7 @@
|
|
|
1578
1761
|
}
|
|
1579
1762
|
}
|
|
1580
1763
|
.wish_comment{
|
|
1581
|
-
padding:
|
|
1764
|
+
padding: 0 var(--cont-lr-padding);
|
|
1582
1765
|
input{
|
|
1583
1766
|
background: #F7F7F7;
|
|
1584
1767
|
height: 68rpx;
|
|
@@ -1588,24 +1771,28 @@
|
|
|
1588
1771
|
}
|
|
1589
1772
|
.bless_tip{
|
|
1590
1773
|
font-size: 26rpx;
|
|
1591
|
-
margin:
|
|
1774
|
+
margin: 20rpx 0 24rpx;
|
|
1592
1775
|
}
|
|
1593
1776
|
}
|
|
1594
1777
|
}
|
|
1595
1778
|
.order_comment{
|
|
1596
|
-
padding: 24rpx
|
|
1779
|
+
padding: 24rpx var(--cont-lr-padding);
|
|
1597
1780
|
.title{
|
|
1598
1781
|
font-size: 28rpx;
|
|
1599
1782
|
margin-bottom: 24rpx;
|
|
1600
1783
|
}
|
|
1601
|
-
|
|
1784
|
+
.order_market{
|
|
1602
1785
|
border-radius: 8rpx;
|
|
1603
1786
|
box-sizing: border-box;
|
|
1604
1787
|
background: #F7F7F7;
|
|
1605
1788
|
width: 100%;
|
|
1606
1789
|
padding: 20rpx;
|
|
1607
|
-
height: 168rpx;
|
|
1608
1790
|
font-size: unit(24,rpx);
|
|
1791
|
+
height: 74rpx;
|
|
1792
|
+
|
|
1793
|
+
::v-deep .uni-input-placeholder{
|
|
1794
|
+
color: #999999;
|
|
1795
|
+
}
|
|
1609
1796
|
}
|
|
1610
1797
|
}
|
|
1611
1798
|
.fixe_bottom{
|
|
@@ -1624,6 +1811,19 @@
|
|
|
1624
1811
|
padding: 0 32rpx;
|
|
1625
1812
|
color: #ff5733;
|
|
1626
1813
|
}
|
|
1814
|
+
.t_price{
|
|
1815
|
+
display: flex;
|
|
1816
|
+
align-items: center;
|
|
1817
|
+
font-weight: 500;
|
|
1818
|
+
color: #FF2C18;
|
|
1819
|
+
}
|
|
1820
|
+
.b_price{
|
|
1821
|
+
display: flex;
|
|
1822
|
+
align-items: center;
|
|
1823
|
+
font-size: 24rpx;
|
|
1824
|
+
color: #FF2C18;
|
|
1825
|
+
font-weight: 400;
|
|
1826
|
+
}
|
|
1627
1827
|
}
|
|
1628
1828
|
}
|
|
1629
1829
|
}
|