我参与的去支付按钮和详情是跳转一个页面

新增抬头的输入框
新增发票的预设抬头的显示
This commit is contained in:
wangzimeng 2025-07-15 18:30:37 +08:00
parent 00a78d2e39
commit 4ff2c143af
5 changed files with 176 additions and 39 deletions

View File

@ -279,8 +279,11 @@
}, },
// //
toPay(id, order_no) { toPay(id, order_no) {
// uni.navigateTo({
// url: "/packageA/my/pendinPay?id=" + id + "&order_no=" + order_no
// })
uni.navigateTo({ uni.navigateTo({
url: "/packageA/my/pendinPay?id=" + id + "&order_no=" + order_no url: "/packageA/my/pendinPayStatus?id=" + id + "&status=" + status
}) })
}, },
// //

View File

@ -179,8 +179,7 @@
</view> </view>
</view> </view>
<!-- <view v-if="item.auth_status != 2 || item.status != 1" style="font-size: 26rpx; width: 24%;"> --> <!-- <view v-if="item.auth_status != 2 || item.status != 1" style="font-size: 26rpx; width: 24%;"> -->
<view v-if="item.status == 3 || item.status == 4"> <view v-if="item.status == 3 ">
</view> </view>
<view v-if="item.status == 4 || item.status == 5" <view v-if="item.status == 4 || item.status == 5"
style="font-size: 26rpx; width: 24%;"> style="font-size: 26rpx; width: 24%;">
@ -188,6 +187,8 @@
<text style="color: orangered;">{{ item.verification_num }}</text> <text style="color: orangered;">{{ item.verification_num }}</text>
<text>/{{ item.stock }}</text> <text>/{{ item.stock }}</text>
</view> </view>
<view v-if="item.status == 4">
</view>
<view v-if="item.status == -1 && item.auth_status == 1"> <view v-if="item.status == -1 && item.auth_status == 1">
</view> </view>

View File

