This commit is contained in:
Sliverber 2024-07-20 18:06:04 +08:00
parent 7a3dddc6ef
commit 39d758070e
4 changed files with 241 additions and 105 deletions

View File

@ -111,7 +111,7 @@
justify-content: space-around; justify-content: space-around;
border-top: 2rpx solid #95989D; border-top: 2rpx solid #95989D;
.tab{ .tab{
width: 60rpx; width: 100rpx;
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
justify-content: center; justify-content: center;

View File

@ -837,7 +837,10 @@
</view> </view>
</view> </view>
<view class="masktips" style="width: 100%;margin-top: 45rpx;"> <view class="masktips" style="width: 100%;margin-top: 45rpx;">
还车前需前往拍照确保车辆是否完好还车成功且审核通过 将退还押金 还车前需前往拍照确保车辆是否完好
</view>
<view class="masktips" style="width: 100%;margin-top: 10rpx;">
还车成功且审核通过 将退还押金
</view> </view>
<view class="tipsimg" style="margin-top: 90rpx;"> <view class="tipsimg" style="margin-top: 90rpx;">
<image src="https://lxnapi.ccttiot.com/bike/img/static/ugvqmfB3QYujZ6SnfTia" mode=""></image> <image src="https://lxnapi.ccttiot.com/bike/img/static/ugvqmfB3QYujZ6SnfTia" mode=""></image>
@ -1857,12 +1860,12 @@
this.maskepage = 0 this.maskepage = 0
this.loadimg = 'https://lxnapi.ccttiot.com/bike/img/static/uRxPPoVoqmnmng6wKlij' this.loadimg = 'https://lxnapi.ccttiot.com/bike/img/static/uRxPPoVoqmnmng6wKlij'
if (num == 1) { if (num == 1) {
if (!this.checkBeforeUnlock()) { if (!this.checkBeforeUnlock()) {
return; return;
} }
if (this.showxy) { if (this.showxy) {
if (this.areaInfo.authentication == 1) {
this.maskloading = true; this.maskloading = true;
let percentage = 0; let percentage = 0;
const interval = setInterval(() => { const interval = setInterval(() => {
@ -1877,7 +1880,6 @@
setTimeout(() => { setTimeout(() => {
this.sub1(); this.sub1();
}, 2100); }, 2100);
}
} else { } else {
uni.showToast({ uni.showToast({
title: '请勾选协议', title: '请勾选协议',

View File

@ -149,10 +149,10 @@
</view> </view>
</view> </view>
<view class="bot_btn"> <view class="bot_btn">
<view class="btn" @click="btn(0)"> <view class="btn" @click="checkbtn(0)">
开锁 开锁
</view> </view>
<view class="btn" @click="btn(1)"> <view class="btn" @click="checkbtn(1)">
关锁 关锁
</view> </view>
@ -278,7 +278,30 @@
</view> </view>
</view> </view>
</view> </view>
<u-mask :show="showbtntip" @click="closevehicle()" :z-index='100' />
<view class="tip_box" v-if="showbtntip">
<view class="top" v-if="showbtntip">
<view class="tip">
操作提示
</view>
<view class="ipt_box" style="justify-content: center;">
<view class="text" style="width: 80%;text-align: center;">
车辆有正在进行中的订单是否进行该操作
</view>
</view>
</view>
<view class="bots">
<view class="bot_left" @click="closeshowtip() ">
取消
</view>
<view class="bot_right" @click="btn(btnnum)">
确定
</view>
</view>
</view>
</view> </view>
</template> </template>
@ -350,7 +373,9 @@
bulerebort: false, bulerebort: false,
getnum:0, getnum:0,
showvehicle:false, showvehicle:false,
vehicleNum:'' vehicleNum:'',
showbtntip:false,
btnnum:null
} }
@ -385,6 +410,17 @@
}, },
methods: { methods: {
closeshowtip(){
this.showbtntip=false
},
checkbtn(num){
if(this.deviceInfos.status == 3||this.deviceInfos.status == 2||this.deviceInfos.status == 4){
this.showbtntip=true
this.btnnum=num
}else{
this.btn(num)
}
},
putvehicle(){ putvehicle(){
this.$u.put('/appVerify/device/edit?sn=' + this.sn+'&vehicleNum='+this.vehicleNum).then((res) => { this.$u.put('/appVerify/device/edit?sn=' + this.sn+'&vehicleNum='+this.vehicleNum).then((res) => {
if (res.code == 200) { if (res.code == 200) {
@ -458,6 +494,7 @@
} }
}, },
btn(num) { btn(num) {
this.showbtntip=false
if (num == 0) { if (num == 0) {
this.$u.post('/appVerify/admin/unlocking?sn=' + this.sn).then((res) => { this.$u.post('/appVerify/admin/unlocking?sn=' + this.sn).then((res) => {
@ -1121,6 +1158,8 @@
return '骑行中' return '骑行中'
} else if (this.deviceInfos.status == 4) { } else if (this.deviceInfos.status == 4) {
return '临时锁车中' return '临时锁车中'
}else if (this.deviceInfos.status == 6) {
return '调度中'
} else if (this.deviceInfos.status == 8) { } else if (this.deviceInfos.status == 8) {
return '下线' return '下线'
} }
@ -1142,8 +1181,27 @@
// } // }
this.latitude = parseFloat(this.deviceInfos.latitude) this.latitude = parseFloat(this.deviceInfos.latitude)
this.longitude = parseFloat(this.deviceInfos.longitude) this.longitude = parseFloat(this.deviceInfos.longitude)
if (this.deviceInfos.onlineStatus == 0) {
this.markers.push({
id: parseFloat(this.deviceInfos.sn),
latitude: parseFloat(this.deviceInfos.latitude),
longitude: parseFloat(this.deviceInfos.longitude),
// title: item.deviceName,
width: 40,
height: 40,
iconPath: 'https://lxnapi.ccttiot.com/bike/img/static/u4UKmB47AxOj3YKIaajM',
callout: {
content: '离线', //
color: '#ffffff', //
fontSize: 14, //
borderRadius: 10, //
bgColor: '#000000', //
padding: 6, //
display: 'ALWAYS', //
}
})
if (this.deviceInfos.status == 0) { }else if (this.deviceInfos.status == 0) {
this.markers.push({ this.markers.push({
id: parseFloat(this.deviceInfos.sn), id: parseFloat(this.deviceInfos.sn),
latitude: parseFloat(this.deviceInfos.latitude), latitude: parseFloat(this.deviceInfos.latitude),
@ -1277,27 +1335,7 @@
} }
}) })
} }
if (this.deviceInfos.onlineStatus == 0) {
this.markers.push({
id: parseFloat(this.deviceInfos.sn),
latitude: parseFloat(this.deviceInfos.latitude),
longitude: parseFloat(this.deviceInfos.longitude),
// title: item.deviceName,
width: 40,
height: 40,
iconPath: 'https://lxnapi.ccttiot.com/bike/img/static/u4UKmB47AxOj3YKIaajM',
callout: {
content: '离线', //
color: '#ffffff', //
fontSize: 14, //
borderRadius: 10, //
bgColor: '#000000', //
padding: 6, //
display: 'ALWAYS', //
}
})
}
this.$forceUpdate() this.$forceUpdate()
} }
}) })
@ -1781,7 +1819,7 @@
border-radius: 50%; border-radius: 50%;
width: 82rpx; width: 82rpx;
height: 82rpx; height: 82rpx;
z-index: 10; // z-index: 1;
.img { .img {
width: 82rpx; width: 82rpx;

View File

@ -136,29 +136,30 @@
</view> </view>
<view class="vadio_box" v-if="orderInfo.videoUrl!=''"> <view class="vadio_box" v-if="orderInfo.videoUrl!=''">
<video :src="orderInfo.videoUrl" controls="controls" <video :src="orderInfo.videoUrl" controls="controls" style="width: 100%;"
style="width: 100%;" @fullscreenchange="handleFullscreenChange"></video> @fullscreenchange="handleFullscreenChange"></video>
<view class="vadio_li"> <view class="vadio_li">
<view class="" style="width: 10rpx;"> <view class="" style="width: 10rpx;">
</view> </view>
<view class="vadio_info"> <view class="vadio_info">
提交时间02-11 15:06:45 提交时间{{orderInfo.returnTime}}
</view> </view>
</view> </view>
<view class="vadio_li"> <view class="vadio_li">
<view class="" style="width: 10rpx;"> <view class="" style="width: 10rpx;">
</view> </view>
<view class="btn_box"> <view class="btn_box" v-if="false">
<view class="vadio_btn" @click="pass()" v-if="orderInfo.status==5"> <view class="vadio_btn" @click="pass()" v-if="orderInfo.status==5">
通过 通过
</view> </view>
<view class="vadio_btn" style="background: #FF4444;" @click="unpass" v-if="orderInfo.status==5"> <view class="vadio_btn" style="background: #FF4444;" @click="unpass" v-if="orderInfo.status==5">
有损坏 有损坏
</view> </view>
<view class="vadio_btn" style="background: #64B6A8 ;" @click="showck=true" v-if="orderInfo.status==6"> <view class="vadio_btn" style="background: #64B6A8 ;" @click="showck=true"
v-if="orderInfo.status==6">
押金扣款 押金扣款
</view> </view>
<view class="vadio_btn" style="background: #64B6A8 ;" @click="callPhone"> <view class="vadio_btn" style="background: #64B6A8 ;" @click="callPhone">
@ -211,15 +212,15 @@
<view class="info_lis" v-if="item.type==1"> <view class="info_lis" v-if="item.type==1">
开锁时间<view class="text">{{ displayAmount(item.createTime)}}</view> 开锁时间<view class="text">{{ displayAmount(item.createTime)}}</view>
</view> </view>
<view class="info_lis" v-if="item.type==1"> <!-- <view class="info_lis" v-if="item.type==1">
开锁地点<view class="text"> {{ displayAmount(item.address)}}</view> 开锁地点<view class="text"> {{ displayAmount(item.address)}}</view>
</view> </view> -->
<view class="info_lis" v-if="item.type==2"> <view class="info_lis" v-if="item.type==2">
临时锁车时间<view class="text">{{ displayAmount(item.createTime)}}</view> 临时锁车时间<view class="text">{{ displayAmount(item.createTime)}}</view>
</view> </view>
<view class="info_lis" v-if="item.type==2"> <!-- <view class="info_lis" v-if="item.type==2">
临时锁车地点<view class="text">{{ displayAmount(item.address)}}</view> 临时锁车地点<view class="text">{{ displayAmount(item.address)}}</view>
</view> </view> -->
<view class="info_lis" v-if="item.type==3"> <view class="info_lis" v-if="item.type==3">
解除时间<view class="text">{{ displayAmount(item.createTime)}}</view> 解除时间<view class="text">{{ displayAmount(item.createTime)}}</view>
</view> </view>
@ -227,9 +228,9 @@
<view class="info_lis" v-if="item.type==4"> <view class="info_lis" v-if="item.type==4">
关锁时间<view class="text">{{ displayAmount(item.createTime)}}</view> 关锁时间<view class="text">{{ displayAmount(item.createTime)}}</view>
</view> </view>
<view class="info_lis" v-if="item.type==4"> <!-- <view class="info_lis" v-if="item.type==4">
关锁地点<view class="text">{{displayAmount(item.address)}}</view> 关锁地点<view class="text">{{displayAmount(item.address)}}</view>
</view> </view> -->
</view> </view>
<!-- <view class="info_li"> <!-- <view class="info_li">
@ -245,11 +246,33 @@
</view> </view>
</view> </view>
<view class="bot" v-if='orderInfo.paid==1'> <!-- <view class="bot" v-if='orderInfo.paid==1'>
<view class="btn" @click="backfee"> <view class="btn" @click="backfee">
退款 退款
</view> </view>
</view> -->
<view class="bot_btn">
<view class="btn" @click="backfee()">
退款
</view> </view>
<view class="btn" @click="pass()" v-if="orderInfo.status==5">
审核通过
</view>
<view class="btn" @click="unpass" v-if="orderInfo.status==5">
有损坏
</view>
<view class="btn" @click="showck=true"
v-if="orderInfo.status==6">
押金扣款
</view>
<view class="btn" @click="callPhone">
联系客户
</view>
</view>
<u-mask :show="showload" :z-index='100' />
<u-mask :show="show" @click="show = false" :z-index='100' /> <u-mask :show="show" @click="show = false" :z-index='100' />
<view class="tip_box" v-if="showtk"> <view class="tip_box" v-if="showtk">
<view class="top" v-if="showtk"> <view class="top" v-if="showtk">
@ -328,7 +351,8 @@
扣款金额 扣款金额
</view> </view>
<view class="ipt"> <view class="ipt">
<input type="text" v-model="money" placeholder=" " class="input" placeholder-style="color:#C7CDD3" > <input type="text" v-model="money" placeholder=" " class="input"
placeholder-style="color:#C7CDD3">
</view> </view>
</view> </view>
@ -378,7 +402,8 @@
showpark: true, showpark: true,
showck: false, showck: false,
money: '', money: '',
areaNum:1 areaNum: 1,
showload:false,
} }
@ -432,6 +457,11 @@
}, },
methods: { methods: {
ckmoney() { ckmoney() {
uni.showLoading({
title:'加载中...'
})
this.showload=true
if (this.money != '') { if (this.money != '') {
let data = { let data = {
orderNo: this.orderId, orderNo: this.orderId,
@ -440,10 +470,18 @@
audioFiles: '' audioFiles: ''
} }
this.$u.put("/appVerify/order/submitAudit", data).then((res) => { this.$u.put("/appVerify/order/submitAudit", data).then((res) => {
this.showload=false
uni.hideLoading()
if (res.code === 200) { if (res.code === 200) {
// 线 // 线
this.getOrderDetail() this.getOrderDetail()
this.showck = false this.showck = false
} else {
uni.showToast({
title: res.msg,
icon: 'none',
duration: 2000
});
} }
}).catch(error => { }).catch(error => {
this.showck = false this.showck = false
@ -459,26 +497,50 @@
}, },
unpass() { unpass() {
this.showload=true
uni.showLoading({
title:'加载中...'
})
let data = { let data = {
orderNo: this.orderId, orderNo: this.orderId,
"status": "6" "status": "6"
} }
this.$u.put("/appVerify/order/damaged", data).then((res) => { this.$u.put("/appVerify/order/damaged", data).then((res) => {
this.showload=false
if (res.code === 200) { if (res.code === 200) {
uni.hideLoading()
// 线 // 线
this.getOrderDetail() this.getOrderDetail()
} else {
uni.showToast({
title: res.msg,
icon: 'none',
duration: 2000
});
} }
}).catch(error => { }).catch(error => {
console.error("Error fetching area data:", error); console.error("Error fetching area data:", error);
}); });
}, },
pass() { pass() {
this.showload=true
uni.showLoading({
title:'加载中...'
})
this.$u.post("/appVerify/passAudit/" + this.orderId).then((res) => { this.$u.post("/appVerify/passAudit/" + this.orderId).then((res) => {
uni.hideLoading()
this.showload=false
if (res.code === 200) { if (res.code === 200) {
// 线 // 线
this.getOrderDetail() this.getOrderDetail()
} else {
uni.showToast({
title: res.msg,
icon: 'none',
duration: 2000
});
} }
}).catch(error => { }).catch(error => {
console.error("Error fetching area data:", error); console.error("Error fetching area data:", error);
@ -873,7 +935,41 @@
.page { .page {
padding-bottom: 200rpx; padding-bottom: 200rpx;
width: 750rpx; width: 750rpx;
.bot_btn {
position: fixed;
bottom: 0;
display: flex;
flex-wrap: wrap;
padding: 40rpx 18rpx;
width: 750rpx;
// height: 230rpx;
background: #fff;
// background: linear-gradient( 180deg, #FFFFFF 0%, rgba(255,255,255,0) 100%);
box-shadow: 0rpx 10rpx 64rpx 0rpx rgba(0, 0, 0, 0.08);
border-radius: 0rpx 0rpx 0rpx 0rpx;
// padding-bottom: 40rpx;
.btn:nth-child(4n) {
margin-right: 0;
}
.btn {
margin-top: 10rpx;
margin-right: 18rpx;
margin-bottom: 30rpx;
display: flex;
align-items: center;
justify-content: center;
width: 164rpx;
height: 66rpx;
background: #E2F2FF;
border-radius: 0rpx 0rpx 0rpx 0rpx;
border: 2rpx solid #4C97E7;
font-weight: 400;
font-size: 28rpx;
color: #3D3D3D;
}
}
.tip_box { .tip_box {
position: fixed; position: fixed;