|
|
@ -122,7 +122,7 @@ |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
|
<!-- 优惠券弹窗 --> |
|
|
|
<!-- 优惠券弹窗 --> |
|
|
|
<wybPopup ref="popup" type="bottom" width="500" radius="6" :showCloseIcon="true" scrollY="true"> |
|
|
|
<wybPopup ref="popup" type="bottom" width="500" radius="6" :showCloseIcon="true" :scrollY="true"> |
|
|
|
<view class="fotct font18 fontwig6 fcor333 mart10 height30">优惠券选择</view> |
|
|
|
<view class="fotct font18 fontwig6 fcor333 mart10 height30">优惠券选择</view> |
|
|
|
<view v-if="discountList == ''" class="mart60 fotct font14 fcor666"> |
|
|
|
<view v-if="discountList == ''" class="mart60 fotct font14 fcor666"> |
|
|
|
<image mode="widthFix" style="width: 50vw;" src="../../static/noorder.png"></image> |
|
|
|
<image mode="widthFix" style="width: 50vw;" src="../../static/noorder.png"></image> |
|
|
@ -151,7 +151,7 @@ |
|
|
|
<view class="height40p"></view> |
|
|
|
<view class="height40p"></view> |
|
|
|
</wybPopup> |
|
|
|
</wybPopup> |
|
|
|
<!-- 门店活动 --> |
|
|
|
<!-- 门店活动 --> |
|
|
|
<wybPopup ref="popupstore" type="bottom" width="500" radius="6" :showCloseIcon="true" scrollY="true"> |
|
|
|
<wybPopup ref="popupstore" type="bottom" width="500" radius="6" :showCloseIcon="true" :scrollY="true"> |
|
|
|
<view class="fotct font18 fontwig6 fcor333 mart10 height30">门店活动选择</view> |
|
|
|
<view class="fotct font18 fontwig6 fcor333 mart10 height30">门店活动选择</view> |
|
|
|
<view v-if="storeCouponlist == ''" class="mart60 fotct font14 fcor666"> |
|
|
|
<view v-if="storeCouponlist == ''" class="mart60 fotct font14 fcor666"> |
|
|
|
<image mode="widthFix" style="width: 50vw;" src="../../static/noorder.png"></image> |
|
|
|
<image mode="widthFix" style="width: 50vw;" src="../../static/noorder.png"></image> |
|
|
@ -200,6 +200,25 @@ |
|
|
|
|
|
|
|
|
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</wybPopup> |
|
|
|
</wybPopup> |
|
|
|
|
|
|
|
<wybPopup ref="popupTip" type="center" :maskClickClose="false" :height="popupHeight" :width="popupWidth" |
|
|
|
|
|
|
|
bgColor="" radius="20" :showCloseIcon="false"> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<view class="width100 height100 pr"> |
|
|
|
|
|
|
|
<image class="popImg" mode="aspectFit" src="/static/tipBg.png"></image> |
|
|
|
|
|
|
|
<view class="popContain width100 "> |
|
|
|
|
|
|
|
<view class="tip-top font20">恭喜!获得了到店优惠</view> |
|
|
|
|
|
|
|
<view class="tip-price tip-color"> |
|
|
|
|
|
|
|
<text class="font45 " v-if="tradeDetail">{{tradeDetail.rebateActivityActualPrice}}</text><text |
|
|
|
|
|
|
|
class="">元</text> |
|
|
|
|
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="tip-color tip-desc"> |
|
|
|
|
|
|
|
到店付款可当现金用 |
|
|
|
|
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<view class="btnPay " @tap.stop="tapToPay">去支付</view> |
|
|
|
|
|
|
|
</view> |
|
|
|
|
|
|
|
</view> |
|
|
|
|
|
|
|
</wybPopup> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
|
@ -217,7 +236,8 @@ |
|
|
|
phone, |
|
|
|
phone, |
|
|
|
getUserAccount, |
|
|
|
getUserAccount, |
|
|
|
queryUserDiscountList, |
|
|
|
queryUserDiscountList, |
|
|
|
calculation |
|
|
|
calculation, |
|
|
|
|
|
|
|
cancelOrder |
|
|
|
} from '../../Utils/Api.js'; |
|
|
|
} from '../../Utils/Api.js'; |
|
|
|
// #ifdef H5 |
|
|
|
// #ifdef H5 |
|
|
|
var jweixin = require('jweixin-module'); |
|
|
|
var jweixin = require('jweixin-module'); |
|
|
@ -270,7 +290,13 @@ |
|
|
|
storediscountType: '', //门店优惠类型 |
|
|
|
storediscountType: '', //门店优惠类型 |
|
|
|
storediscountCondition: '', //门店优惠条件 |
|
|
|
storediscountCondition: '', //门店优惠条件 |
|
|
|
storediscountPrice: '', //门店优惠价格 |
|
|
|
storediscountPrice: '', //门店优惠价格 |
|
|
|
storeDiscountId: '' //门店活动id |
|
|
|
storeDiscountId: '', //门店活动id |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tradeDetail: null, //订单详情 |
|
|
|
|
|
|
|
/* 弹窗 */ |
|
|
|
|
|
|
|
popupHeight: 485, |
|
|
|
|
|
|
|
popupWidth: 330, |
|
|
|
|
|
|
|
outTradeNo: '', //订单编号 |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
mounted() {}, |
|
|
|
mounted() {}, |
|
|
@ -283,6 +309,9 @@ |
|
|
|
this.getUserAccount(); |
|
|
|
this.getUserAccount(); |
|
|
|
this.queryUserDiscountList(); |
|
|
|
this.queryUserDiscountList(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.popupHeight = this.rpxTopx(this.popupHeight); |
|
|
|
|
|
|
|
this.popupWidth = this.rpxTopx(this.popupWidth); |
|
|
|
}, |
|
|
|
}, |
|
|
|
computed: { |
|
|
|
computed: { |
|
|
|
//获取输入金额值 |
|
|
|
//获取输入金额值 |
|
|
@ -310,6 +339,13 @@ |
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
methods: { |
|
|
|
|
|
|
|
rpxTopx(temp) { |
|
|
|
|
|
|
|
let deviceWidth = uni.getSystemInfoSync().windowWidth; //获取设备屏幕宽度 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let rpx = (750 / deviceWidth) * Number(temp) |
|
|
|
|
|
|
|
return Math.floor(rpx); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
Timer() {}, |
|
|
|
Timer() {}, |
|
|
|
//发送验证码 |
|
|
|
//发送验证码 |
|
|
|
getCode() { |
|
|
|
getCode() { |
|
|
@ -672,13 +708,17 @@ |
|
|
|
// if (userAgent.match(/Alipay/i) == "alipay") { |
|
|
|
// if (userAgent.match(/Alipay/i) == "alipay") { |
|
|
|
// this.createJSAPIOrder('ALIPAY'); |
|
|
|
// this.createJSAPIOrder('ALIPAY'); |
|
|
|
// } else if (userAgent.match(/MicroMessenger/i) == "micromessenger") { |
|
|
|
// } else if (userAgent.match(/MicroMessenger/i) == "micromessenger") { |
|
|
|
this.createJSAPIOrder(); |
|
|
|
|
|
|
|
|
|
|
|
if (app.globalData.isClick) { |
|
|
|
|
|
|
|
this.createJSAPIOrder(); |
|
|
|
|
|
|
|
app.globalData.isClick = false; |
|
|
|
|
|
|
|
} |
|
|
|
// } |
|
|
|
// } |
|
|
|
}, |
|
|
|
}, |
|
|
|
// 创建订单 |
|
|
|
// 创建订单 |
|
|
|
createJSAPIOrder(item) { |
|
|
|
createJSAPIOrder(item) { |
|
|
|
uni.showLoading({ |
|
|
|
uni.showLoading({ |
|
|
|
title:'请求中' |
|
|
|
title: '请求中' |
|
|
|
}) |
|
|
|
}) |
|
|
|
// "微信:WECHAT 支付宝:ALIPAY 银联:UQRCODEPAY", |
|
|
|
// "微信:WECHAT 支付宝:ALIPAY 银联:UQRCODEPAY", |
|
|
|
let phone = ''; |
|
|
|
let phone = ''; |
|
|
@ -694,11 +734,21 @@ |
|
|
|
"userDiscountId": this.memDiscountId, |
|
|
|
"userDiscountId": this.memDiscountId, |
|
|
|
"userPhone": phone |
|
|
|
"userPhone": phone |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
this.tradeDetail = null; |
|
|
|
|
|
|
|
this.outTradeNo = ""; |
|
|
|
createJSAPIOrder(datas).then(res => { |
|
|
|
createJSAPIOrder(datas).then(res => { |
|
|
|
uni.hideLoading(); |
|
|
|
uni.hideLoading(); |
|
|
|
if (res.return_code == '000000') { |
|
|
|
if (res.return_code == '000000') { |
|
|
|
|
|
|
|
this.outTradeNo = res.return_data.outTradeNo; |
|
|
|
|
|
|
|
if (res.return_data.tradeDetail && res.return_data.tradeDetail.rebateActivityPart) { |
|
|
|
|
|
|
|
this.tradeDetail = res.return_data.tradeDetail; |
|
|
|
|
|
|
|
this.$refs.popupTip.show(); |
|
|
|
|
|
|
|
return |
|
|
|
|
|
|
|
} |
|
|
|
this.jsapiPay(res.return_data.outTradeNo); |
|
|
|
this.jsapiPay(res.return_data.outTradeNo); |
|
|
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
} else { |
|
|
|
|
|
|
|
app.globalData.isClick = true; |
|
|
|
uni.showToast({ |
|
|
|
uni.showToast({ |
|
|
|
title: res.return_msg, |
|
|
|
title: res.return_msg, |
|
|
|
duration: 2000, |
|
|
|
duration: 2000, |
|
|
@ -707,12 +757,26 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
}) |
|
|
|
}) |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
tapToPay() { |
|
|
|
|
|
|
|
this.$refs.popupTip.hide(); |
|
|
|
|
|
|
|
this.$nextTick(() => { |
|
|
|
|
|
|
|
if (this.outTradeNo) { |
|
|
|
|
|
|
|
this.jsapiPay(this.outTradeNo); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
}, |
|
|
|
//唤起支付参数 |
|
|
|
//唤起支付参数 |
|
|
|
jsapiPay(item) { |
|
|
|
jsapiPay(item) { |
|
|
|
|
|
|
|
uni.showLoading({ |
|
|
|
|
|
|
|
title: '请求中', |
|
|
|
|
|
|
|
mask: true, |
|
|
|
|
|
|
|
}) |
|
|
|
let datas = { |
|
|
|
let datas = { |
|
|
|
outTradeNo: item |
|
|
|
outTradeNo: item |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
jsapiPay(datas).then(res => { |
|
|
|
jsapiPay(datas).then(res => { |
|
|
|
|
|
|
|
uni.hideLoading(); |
|
|
|
if (res.return_code == '000000') { |
|
|
|
if (res.return_code == '000000') { |
|
|
|
if (res.return_data.payParam && app.globalData.platformType == 'WECHAT') { |
|
|
|
if (res.return_data.payParam && app.globalData.platformType == 'WECHAT') { |
|
|
|
this.wechatpayRequest(res.return_data); |
|
|
|
this.wechatpayRequest(res.return_data); |
|
|
@ -733,6 +797,7 @@ |
|
|
|
duration: 2000 |
|
|
|
duration: 2000 |
|
|
|
}) |
|
|
|
}) |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
|
|
|
|
app.globalData.isClick = true; |
|
|
|
uni.showToast({ |
|
|
|
uni.showToast({ |
|
|
|
title: res.return_msg, |
|
|
|
title: res.return_msg, |
|
|
|
duration: 2000, |
|
|
|
duration: 2000, |
|
|
@ -741,6 +806,29 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
}) |
|
|
|
}) |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
//取消支付 |
|
|
|
|
|
|
|
cancelOrder(outTradeNo) { |
|
|
|
|
|
|
|
let params = { |
|
|
|
|
|
|
|
"outTradeNo": outTradeNo |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
cancelOrder(params).then(res => { |
|
|
|
|
|
|
|
app.globalData.isClick = true; |
|
|
|
|
|
|
|
this.outTradeNo = ""; |
|
|
|
|
|
|
|
if (res.return_code == '000000') { |
|
|
|
|
|
|
|
// uni.showToast({ |
|
|
|
|
|
|
|
// title: "已取消订单", |
|
|
|
|
|
|
|
// icon: 'none', |
|
|
|
|
|
|
|
// duration: 2000 |
|
|
|
|
|
|
|
// }) |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
uni.showToast({ |
|
|
|
|
|
|
|
title: res.return_msg, |
|
|
|
|
|
|
|
icon: 'none', |
|
|
|
|
|
|
|
duration: 2000 |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
}, |
|
|
|
//删除金额 |
|
|
|
//删除金额 |
|
|
|
deleteVal() { |
|
|
|
deleteVal() { |
|
|
|
// this.plateNumberList.pop(); |
|
|
|
// this.plateNumberList.pop(); |
|
|
@ -848,10 +936,11 @@ |
|
|
|
}, |
|
|
|
}, |
|
|
|
//微信支付 |
|
|
|
//微信支付 |
|
|
|
wechatpayRequest: function(self) { |
|
|
|
wechatpayRequest: function(self) { |
|
|
|
|
|
|
|
let that = this; |
|
|
|
uni.showLoading({ |
|
|
|
uni.showLoading({ |
|
|
|
title: '支付中...' |
|
|
|
title: '支付中...' |
|
|
|
}) |
|
|
|
}) |
|
|
|
if (self.platformType == 1) { |
|
|
|
if (self.platformType == 1 || self.platformType == 5) { |
|
|
|
jweixin.config({ |
|
|
|
jweixin.config({ |
|
|
|
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 |
|
|
|
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 |
|
|
|
appId: self.payParam.acc_resp_fields.app_id, // 必填,公众号的唯一标识 |
|
|
|
appId: self.payParam.acc_resp_fields.app_id, // 必填,公众号的唯一标识 |
|
|
@ -864,8 +953,12 @@ |
|
|
|
jweixin.ready(function() { |
|
|
|
jweixin.ready(function() { |
|
|
|
jweixin.checkJsApi({ |
|
|
|
jweixin.checkJsApi({ |
|
|
|
jsApiList: ['chooseWXPay'], // 需要检测的JS接口列表,所有JS接口列表见附录2, |
|
|
|
jsApiList: ['chooseWXPay'], // 需要检测的JS接口列表,所有JS接口列表见附录2, |
|
|
|
success: function(res) {}, |
|
|
|
success: function(res) { |
|
|
|
fail: function(res) {} |
|
|
|
// app.globalData.isClick = true; |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
fail: function(res) { |
|
|
|
|
|
|
|
// app.globalData.isClick = true; |
|
|
|
|
|
|
|
} |
|
|
|
}); |
|
|
|
}); |
|
|
|
jweixin.chooseWXPay({ |
|
|
|
jweixin.chooseWXPay({ |
|
|
|
appId: self.payParam.acc_resp_fields.app_id, |
|
|
|
appId: self.payParam.acc_resp_fields.app_id, |
|
|
@ -883,11 +976,20 @@ |
|
|
|
title: '支付成功' |
|
|
|
title: '支付成功' |
|
|
|
}) |
|
|
|
}) |
|
|
|
}, |
|
|
|
}, |
|
|
|
cancel: function(r) {}, |
|
|
|
cancel: function(r) { |
|
|
|
fail: function(res) {} |
|
|
|
that.cancelOrder(that.outTradeNo); //取消订单 |
|
|
|
|
|
|
|
// app.globalData.isClick = true; |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
fail: function(res) { |
|
|
|
|
|
|
|
that.cancelOrder(that.outTradeNo); //取消订单 |
|
|
|
|
|
|
|
// app.globalData.isClick = true; |
|
|
|
|
|
|
|
} |
|
|
|
}); |
|
|
|
}); |
|
|
|
}); |
|
|
|
}); |
|
|
|
|
|
|
|
// config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名 |
|
|
|
jweixin.error(function(res) { |
|
|
|
jweixin.error(function(res) { |
|
|
|
|
|
|
|
that.cancelOrder(that.outTradeNo); //取消订单 |
|
|
|
|
|
|
|
// app.globalData.isClick = true; |
|
|
|
uni.showToast({ |
|
|
|
uni.showToast({ |
|
|
|
icon: 'none', |
|
|
|
icon: 'none', |
|
|
|
title: '支付失败了', |
|
|
|
title: '支付失败了', |
|
|
@ -923,12 +1025,21 @@ |
|
|
|
uni.showToast({ |
|
|
|
uni.showToast({ |
|
|
|
title: '支付成功' |
|
|
|
title: '支付成功' |
|
|
|
}) |
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
}, |
|
|
|
cancel: function(r) {}, |
|
|
|
cancel: function(r) { |
|
|
|
fail: function(res) {} |
|
|
|
// app.globalData.isClick = true; |
|
|
|
|
|
|
|
that.cancelOrder(that.outTradeNo); //取消订单 |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
fail: function(res) { |
|
|
|
|
|
|
|
// app.globalData.isClick = true; |
|
|
|
|
|
|
|
that.cancelOrder(that.outTradeNo); //取消订单 |
|
|
|
|
|
|
|
} |
|
|
|
}); |
|
|
|
}); |
|
|
|
}); |
|
|
|
}); |
|
|
|
jweixin.error(function(res) { |
|
|
|
jweixin.error(function(res) { |
|
|
|
|
|
|
|
// app.globalData.isClick = true; |
|
|
|
|
|
|
|
that.cancelOrder(that.outTradeNo); //取消订单 |
|
|
|
uni.showToast({ |
|
|
|
uni.showToast({ |
|
|
|
icon: 'none', |
|
|
|
icon: 'none', |
|
|
|
title: '支付失败了', |
|
|
|
title: '支付失败了', |
|
|
@ -939,12 +1050,40 @@ |
|
|
|
}, |
|
|
|
}, |
|
|
|
//支付宝支付 |
|
|
|
//支付宝支付 |
|
|
|
alipayRequest(item) { |
|
|
|
alipayRequest(item) { |
|
|
|
|
|
|
|
let that = this; |
|
|
|
alipayApi.tradePay({ |
|
|
|
alipayApi.tradePay({ |
|
|
|
tradeNO: item |
|
|
|
tradeNO: item, |
|
|
|
}, function(res) { |
|
|
|
success: function(res) { |
|
|
|
// alert(JSON.stringify(res)); |
|
|
|
if(res.resultCode==9000){ |
|
|
|
//支付完成的逻辑 |
|
|
|
app.globalData.isClick = true; |
|
|
|
}); |
|
|
|
// uni.showToast({ |
|
|
|
|
|
|
|
// title:"支付成功!", |
|
|
|
|
|
|
|
// icon:'none' |
|
|
|
|
|
|
|
// }) |
|
|
|
|
|
|
|
}else{ |
|
|
|
|
|
|
|
// uni.showToast({ |
|
|
|
|
|
|
|
// title:"支付失败!", |
|
|
|
|
|
|
|
// icon:'none' |
|
|
|
|
|
|
|
// }) |
|
|
|
|
|
|
|
that.cancelOrder(that.outTradeNo); //取消订单 |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
fail: function(res) { |
|
|
|
|
|
|
|
uni.showToast({ |
|
|
|
|
|
|
|
title:res, |
|
|
|
|
|
|
|
icon:'none' |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
that.cancelOrder(that.outTradeNo); //取消订单 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* function(res) { |
|
|
|
|
|
|
|
app.globalData.isClick = true; |
|
|
|
|
|
|
|
// alert(JSON.stringify(res)); |
|
|
|
|
|
|
|
//支付完成的逻辑 |
|
|
|
|
|
|
|
} */ |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
@ -1003,6 +1142,9 @@ |
|
|
|
border-radius: 45rpx; |
|
|
|
border-radius: 45rpx; |
|
|
|
font-size: 28rpx; |
|
|
|
font-size: 28rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.re { |
|
|
|
.re { |
|
|
@ -1159,4 +1301,66 @@ |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* 活动金弹窗 */ |
|
|
|
|
|
|
|
.pr { |
|
|
|
|
|
|
|
position: relative; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.popImg { |
|
|
|
|
|
|
|
width: 100%; |
|
|
|
|
|
|
|
height: 100%; |
|
|
|
|
|
|
|
min-height: 430px; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.popContain { |
|
|
|
|
|
|
|
position: absolute; |
|
|
|
|
|
|
|
top: 0; |
|
|
|
|
|
|
|
// padding: 20px; |
|
|
|
|
|
|
|
box-sizing: border-box; |
|
|
|
|
|
|
|
text-align: center; |
|
|
|
|
|
|
|
font-size: 28rpx; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.tip-color { |
|
|
|
|
|
|
|
color: #BF0E0F; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.tip-top { |
|
|
|
|
|
|
|
color: white; |
|
|
|
|
|
|
|
letter-spacing: 2px; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.tip-price { |
|
|
|
|
|
|
|
margin-top: 143px; |
|
|
|
|
|
|
|
font-weight: bold; |
|
|
|
|
|
|
|
display: flex; |
|
|
|
|
|
|
|
align-items: baseline; |
|
|
|
|
|
|
|
justify-content: center; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.font45 { |
|
|
|
|
|
|
|
font-size: 45px; |
|
|
|
|
|
|
|
font-style: oblique; |
|
|
|
|
|
|
|
margin-right: 5px; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.tip-desc { |
|
|
|
|
|
|
|
font-size: 18px; |
|
|
|
|
|
|
|
font-weight: bold; |
|
|
|
|
|
|
|
margin-top: 10px; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.btnPay { |
|
|
|
|
|
|
|
color: #FFFFFF; |
|
|
|
|
|
|
|
background: linear-gradient(to right, #F46538, #E8411A); |
|
|
|
|
|
|
|
width: 60%; |
|
|
|
|
|
|
|
margin: 22px auto 16px; |
|
|
|
|
|
|
|
height: 50px; |
|
|
|
|
|
|
|
display: flex; |
|
|
|
|
|
|
|
justify-content: center; |
|
|
|
|
|
|
|
align-items: center; |
|
|
|
|
|
|
|
border-radius: 25px; |
|
|
|
|
|
|
|
font-size: 28rpx; |
|
|
|
|
|
|
|
} |
|
|
|
</style> |
|
|
|
</style> |