@ -44,7 +44,8 @@
<image src="/static/center/address.png" mode="" class="icon-size"></image> <image src="/static/center/address.png" mode="" class="icon-size"></image>
</view> </view>
<view class="white-space" style="font-size: 26rpx;color: #222222;font-weight: 400;"> <view class="white-space" style="font-size: 26rpx;color: #222222;font-weight: 400;">
{{detail.address}}{{detail.address_detail}}</view> {{detail.address}}{{detail.address_detail}}
</view>
</view> </view>
<image src="/static/detail/daohang.png" class="icon-size" style="width: 50rpx; height: 50rpx;"> <image src="/static/detail/daohang.png" class="icon-size" style="width: 50rpx; height: 50rpx;">
</image> </image>
@ -76,14 +77,16 @@
<span>付款方式</span> <span>付款方式</span>
<span style="color: #323232;">{{detailAny.pay_type == 'wechat' ? '微信支付' : '余额'}}</span> <span style="color: #323232;">{{detailAny.pay_type == 'wechat' ? '微信支付' : '余额'}}</span>
</view> </view>
<view v-if="detailAny.paytime!=null " class="flex w-100 space-between hui align-items" style="margin-top: 30rpx;"> <view v-if="detailAny.paytime!=null " class="flex w-100 space-between hui align-items"
style="margin-top: 30rpx;">
<span>付款时间</span> <span>付款时间</span>
<span style="color: #323232;">{{ formattime(detailAny.paytime)}}</span> <span style="color: #323232;">{{ formattime(detailAny.paytime)}}</span>
</view> </view>
</view> </view>
</view> </view>
<view v-if="detailAny.server_status!=0" class="third flex flex-column" style="justify-content: flex-start;padding-bottom: 30rpx;"> <view v-if="detailAny.server_status!=0" class="third flex flex-column"
style="justify-content: flex-start;padding-bottom: 30rpx;">
<view class="third-center" v-if="detailAny.auth_reason != '' && detailAny.auth_reason != null"> <view class="third-center" v-if="detailAny.auth_reason != '' && detailAny.auth_reason != null">
<view class="flex w-100 space-between hui align-items"> <view class="flex w-100 space-between hui align-items">
@ -125,14 +128,17 @@
</view> </view>
<view class="footer align-items flex-column" style="justify-content: space-between;"> <view class="footer align-items flex-column" style="justify-content: space-between;">
<view @click="toPay(detailAny.id, detailAny.order_no)" class="footer-right flex justify-center align-items" <view class="footer-right flex justify-center align-items" @click="pament()"
v-if="detailAny.status == 0" style="color: #bbfc5b;">
<text>去支付 <u-count-down :time="detailAny.cancel_last_seconds * 1000"></u-count-down></text>
</view>
<!-- <view @click="openCancels" class="footer-right flex justify-center align-items"
v-if="detailAny.status == 0"> v-if="detailAny.status == 0">
<text>取消支付 <u-count-down :time="detailAny.cancel_last_seconds * 1000"></u-count-down></text> <view class="spans">
</view> --> 去支付 <u-count-down :time="detailAny.cancel_last_seconds*1000"></u-count-down>
</view>
</view>
<view class="footer-right1 flex justify-center align-items" @click="nobuy()"
v-if="detailAny.status == 0">
<span class="spans"> 取消订单 </span>
</view>
<view @click="service(detailAny.id)" class="footer-right flex justify-center align-items" <view @click="service(detailAny.id)" class="footer-right flex justify-center align-items"
v-if="status == 9"> v-if="status == 9">
<span> 申请售后 </span> <span> 申请售后 </span>
@ -141,7 +147,8 @@
v-if="detailAny.status == 9 && detailAny.invoice_status == 0 && detailAny.detail.feel == 0"> v-if="detailAny.status == 9 && detailAny.invoice_status == 0 && detailAny.detail.feel == 0">
<span> 开发票 </span> <span> 开发票 </span>
</view> </view>
<view @click="checkInvoice(detailAny.invoiceaplpy.id)" class="footer-right2 flex justify-center align-items" <view @click="checkInvoice(detailAny.invoiceaplpy.id)"
class="footer-right2 flex justify-center align-items"
v-if="detailAny.status == 9 && detailAny.invoice_status == 2 && detailAny.detail.feel == 0"> v-if="detailAny.status == 9 && detailAny.invoice_status == 2 && detailAny.detail.feel == 0">
<span> 查看发票 </span> <span> 查看发票 </span>
</view> </view>
@ -263,11 +270,86 @@
url: `/packageA/center/detail?id=${this.detail.activity_id}` url: `/packageA/center/detail?id=${this.detail.activity_id}`
}) })
}, },
// //
toPay(id, order_no) { pament() {
uni.navigateTo({ let that = this
url: "/packageA/my/pendinPay?id=" + id + "&order_no=" + order_no that.uloadingShow = false
uni.$u.http.post('/api/school.newactivity.pay/payment', {
type: 'wechat',
order_no: this.detailAny.order_no,
platform: 'miniapp'
}).then(res => {
if (res.code == 1) {
wx.requestPayment({
timeStamp: res.data.paydata.timeStamp, //
nonceStr: res.data.paydata.nonceStr, //
package: res.data.paydata.package, //prepay_id
signType: res.data.paydata.signType, //MD5
paySign: res.data.paydata.paySign, //
success(res) {
if (res.errMsg == "requestPayment:ok") {
that.order_no = ''
// uni.redirectTo({
// url: "/packageA/my/exercise?status=" +'2,3'
// })
uni.navigateBack();
console.log('支付成功', res)
} else {
that.uloadingShow = false
console.log('支付失败')
}
},
fail(res) {
that.uloadingShow = false
console.log('支付失败', res)
}
}) })
} else {
uni.showToast({
title: res.msg,
icon: 'none',
duration: 2000
})
// _this.$api.toast(res.msg);
}
}).catch(error => {
});
},
//
nobuy() {
let that = this;
let o = this.detailAny.order_no
uni.$u.http.post('/api/school.newactivity.order/freecancel', {
order_no: o,
}).then(res => {
if (res.code == 1) {
uni.showToast({
title: '取消成功',
icon: 'success',
duration: 2000,
complete: function() {
setTimeout(function() {
uni.navigateBack()
// uni.redirectTo({
// url: "/packageA/my/exercise"
// })
}, 2000);
}
});
} else {
uni.showToast({
title: res.msg,
icon: 'none',
duration: 2000
})
that.uloadingShow = false
// _this.$api.toast(res.msg);
}
}).catch(error => {
});
}, },
// //
service(id) { service(id) {
@ -351,13 +433,14 @@
} }
}).catch(error => {}); }).catch(error => {});
}, },
// //
toMap(latitude, longitude, name) { toMap(latitude, longitude, name) {
// ""
uni.setNavigationBarTitle({
title: '导航',
success: () => {
console.log('导航栏标题修改成功');
setTimeout(() => {
uni.openLocation({ uni.openLocation({
latitude: parseFloat(latitude), latitude: parseFloat(latitude),
longitude: parseFloat(longitude), longitude: parseFloat(longitude),
@ -366,6 +449,21 @@
console.log('success'); console.log('success');
} }
}); });
}, 300);
},
fail: (err) => {
console.log('导航栏标题修改失败', err);
}
});
// uni.openLocation({
// latitude: parseFloat(latitude),
// longitude: parseFloat(longitude),
// name: name,
// success: function() {
// console.log('success');
// }
// });
}, },
// //
@ -587,6 +685,21 @@
font-size: 36rpx; font-size: 36rpx;
color: #BBFC5B; color: #BBFC5B;
} }
.spans {
font-family: YouSheBiaoTiHei, YouSheBiaoTiHei;
font-weight: 400;
font-size: 36rpx;
color: #BBFC5B;
line-height: 100%;
display: flex;
justify-content: center;
align-items: center;
}
.u-count-down__text {
color: #BBFC5B !important;
}
} }
.footer-right2 { .footer-right2 {
@ -616,6 +729,13 @@
font-size: 36rpx; font-size: 36rpx;
color: #9C9C9C; color: #9C9C9C;
} }
.spans {
font-family: YouSheBiaoTiHei, YouSheBiaoTiHei;
font-weight: 400;
font-size: 36rpx;
color: #9C9C9C;
}
} }
} }
@ -977,6 +1097,18 @@
} }
</style> </style>
<style lang="scss"> <style lang="scss">
.footer {
// #ifdef MP-WEIXIN
.u-count-down__text {
color: #bbfc5b !important;
margin-left: 20rpx;
}
// #endif
}
.value_slide { .value_slide {
width: 50%; width: 50%;

View File

@ -75,7 +75,7 @@
</u-form-item> </u-form-item>
<u-form-item label="抬头名称" prop="invoice_header" required> <u-form-item label="抬头名称" prop="invoice_header" required>
<u-input inputAlign="right" v-model="form.invoice_header" type="number" placeholder="请输入抬头名称" <u-input inputAlign="right" v-model="form.invoice_header" placeholder="请输入抬头名称"
border="none" /> border="none" />
</u-form-item> </u-form-item>
<u-form-item label="单位税号" prop="tax_id" <u-form-item label="单位税号" prop="tax_id"

View File

@ -167,7 +167,7 @@
<u-popup :show="headShow" :round="22" mode="bottom" @close="closeHeadShow" @open="openHeadShow" <u-popup :show="headShow == true" :round="22" mode="bottom" @close="closeHeadShow" @open="openHeadShow"
:custom-style="popupStyletk"> :custom-style="popupStyletk">
<view class="popup_tkall"> <view class="popup_tkall">
<view class="popup_tk">选择预设抬头</view> <view class="popup_tk">选择预设抬头</view>
@ -384,7 +384,8 @@
console.log('order_nos:', this.order_nos,'totalPrice:',this.totalPrice); console.log('order_nos:', this.order_nos,'totalPrice:',this.totalPrice);
}, },
onShow() { onShow() {
this.headShow = false; console.log('onshow',this.headShow);
// this.headShow = false;
this.getHeadList(); this.getHeadList();
}, },
onReady() { onReady() {
@ -454,7 +455,7 @@
console.log('res:', res); console.log('res:', res);
this.headList = res.data.list this.headList = res.data.list
console.log('headlist', this.headList[2]); console.log('headlist', this.headList[2]);
this.headShow = true; // this.headShow = true;
} else { } else {
uni.showToast({ uni.showToast({
title: res.msg, title: res.msg,