307 lines
5.4 KiB
Vue
307 lines
5.4 KiB
Vue
<template>
|
|
<view class="page">
|
|
<view class="express">
|
|
<view class="shop">
|
|
<image :src="img" mode="aspectFit" class="express-img"></image>
|
|
</view>
|
|
<view class="express-detail">
|
|
<view class="status">{{wlInfo.logisticsStatus == 1 ? '已签收' : '配送中'}}</view>
|
|
<view class="name">{{name}}</view>
|
|
<view class="no">{{wlInfo.brand}} <text>{{wlInfo.no}}</text></view>
|
|
</view>
|
|
</view>
|
|
|
|
<!-- 收货地址 -->
|
|
<view class="content bgf">
|
|
<view>
|
|
<view class="flex list">
|
|
<!-- <view class="time"></view> -->
|
|
<view class="info flex1">
|
|
<view class="title address">[收货地址]{{address}}</view>
|
|
</view>
|
|
</view>
|
|
<!-- :class="{one: index+1 == wlInfo.item.length && wlInfo.delivery_status == 1}" -->
|
|
<view class="flex list" v-for="(item, index) in wlInfo.items" :key="index" :class="{one: index == 0}">
|
|
<!-- <view class="time">
|
|
<view class="day">{{item.time.split(' ')[0]}}</view>
|
|
<view>{{item.time.split(' ')[1]}}</view>
|
|
</view> -->
|
|
<view class="info flex1">
|
|
<view class="title" :class="{active:index == 0 && logisticsStatus == 1}">{{index == 0 && logisticsStatus == 1 ? '已签收' : '配送中'}}</view>
|
|
<view class="time-new">{{item.time.split(' ')[0]}} {{item.time.split(' ')[1]}}</view>
|
|
<view class="text">{{item.context}}</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
props: {
|
|
wlInfo: {
|
|
type: Object,
|
|
default: () => ({})
|
|
},
|
|
img:{
|
|
type:String,
|
|
default:''
|
|
},
|
|
name:{
|
|
type:String,
|
|
default:''
|
|
},
|
|
address:{
|
|
type:String,
|
|
default:''
|
|
},
|
|
logisticsStatus:{
|
|
type:Number,
|
|
default:0
|
|
}
|
|
},
|
|
data() {
|
|
return {}
|
|
},
|
|
|
|
mounted() {
|
|
console.log(this.wlInfo)
|
|
},
|
|
|
|
methods: {
|
|
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.page {
|
|
max-height: 100vh;
|
|
/* #ifdef H5 */
|
|
max-height: calc(100vh - 44px);
|
|
/* #endif */
|
|
font-size: 24rpx;
|
|
background-color: #fff;
|
|
padding: 0 32rpx;
|
|
// overflow-y: auto;
|
|
}
|
|
|
|
/*flex 转换成flex容器*/
|
|
.flex {
|
|
display: flex;
|
|
flex-direction: row;
|
|
}
|
|
|
|
/*flex1 自动填充*/
|
|
.flex1 {
|
|
flex: 1;
|
|
}
|
|
|
|
/*ali-c 竖直居中*/
|
|
.ali-c {
|
|
display: flex;
|
|
flex-direction: row;
|
|
align-items: center;
|
|
}
|
|
|
|
.bgf {
|
|
background-color: #fff;
|
|
}
|
|
|
|
.express{
|
|
display: flex;
|
|
align-items: center;
|
|
padding-bottom: 32rpx;
|
|
border-bottom: 1px solid #F2F2F2;
|
|
.shop{
|
|
width: 160rpx;
|
|
height: 160rpx;
|
|
border-radius: 0 24rpx 24rpx 0;
|
|
background-image: url('@/static/new/shop-bg.png');
|
|
background-size: contain;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
.express-img{
|
|
width: 142rpx;
|
|
height: 132rpx;
|
|
}
|
|
}
|
|
.express-detail{
|
|
margin-left: 24rpx;
|
|
.status{
|
|
font-weight: bold;
|
|
font-size: 32rpx;
|
|
color: #000000;
|
|
}
|
|
.name{
|
|
width: 500rpx;
|
|
font-weight: 500;
|
|
font-size: 24rpx;
|
|
color: #999999;
|
|
margin-top: 24rpx;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
}
|
|
.no{
|
|
width: 500rpx;
|
|
margin-top: 8rpx;
|
|
font-weight: 500;
|
|
font-size: 24rpx;
|
|
color: #999999;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
}
|
|
}
|
|
}
|
|
|
|
//收货地址
|
|
.content {
|
|
// margin: 20rpx;
|
|
padding: 56rpx 0rpx 56rpx 0rpx;
|
|
border-radius: 20rpx;
|
|
|
|
.list {
|
|
&:first-child {
|
|
.info::before {
|
|
bottom: -20rpx;
|
|
margin-top: 40rpx;
|
|
border-left: 1px dashed #e5e5e5;
|
|
}
|
|
|
|
.title {
|
|
margin-bottom: 56rpx;
|
|
|
|
&::before {
|
|
width: 46rpx;
|
|
height: 46rpx;
|
|
left: -23rpx;
|
|
display:flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
background-image: url('@/static/new/mine/sh.png');
|
|
background-size: 46rpx 46rpx;
|
|
}
|
|
}
|
|
}
|
|
|
|
&:last-child {
|
|
.info::before {
|
|
height: 32rpx;
|
|
}
|
|
}
|
|
|
|
&.one {
|
|
.info::before {
|
|
margin-top: 20rpx;
|
|
}
|
|
|
|
.title {
|
|
color: #1a1a1a;
|
|
|
|
&::before {
|
|
width: 46rpx;
|
|
height: 46rpx;
|
|
left: -23rpx;
|
|
background: url('@/static/new/mine/yun.png') no-repeat center;
|
|
background-size: 46rpx 46rpx;
|
|
}
|
|
}
|
|
.active{
|
|
color: #1a1a1a;
|
|
|
|
&::before {
|
|
width: 46rpx;
|
|
height: 46rpx;
|
|
left: -23rpx;
|
|
background: url('@/static/new/mine/pai.png') no-repeat center;
|
|
background-size: 46rpx 46rpx;
|
|
}
|
|
}
|
|
|
|
.text {
|
|
color: #333333;
|
|
}
|
|
|
|
.time {
|
|
font-size: 16rpx;
|
|
color: #888;
|
|
|
|
.day {
|
|
font-size: 22rpx;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.time {
|
|
width: 100rpx;
|
|
padding-right: 30rpx;
|
|
text-align: right;
|
|
font-size: 16rpx;
|
|
color: #888888;
|
|
|
|
.day {
|
|
margin-bottom: 4rpx;
|
|
font-size: 22rpx;
|
|
color: #333333;
|
|
}
|
|
}
|
|
|
|
.info {
|
|
position: relative;
|
|
padding-top: 12rpx;
|
|
color: #999;
|
|
|
|
|
|
&::before {
|
|
content: "";
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
bottom: 0;
|
|
z-index: 1;
|
|
width: 0;
|
|
border-left: 1px solid #e5e5e5;
|
|
}
|
|
|
|
.title {
|
|
position: relative;
|
|
margin-bottom: 10rpx;
|
|
padding-left: 32rpx;
|
|
font-size: 28rpx;
|
|
|
|
&::before {
|
|
content: "";
|
|
position: absolute;
|
|
left: -3px;
|
|
top: 0;
|
|
bottom: 0;
|
|
z-index: 1;
|
|
width: 7px;
|
|
height: 7px;
|
|
margin: auto 0;
|
|
border-radius: 50%;
|
|
background-color: #cecece;
|
|
}
|
|
|
|
&.address {
|
|
font-size: 24rpx;
|
|
color: #333;
|
|
}
|
|
}
|
|
|
|
.text {
|
|
padding: 0 0 44rpx 32rpx;
|
|
}
|
|
}
|
|
.time-new{
|
|
padding-left: 30rpx;
|
|
padding-bottom: 10rpx;
|
|
}
|
|
}
|
|
</style>
|