<template> <view class="wrap"> <view class="car-info u-flex"> <view class="car-info-img"> <u-image src="../../../static/img/default-car.png" width="100%" height="100%"></u-image> </view> <view class="car-info-text u-flex-1"> <view class="text-item"> <view class="car">{{ orderVehicleNo }}</view> <view class="position">车位:{{orderSpaceName}}</view> </view> <view class="text-item" style="color: #3192FB;">临时卡</view> <view class="text-item u-flex u-flex u-row-between"> <view class="">余额:<span class="balance">暂无</span></view> <view class="recharge" @click="$refs.uToast.show({title: '建设中'})">充值</view> </view> <view class="text-item">类型:小车(计时)</view> </view> </view> <view class="parking-info"> <view class="parking-info-item">进场时间:{{orderInTime}}</view> <view class="parking-info-item">出场时间:{{orderOutTime}}</view> <view class="parking-info-item">停车时长:{{frontDuration}}</view> <view class="parking-info-item">进场押金:0.0元</view> </view> <view class="bottom-btn-wrap" v-if="payStatus==0"> <view class="bottom-btn-box u-flex"> <view class="bottom-btn bg-blue" @click="handleOut">出场</view> <view class="bottom-btn bg-gray" @click="openPage('pages/getout/getout')">取消</view> </view> </view> <!-- 订单细节 --> <u-modal v-model="showOrderDetails" title="温馨提示" cancel-text="取消" confirm-text="确认" :show-cancel-button="true" @confirm="confirmOut" :title-style="{color: '#404040',fontSize: '46rpx',borderBottom:'1px solid #D5D5D5',margin:'0 30rpx 30rpx',paddingBottom:'30rpx'}"> <view class="slot-content"> <rich-text class="orderDetails" :nodes="content"></rich-text> </view> </u-modal> <u-toast ref="uToast" /> </view> </template> <script> export default { data() { return { showOrderDetails:false,//是否线上订单细节 content:'', orderID:'', orderInTime:'', orderOutTime:'', orderSpaceName:'', orderVehicleNo:'', payStatus:null, } }, onLoad(page) { this.orderID = page.orderID; this.orderInTime = page.orderInTime; this.orderOutTime = page.orderOutTime; this.orderSpaceName = page.orderSpaceName; this.orderVehicleNo = page.orderVehicleNo; this.handleEntranceOutDetail(); }, onShow() { this.handleEntranceOutDetail(); }, methods:{ openPage(path) { console.log('path',path); this.$u.route({ url: path }) }, handleEntranceOutDetail(){ this.$u.api.entranceOutDetail({spaceId:this.orderID}) .then(res=>{ // this.$refs.uToast.show({ // title: res.msg, // type: 'success', // }); this.payAmount = res.data.payAmount; this.payStatus = res.data.payStatus; this.content = ` <dl><dt>停车时长:</dt> <dd>` + this.frontDuration + `</dd></dl>` + `<dl><dt>账户类型:</dt><dd>` + '暂无' + `</dd></dl>` + `<dl><dt>账户余额:</dt><dd>` + '暂无' + `</dd></dl>` + `<dl><dt>车辆类型:</dt><dd>` + '暂无' + `</dd></dl>` + `<dl><dt>押金:</dt><dd>` + '暂无' + `</dd></dl>` + `<dl><dt>应收:</dt><dd>` + res.data.payAmount + `</dd></dl>` + `<dl><dt>补交:</dt><dd><span class="u-type-warning">` + '暂无' + `<span></dd></dl>` + `<div class="tip">你是否将该车辆出场,如果是请点击确认,否则点击取消!</div>`; console.log('entranceOutDetail',res) }).catch(err=>{ this.$refs.uToast.show({ title: err.msg, type: 'error', }); console.log('entranceOutDetail ',err) }); }, handleOut(res){ this.showOrderDetails = true; }, confirmOut(){ this.$u.api.getOut({spaceId:this.orderID}) .then(res=>{ this.$refs.uToast.show({ title: res.msg, type: 'success', url:'pages/getout/getout' }); console.log('getOut',res) }).catch(err=>{ this.$refs.uToast.show({ title: err.msg, type: 'error', }); console.log('getOut ',err) }); }, timeago(inTime,outTime){ var time_start = new Date(inTime.replace(/-/g,'/')); var time_end = new Date(outTime.replace(/-/g,'/')); var clock_start = time_start.getTime(); var clock_end = time_end.getTime(); // console.log('currentTime',this.currentTime) const formatNumber = (num) => { num = num.toString() return num[1] ? num : '0' + num }; var i_total_secs = Math.round(clock_end - clock_start); //计算出相差天数 var days = Math.floor(i_total_secs / (24 * 3600 * 1000)) //计算出小时数 var leave1 = i_total_secs % (24 * 3600 * 1000) //计算天数后剩余的毫秒数 var hours = Math.floor(leave1 / (3600 * 1000)) //计算相差分钟数 var leave2 = leave1 % (3600 * 1000) //计算小时数后剩余的毫秒数 var minutes = Math.floor(leave2 / (60 * 1000)) //计算相差秒数 var leave3 = leave2 % (60 * 1000) //计算分钟数后剩余的毫秒数 var seconds = Math.round(leave3 / 1000) hours = formatNumber(hours); minutes = formatNumber(minutes); seconds = formatNumber(seconds); // console.log(days + '天' + hours + '个小时' + minutes + '分钟' + seconds + '秒'); // this.frontDuration = hours + ':' + minutes + ':' + seconds; return hours + ':' + minutes + ':' + seconds } }, computed:{ frontDuration:function(){ return this.timeago(this.orderInTime,this.orderOutTime) } } } </script> <style lang="scss"> @import "./getoutpage.scss"; </style>