|
|
@ -1,567 +0,0 @@ |
|
|
|
<template> |
|
|
|
<view> |
|
|
|
<navbar |
|
|
|
title="订单详情" |
|
|
|
leftClick |
|
|
|
@leftClick="$utils.navigateBack" |
|
|
|
/> |
|
|
|
|
|
|
|
<!-- 水洗店 --> |
|
|
|
<view class="" |
|
|
|
v-if="userShop"> |
|
|
|
<view class="controls"> |
|
|
|
<view class="title"> |
|
|
|
<image src="../static/order/icon.png" mode=""></image> |
|
|
|
服务完成 |
|
|
|
</view> |
|
|
|
<view class="tips"> |
|
|
|
待送回 |
|
|
|
</view> |
|
|
|
<view class="btns"> |
|
|
|
<view class="btn1"> |
|
|
|
快递寄回 |
|
|
|
</view> |
|
|
|
<view class="btn2"> |
|
|
|
线下配送 |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="steps"> |
|
|
|
<uv-steps |
|
|
|
activeColor="#FD5100" |
|
|
|
:current="stepsCurrent" dot> |
|
|
|
<uv-steps-item :title="item" |
|
|
|
:key="index" |
|
|
|
v-for="(item, index) in steps"></uv-steps-item> |
|
|
|
</uv-steps> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<!-- 酒店和水洗店 --> |
|
|
|
<view class="info"> |
|
|
|
<view class="flex" |
|
|
|
style="display: flex;"> |
|
|
|
<view style="width: 8rpx;height: 30rpx; |
|
|
|
background: #FD5100;border-radius: 6rpx;" /> |
|
|
|
<view class="head-title">服务项目</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="flex"> |
|
|
|
<view class="server-item"> |
|
|
|
|
|
|
|
<view class="img-box"> |
|
|
|
<image :src="msgShop.image" mode="aspectFill"></image> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="server-info"> |
|
|
|
|
|
|
|
<view class="server-title"> |
|
|
|
{{msgOrder.projectName}} |
|
|
|
<!-- <view class="coupon">领券立减</view> --> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="current-price"> |
|
|
|
<text class="unit">¥</text>{{msgOrder.money}} |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="sales-volume" style="margin-top: 5px;"> |
|
|
|
<view class="desc">规格:{{msgOrder.unit}}</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="time-coupon"> |
|
|
|
|
|
|
|
<!-- <view class="flex"> |
|
|
|
<image src="@/static/home/time-icon.png"></image> |
|
|
|
<view class="time">{{msgOrder.useTime}}分钟</view> |
|
|
|
</view> --> |
|
|
|
|
|
|
|
<!-- <view class="sales-volume"> |
|
|
|
<image src="@/static/icons/icon1.png"></image> |
|
|
|
<view class="desc">已售出{{msgShop.payNum}}+单</view> |
|
|
|
</view> --> |
|
|
|
|
|
|
|
</view> |
|
|
|
|
|
|
|
</view> |
|
|
|
|
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<!-- <view class="line min_tips"> |
|
|
|
<view class="head-div flex"> |
|
|
|
<view style="width: 118rpx;height: 118rpx;border-radius: 50%;overflow: hidden;"> |
|
|
|
<image style="width: 118rpx;" :src="msgTechnician.image" mode="widthFix"></image> |
|
|
|
</view> |
|
|
|
<view style="padding: 10rpx 34rpx;display: flex;flex-direction: column;justify-content: space-around;"> |
|
|
|
<view class="nickname"> |
|
|
|
{{msgTechnician.title}} |
|
|
|
<view v-if="msgTechnician.isVip" class="tag"> |
|
|
|
<image src="@/static/order/s.png" mode="aspectFit"></image> |
|
|
|
<view class="auth">官方认证</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="days"> |
|
|
|
<van-rate v-model="msgTechnician.score" :size="10" readonly color="#ffb54c" void-icon="star" |
|
|
|
void-color="#eee" /> |
|
|
|
<view class=""> |
|
|
|
好评{{msgTechnician.pinNum}} |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view @click="gototechnicianDetail(msgTechnician)" class="btn-x"> |
|
|
|
服务技师 |
|
|
|
</view> |
|
|
|
</view> --> |
|
|
|
|
|
|
|
<view class="line address"> |
|
|
|
<view class="address-top"> |
|
|
|
<!-- <view class=""> |
|
|
|
服务地址 |
|
|
|
</view> --> |
|
|
|
<view class="copy"> |
|
|
|
<image @click="copy(msgOrder.name + ' ' + msgOrder.phone + ' ' + msgOrder.address)" src="/static/order/copy.png"></image> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="addressDetail"> |
|
|
|
<view class="">{{msgOrder.name}} {{msgOrder.phone}}</view> |
|
|
|
<view class="">{{msgOrder.address}}</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
|
<view class="line"> |
|
|
|
<view class="t min_tips"> |
|
|
|
<view class=""> |
|
|
|
实付款 |
|
|
|
</view> |
|
|
|
<view class="current-price"> |
|
|
|
¥{{ msgOrder.money }} |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="min_tips"> |
|
|
|
<view class=""> |
|
|
|
租赁费用 |
|
|
|
</view> |
|
|
|
<view class=""> |
|
|
|
¥{{ msgOrder.price }} |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="min_tips"> |
|
|
|
<view class=""> |
|
|
|
水洗费用 |
|
|
|
</view> |
|
|
|
<view class=""> |
|
|
|
¥{{ msgOrder.price}} |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="min_tips"> |
|
|
|
<view class=""> |
|
|
|
押金 |
|
|
|
</view> |
|
|
|
<view class=""> |
|
|
|
¥{{ msgOrder.price }} |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<!-- 订单信息 --> |
|
|
|
<view class="line"> |
|
|
|
<view class="t min_tips"> |
|
|
|
<view class=""> |
|
|
|
订单信息 |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="min_tips"> |
|
|
|
<view class=""> |
|
|
|
订单编号 |
|
|
|
</view> |
|
|
|
<view class=""> |
|
|
|
{{msgOrder.id}} |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="min_tips"> |
|
|
|
<view class=""> |
|
|
|
下单时间 |
|
|
|
</view> |
|
|
|
<view class=""> |
|
|
|
{{msgOrder.createTime}} |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
|
<!-- 下单须知 --> |
|
|
|
<view class="line"> |
|
|
|
<view class="t min_tips"> |
|
|
|
<view class=""> |
|
|
|
下单须知 |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="min_tips" style="line-height: 40rpx;"> |
|
|
|
{{msgShop.projectExplain}} |
|
|
|
</view> |
|
|
|
<view class="btns"> |
|
|
|
<view @click="clickService" class="btn"> |
|
|
|
联系客服 |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</template> |
|
|
|
|
|
|
|
<script> |
|
|
|
import { mapGetters } from 'vuex' |
|
|
|
export default { |
|
|
|
computed : { |
|
|
|
...mapGetters(['userShop']), |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
stepsCurrent : 0, |
|
|
|
steps : [ |
|
|
|
'接单', |
|
|
|
'检查', |
|
|
|
'开始清洗', |
|
|
|
'服务完成', |
|
|
|
], |
|
|
|
msgShop : { |
|
|
|
money : 99.99, |
|
|
|
image : 'https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg', |
|
|
|
projectExplain : '1.xxxxxxxxxx xxxxxxxxxx。2.xxxxxx xxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx xxxxxxxxxxxxxxxx。3.。', |
|
|
|
}, |
|
|
|
msgOrder : { |
|
|
|
money : 99.99, |
|
|
|
address : '广东省广州市越秀区城南故事C3栋2802', |
|
|
|
name : '李**', |
|
|
|
phone : '150*****091', |
|
|
|
unit : '120*40*75【桌子尺寸】', |
|
|
|
state_dictText : '已完成', |
|
|
|
price : 199.99, |
|
|
|
id : '020644568964457', |
|
|
|
createTime : '2024-01-18 15:39', |
|
|
|
projectName : '桌布租赁' |
|
|
|
}, |
|
|
|
} |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
|
|
|
|
|
<style scoped lang="scss"> |
|
|
|
.order { |
|
|
|
background: linear-gradient(#4899a6, #6fc6ad, #6fc6ad); |
|
|
|
padding-bottom: 10px; |
|
|
|
} |
|
|
|
|
|
|
|
.controls{ |
|
|
|
margin: 20rpx; |
|
|
|
background-color: #fff; |
|
|
|
height: 400rpx; |
|
|
|
display: flex; |
|
|
|
flex-direction: column; |
|
|
|
width: 710rpx; |
|
|
|
border-radius: 20rpx; |
|
|
|
justify-content: center; |
|
|
|
align-items: center; |
|
|
|
.title{ |
|
|
|
display: flex; |
|
|
|
justify-content: center; |
|
|
|
align-items: center; |
|
|
|
font-size: 40rpx; |
|
|
|
image{ |
|
|
|
width: 100rpx; |
|
|
|
height: 100rpx; |
|
|
|
margin-right: 20rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
.tips{ |
|
|
|
font-size: 26rpx; |
|
|
|
color: #FD5100; |
|
|
|
margin-top: 10rpx; |
|
|
|
} |
|
|
|
.btns{ |
|
|
|
margin-top: 50rpx; |
|
|
|
display: flex; |
|
|
|
view{ |
|
|
|
margin: 0 20rpx; |
|
|
|
display: flex; |
|
|
|
justify-content: center; |
|
|
|
align-items: center; |
|
|
|
color: #fff; |
|
|
|
background-color: $uni-color; |
|
|
|
padding: 15rpx 40rpx; |
|
|
|
border-radius: 40rpx; |
|
|
|
} |
|
|
|
.btn2{ |
|
|
|
background-color: #FFFFFF; |
|
|
|
border: 1px solid #A7A7A7; |
|
|
|
color: #A7A7A7; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.steps{ |
|
|
|
margin: 20rpx; |
|
|
|
background-color: #fff; |
|
|
|
display: flex; |
|
|
|
flex-direction: column; |
|
|
|
width: 710rpx; |
|
|
|
border-radius: 20rpx; |
|
|
|
padding: 70rpx 0; |
|
|
|
/deep/ .uv-text__value{ |
|
|
|
font-size: 22rpx !important; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.box { |
|
|
|
padding: 20px; |
|
|
|
|
|
|
|
.btns { |
|
|
|
display: flex; |
|
|
|
justify-content: center; |
|
|
|
align-items: center; |
|
|
|
margin-top: 10px; |
|
|
|
|
|
|
|
.btn { |
|
|
|
color: #fff; |
|
|
|
padding: 10rpx 50rpx; |
|
|
|
background-color: #ffb300; |
|
|
|
border-radius: 30rpx; |
|
|
|
font-size: 25rpx; |
|
|
|
margin-right: 10rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.btc{ |
|
|
|
background: #ccc; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.info { |
|
|
|
margin: 10px; |
|
|
|
padding: 20rpx; |
|
|
|
background-color: #fff; |
|
|
|
width: calc(100% - 40px); |
|
|
|
border-radius: 10px; |
|
|
|
|
|
|
|
.head-title { |
|
|
|
font-family: PingFang SC, PingFang SC-Bold; |
|
|
|
color: #2f2e2e; |
|
|
|
line-height: 30rpx; |
|
|
|
margin-left: 10rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.server-item { |
|
|
|
display: flex; |
|
|
|
flex-wrap: wrap; |
|
|
|
align-items: center; |
|
|
|
justify-content: space-between; |
|
|
|
background: white; |
|
|
|
border-radius: 15rpx; |
|
|
|
box-sizing: border-box; |
|
|
|
margin: 20rpx 0rpx; |
|
|
|
width: 100%; |
|
|
|
|
|
|
|
.img-box { |
|
|
|
width: 150rpx; |
|
|
|
height: 150rpx; |
|
|
|
border-radius: 10rpx; |
|
|
|
overflow: hidden; |
|
|
|
|
|
|
|
image { |
|
|
|
width: 100%; |
|
|
|
height: 100%; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.server-info { |
|
|
|
display: flex; |
|
|
|
flex-direction: column; |
|
|
|
justify-content: space-around; |
|
|
|
width: calc(100% - 180rpx); |
|
|
|
box-sizing: border-box; |
|
|
|
padding: 10rpx 15rpx; |
|
|
|
|
|
|
|
.server-title { |
|
|
|
display: flex; |
|
|
|
margin-bottom: 10rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.coupon { |
|
|
|
display: flex; |
|
|
|
justify-content: center; |
|
|
|
align-items: center; |
|
|
|
background: #F29E45; |
|
|
|
color: white; |
|
|
|
width: 120rpx; |
|
|
|
height: 40rpx; |
|
|
|
border-radius: 10rpx; |
|
|
|
margin-left: 10rpx; |
|
|
|
font-size: 22rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.time-coupon, |
|
|
|
.price { |
|
|
|
display: flex; |
|
|
|
flex-wrap: wrap; |
|
|
|
align-items: center; |
|
|
|
} |
|
|
|
|
|
|
|
.time-coupon { |
|
|
|
margin: 10rpx 0rpx; |
|
|
|
font-size: 26rpx; |
|
|
|
justify-content: space-between; |
|
|
|
width: 100%; |
|
|
|
|
|
|
|
.flex { |
|
|
|
justify-content: center; |
|
|
|
align-items: center; |
|
|
|
} |
|
|
|
|
|
|
|
image { |
|
|
|
width: 25rpx; |
|
|
|
height: 25rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.time { |
|
|
|
color: #B8B8B8; |
|
|
|
margin-left: 6rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.sales-volume { |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
color: #B8B8B8; |
|
|
|
font-size: 24rpx; |
|
|
|
|
|
|
|
image { |
|
|
|
width: 25rpx; |
|
|
|
height: 25rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.address { |
|
|
|
|
|
|
|
.address-top{ |
|
|
|
display: flex; |
|
|
|
justify-content: space-between; |
|
|
|
align-items: center; |
|
|
|
|
|
|
|
image{ |
|
|
|
width: 30rpx; |
|
|
|
height: 30rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.addressDetail { |
|
|
|
color: #777; |
|
|
|
font-size: 22rpx; |
|
|
|
padding: 5px 0; |
|
|
|
} |
|
|
|
|
|
|
|
text { |
|
|
|
background-color: #F29E45; |
|
|
|
padding: 8rpx 10rpx; |
|
|
|
color: #fff; |
|
|
|
font-size: 20rpx; |
|
|
|
margin-left: 10px; |
|
|
|
border-radius: 5px; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.min_tips { |
|
|
|
font-size: 22rpx; |
|
|
|
color: #777; |
|
|
|
display: flex; |
|
|
|
justify-content: space-between; |
|
|
|
padding: 5px 0; |
|
|
|
align-items: center; |
|
|
|
} |
|
|
|
|
|
|
|
.current-price { |
|
|
|
font-size: 30rpx; |
|
|
|
color: #FD5100; |
|
|
|
} |
|
|
|
|
|
|
|
.line { |
|
|
|
border-top: 2px dotted #00000011; |
|
|
|
padding: 20rpx 0; |
|
|
|
|
|
|
|
.t { |
|
|
|
padding: 5px 0; |
|
|
|
color: #000; |
|
|
|
font-size: 26rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.head-div { |
|
|
|
.nickname { |
|
|
|
font-size: 30rpx; |
|
|
|
font-weight: 600; |
|
|
|
text-align: left; |
|
|
|
line-height: 42rpx; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
|
|
|
|
.tag { |
|
|
|
position: relative; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
|
|
|
|
image { |
|
|
|
height: 45rpx; |
|
|
|
width: 90rpx; |
|
|
|
vertical-align: middle; |
|
|
|
} |
|
|
|
|
|
|
|
.auth { |
|
|
|
position: absolute; |
|
|
|
white-space: nowrap; |
|
|
|
color: #FF6200; |
|
|
|
left: 23rpx; |
|
|
|
font-size: 17rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.days { |
|
|
|
font-size: 20rpx; |
|
|
|
font-weight: 400; |
|
|
|
text-align: left; |
|
|
|
line-height: 56rpx; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
|
|
|
|
view { |
|
|
|
padding-left: 5px; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.btn-x { |
|
|
|
color: #6fc6ad; |
|
|
|
border: 1px solid #6fc6ad; |
|
|
|
padding: 10rpx 20rpx; |
|
|
|
border-radius: 30rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.btns { |
|
|
|
display: flex; |
|
|
|
justify-content: center; |
|
|
|
|
|
|
|
.btn { |
|
|
|
color: #6fc6ad; |
|
|
|
border: 1px solid #6fc6ad; |
|
|
|
padding: 10rpx 20rpx; |
|
|
|
border-radius: 30rpx; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
</style> |