bike/page_user/ckmx.vue
2024-07-11 18:01:54 +08:00

301 lines
6.3 KiB
Vue
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<view class="page">
<u-navbar title="费用明细" :border-bottom="false" :background="bgc" title-color='#fff' title-size='36' height='45' back-icon-color='#fff'></u-navbar>
<view class="tit">
<view class="left">电单车</view>
<!-- <view class="right">查看计费规则 ></view> -->
</view>
<view class="data">
{{info.createTime}}
</view>
<view class="card">
<view class="card_tit">
账单信息
</view>
<view class="cont">
<view class="cont_box">
<view class="cont_left">
预约费
</view>
<view class="cont_right">
{{info.appointmentFee}}
</view>
</view>
<view class="cont_box" style="margin-top: 20rpx;">
<view class="cont_left">
骑行费
</view>
<view class="cont_right">
{{info.ridingFee}}
</view>
</view>
<view class="cont_box" style="margin-top: 20rpx;">
<view class="cont_left">
停车点外调度费
</view>
<view class="cont_right">
{{info.manageFee}}
</view>
</view>
<view class="cont_box" style="margin-top: 20rpx;">
<view class="cont_left">
运营区外调度费
</view>
<view class="cont_right">
{{info.dispatchFee}}
</view>
</view>
<view class="tip">
已骑行{{ rideDuration }}
</view>
</view>
<view class="price">
<view class="zhanwei"></view>
<view class="prices">
共计<span style="font-size:48rpx ;">{{info.totalFee}}</span>
</view>
</view>
</view>
<view class="card" v-if="false">
<view class="card_tit">
账单信息
</view>
<view class="cont">
<view class="cont_box">
<view class="cont_left">
起步价15分钟
</view>
<view class="cont_right">
2.00
</view>
</view>
<view class="tip">
已骑行30分9秒
</view>
</view>
<view class="price">
<view class="zhanwei"></view>
<view class="prices">
实付 <span style="font-size:48rpx ;">4.00</span>
</view>
</view>
<view class="price" style="margin-top: 0;">
<view class="zhanwei"></view>
<view class="showmore">
查看支付方式
<view class="iconfont icon-xiangxia1"></view>
</view>
</view>
<view class="info_cont">
<view class="info_left">
微信支付
</view>
<view class="info_right">
2.00
</view>
</view>
<view class="info_cont">
<view class="info_left">
支付时间
</view>
<view class="info_right">
2023-12-31 19:23:59
</view>
</view>
<view class="info_cont">
<view class="info_left">
订单号
</view>
<view class="info_right">
3915479812278489
</view>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
bgc: {
backgroundColor: "",
},
id: 0,
info: {},
rideDuration: '' // 新增属性用于存储骑行时间
}
},
onLoad(e) {
console.log(e,';eeeeeeeeeeeeeeeeee');
this.id = e.orderId
if(this.id){
this.orderInfo()
}
},
methods: {
orderInfo() {
this.$u.get("/appVerify/order/" + this.id).then((res) => {
if (res.code == 200) {
this.info = res.data
this.calculateRideDuration(); // 计算骑行时间
}
});
},
calculateRideDuration() {
const createTime = new Date(this.info.createTime);
const returnTime = new Date(this.info.returnTime);
const duration = (returnTime - createTime) / 1000; // 时间差,单位秒
const hours = Math.floor(duration / 3600);
const minutes = Math.floor((duration % 3600) / 60);
const seconds = Math.floor(duration % 60);
if (hours > 0) {
this.rideDuration = `${hours}小时${minutes}${seconds}`;
} else {
this.rideDuration = `${minutes}${seconds}`;
}
}
}
}
</script>
<style lang="scss" >
page{
background-color: #F7FAFE;
}
.page{
// width: 750rpx;
width: 750rpx;
// height: 530rpx;
background: linear-gradient( 180deg, #64B6A7 0%, rgba(255,255,255,0) 100%), #FFFFFF;
border-radius: 0rpx 0rpx 0rpx 0rpx;
.tit{
margin-left: 86rpx;
margin-right: 86rpx;
margin-top: 30rpx;
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
.left{
font-weight: 700;
font-size: 40rpx;
color: #3D3D3D;
}
.right{
font-weight: 400;
font-size: 24rpx;
color: #3D3D3D;
}
}
.data{
margin-left: 86rpx;
font-weight: 400;
font-size: 24rpx;
color: #808080;
}
.card{
padding:34rpx 44rpx ;
margin: 68rpx auto;
width: 672rpx;
// height: 458rpx;
background: #FFFFFF;
box-shadow: 0rpx 10rpx 64rpx 0rpx rgba(0,0,0,0.08);
border-radius: 32rpx 32rpx 32rpx 32rpx;
.card_tit{
width: 112rpx;
height: 38rpx;
font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
font-weight: 400;
font-size: 28rpx;
color: #3D3D3D;
background: linear-gradient( 0deg, #A7E492 0.1%, rgba(255,255,255,0) 40%), #FFFFFF;
}
.cont{
padding: 32rpx 28rpx;
margin-top: 26rpx;
width: 586rpx;
// height: 228rpx;
background: #F3F3F3;
border-radius: 26rpx 26rpx 26rpx 26rpx;
.cont_box{
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
.cont_left{
font-weight: 400;
font-size: 28rpx;
color: #3D3D3D;
}
.cont_right{
font-weight: 400;
font-size: 28rpx;
color: #3D3D3D;
}
}
.tip{
margin-top: 32rpx;
font-weight: 400;
font-size: 24rpx;
color: #808080;
}
}
.price{
margin-top: 28rpx;
display: flex;
flex-wrap: nowrap;
.prices{
margin-left: auto;
font-weight: 400;
font-size: 24rpx;
color: #3D3D3D;
span{
margin-left: 2rpx;
margin-right: 2rpx;
}
}
.showmore{
margin-left: auto;
display: flex;
flex-wrap: nowrap;
align-items: center;
font-weight: 400;
font-size: 20rpx;
color: #3D3D3D;
.icon-xiangshang1{
font-size: 20rpx;
color: #3D3D3D;
}
.icon-xiangxia1{
font-size: 20rpx;
color: #3D3D3D;
}
}
}
.info_cont{
margin-top: 12rpx;
display: flex;
flex-wrap: nowrap;
align-items: center;
justify-content: space-between;
.cont_left{
font-weight: 400;
font-size: 24rpx;
color: #3D3D3D;
}
.cont_right{
font-weight: 400;
font-size: 24rpx;
color: #3D3D3D;
}
}
}
}
</style>