Commit 3a02a582 authored by Xuguangxing's avatar Xuguangxing

fix

parent dcebf31a
......@@ -112,6 +112,13 @@
margin-right: @padding-x;
flex-shrink: 0;
position: relative;
&-img-box{
width: 100%;
height: 100%;
/deep/ img {
border-radius: 6px;
}
}
}
&-desc{
flex: 1;
......
......@@ -16,7 +16,12 @@
class="goods-product-info-tag"
>{{ detailInfo.groupBuyInfo.groupBuyLimitUserCount }}人团</span
>
<cr-image width="108px" :src="detailInfo.thumbImageUrl" />
<cr-image
class="goods-product-info-img-img-box"
width=""
height=""
:src="detailInfo.thumbImageUrl"
/>
</div>
<div class="goods-product-info-desc">
<div class="goods-product-info-desc-part1">
......
......@@ -36,10 +36,9 @@ const WECHAT_PAY = 2;
const ALIPAY_PAY = 3;
const CREDIT_AND_WECHAT_PAY = 4;
const CREDIT_AND_ALIPAY_PAY = 5;
const CASH_PAY = 6;
// 三方支付
const IS_THIRD_PAY = method => [WECHAT_PAY, ALIPAY_PAY, CASH_PAY].indexOf(method) > -1;
const IS_THIRD_PAY = method => [WECHAT_PAY, ALIPAY_PAY].indexOf(method) > -1;
//组合支付
const IS_GROUP_PAY = method => [CREDIT_AND_WECHAT_PAY, CREDIT_AND_ALIPAY_PAY].indexOf(method) > -1;
//信用支付
......@@ -53,8 +52,6 @@ const FACE_VERIFICATION_CODE_PAY = 4; //人脸验证
const PAY_SUCCESS = 3; // 支付成功
const PAY_PAYING = 2; //支付中
const CASH_PAY_SUCCESS = 1; // 现金券支付成功
function isDetentionFn() {
// 推荐开通享花卡
if (this.creditPayInfo.accountStatus !== ACCOUNT_APPLY_SUCCESS) {
......@@ -136,10 +133,19 @@ function filterAllPayList(type, data) {
}
return data;
}
const payTypeMap = {
'1': '信用支付',
'2': '微信支付',
'3': '支付宝支付',
'4': '信用支付_微信支付',
'5': '信用支付_支付宝支付',
'6': '虚拟支付0元付'
};
export {
status,
codeArr,
CASH_PAY,
payTypeE,
payStatus,
PAY_PAYING,
......@@ -157,7 +163,6 @@ export {
filterAllPayList,
ACCOUNT_NO_APPLY,
PAYMENT_CODE_PAY,
CASH_PAY_SUCCESS,
ACCOUNT_APPLY_FAIL,
creditPayStatusType,
CREDIT_AND_WECHAT_PAY,
......@@ -166,5 +171,6 @@ export {
ACCOUNT_APPLY_AUDITING,
ACCOUNT_APPLY_AUDIT_FAIL,
SMS_VERIFICATION_CODE_PAY,
FACE_VERIFICATION_CODE_PAY
FACE_VERIFICATION_CODE_PAY,
payTypeMap
};
<template>
<div class="coupon">
<p class="coupon-face">
<span class="coupon-amount">{{ value.faceValue }}</span>
<span class="coupon-name">{{ value.name }}</span>
</p>
<p class="coupon-content">
<span class="coupon-desc">{{ value.description }}</span>
<span class="coupon-time">{{ value.couponValidTime }}</span>
</p>
<p class="coupon-action">
<cr-button size="mini" type="primary" shape="circle" class="coupon-button" @click="goNavUrl"
>去使用</cr-button
>
</p>
<div class="pay-type-list">
<p class="type-title">{{ value.title }}</p>
<payGroupItem
v-if="value.isGroupPay"
v-model="payList"
:pay-type="payType"
:disabled="disabled"
:coupon-info="couponInfo"
:show-coupon="showCoupon"
:coupon-disabled="showCoupon && !payCouponCouldBeUsed"
/>
<template v-else>
<template v-for="(item, key) of payList">
<payCardItem
v-if="item.show"
:key="key"
:pay-type="payType"
:value="item"
:disabled="disabled"
:coupon-info="couponInfo"
:show-coupon="showCoupon"
:coupon-disabled="showCoupon && !payCouponCouldBeUsed"
/>
</template>
</template>
</div>
</template>
<script>
import payCardItem from './PayCardItem';
import payGroupItem from './PayGroupCard.vue';
export default {
name: 'PayCard',
components: {
payCardItem,
payGroupItem
},
provide() {
return {
payCard: this
};
},
props: {
value: Object
value: Object,
payType: Number,
payText: String,
disabled: Boolean,
couponInfo: Object,
riskLimit: Boolean,
showCoupon: Boolean,
payCouponCouldBeUsed: Boolean,
single: { type: Boolean, default: false },
creditPay: { type: Boolean, default: false }
},
methods: {
goNavUrl() {
this.$emit('click');
}
}
data() {
return {
payList: this?.value?.payList || {}
};
},
mounted() {},
methods: {}
};
</script>
<style lang="less" scoped>
.coupon {
width: 327px;
height: 97px;
background-size: 100%;
background-image: url('../../../assets/images/pay/couponCard.png');
margin-right: @padding-sm;
padding: @padding-unit;
box-sizing: border-box;
&-face {
width: 90px;
color: @red-light;
display: inline-flex;
flex-direction: column;
align-items: center;
justify-content: center;
span {
display: block;
}
}
&-amount {
.text-30;
width: 100%;
display: flex;
flex-wrap: wrap;
word-break: break-all;
text-align: center;
font-family: PingFangSC-Medium;
&::before {
content: '¥';
.text-12;
}
}
&-name {
.text-12;
}
&-content {
width: 137px;
display: inline-flex;
flex-direction: column;
align-items: center;
justify-content: center;
span {
display: inline-block;
width: 100%;
}
}
&-desc {
.text-14;
color: @black;
overflow: hidden;
<style lang="less">
.pay-type-list {
background-color: #fff;
border-radius: @border-radius-sm;
margin-top: @padding-sm;
.type-title {
height: 48px;
.text-16;
font-weight: bold;
display: -webkit-box !important;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
overflow: hidden;
}
&-time {
.text-12;
display: flex;
color: @gray-5;
word-break: break-all;
align-items: flex-start;
}
&-action {
width: 90px;
display: inline-flex;
align-items: center;
justify-content: center;
text-align: center;
}
&-button {
width: 64px;
padding-left: @padding-md;
position: relative;
line-height: 48px;
}
}
</style>
......@@ -20,10 +20,10 @@
<p>{{ value.accountStatusDesc }}</p>
</div>
</div>
<div v-if="showCoupon && value.payType === 1 && !value.riskLimitDesc" class="coupon">
<div v-if="showCoupon && value.payType === 1" class="coupon">
<p class="couponDes" :class="{ disable: couponDisabled }" @click.stop="openCouponModal">
<span v-if="couponInfo.pickupId">
{{ `满${couponInfo.limitAmount}减${couponInfo.faceValue}元` }}
{{ `满${couponInfo.limitAmountNew}减${couponInfo.faceValueNew}元` }}
</span>
<span v-else>
未选择优惠券
......
......@@ -14,7 +14,7 @@
<div class="dashed">
<p class="dashed-line" />
<cr-image
src="../../../assets/images/pay/addicon.png"
src="@/assets/images/pay/addicon.png"
width="24px"
height="24px"
class="dashed-icon"
......
......@@ -83,8 +83,9 @@ export default {
}
},
getPhone() {
const phone = localStorage.get('userInfo')?.phoneNumber;
return phone;
const phone = localStorage.get('phoneNo');
const phoneS = `${phone}`.replace(/(\d{3})\d*(\d{4})/, '+86 $1 **** $2');
return phoneS;
},
clearTimer() {
clearInterval(this.timer);
......
This diff is collapsed.
......@@ -5,7 +5,7 @@
width="63px"
height="63px"
class="info__image"
src="../../assets/images/pay/paying.png"
src="@/assets/images/pay/paying.png"
/>
<div v-if="init" class="info__desc">
<p class="info__text">
......@@ -16,16 +16,16 @@
<p class="tips">
努力返回支付结果中,请留心查看!
</p>
<div class="actions">
<div :class="['actions', !isOrder && 'no-order']">
<cr-button
class="actions__back"
:plain="true"
type="primary"
shape="circle"
@click="goHome('正在支付')"
>返回首页</cr-button
>{{ returnUrl ? '返回秒杀' : '返回首页' }}</cr-button
>
<cr-button shape="circle" type="primary" @click="goOrderDetail('正在支付')"
<cr-button v-if="isOrder" shape="circle" type="primary" @click="goOrderDetail('正在支付')"
>查看订单</cr-button
>
</div>
......@@ -34,9 +34,9 @@
<script>
import { queryPayStatus } from '@/api/pay.api';
import cookies from '@/service/cookieStorage.service';
// import localStorage from '@/service/localStorage.service';
import { goUrlExtends } from './extends';
// import { isIOS } from '@/service/validation.service';
import { isApp } from '@/service/validation.service';
import localStorage from '@/service/localStorage.service';
export default {
components: {},
extends: goUrlExtends,
......@@ -46,20 +46,20 @@ export default {
timer: null,
time: 10,
init: false,
isWx: false
returnUrl: '',
isOrder: true
};
},
created() {
this.orderNo = this.$route.query.orderNo || cookies.get('orderNo')?.orderNo;
this.isWx = this.$route.query.isWx;
// if (!localStorage.get('isAppInner')) {
// const schema = isIOS ? 'xincheng://' : 'app://xincheng/splash';
// setTimeout(() => {
// window.location.href = schema;
// }, 2000);
// }
if (!isApp) {
setTimeout(() => {
window.location.href = 'xyqb://openApp';
}, 2000);
}
},
mounted() {
this.getQuery();
this.$dialog({
message: '请确认订单已完成支付',
confirmButtonText: '已完成支付',
......@@ -78,6 +78,12 @@ export default {
clearInterval(this.timer);
},
methods: {
getQuery() {
this.returnUrl = cookies.get('returnUrl') || '';
if (localStorage.get('hideOrder')) {
this.isOrder = false;
}
},
loop() {
this.query();
this.timer = setInterval(() => {
......@@ -95,11 +101,7 @@ export default {
this.$router.replace({ name: 'paySuccess', query: { orderNo: this.orderNo } });
},
goPay() {
if (this.isWx) {
this.$router.go(-2);
return;
}
this.$router.go(-1);
this.$router.replace({ name: 'pay', query: { orderNo: this.orderNo } });
},
async query() {
const [data, error] = await queryPayStatus({ orderNo: this.orderNo });
......@@ -166,7 +168,9 @@ export default {
flex-direction: row;
margin-top: @padding-lg;
justify-content: space-between;
&.no-order {
justify-content: center;
}
&__back {
color: @cherry-color-error;
border: 1px solid @cherry-color-error;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment