<template>
|
|
<view class="receiving-item flex align-start m-b-20" :class="{ 'receiving-item--active': location.id === list.id }" @click="handleClick(list)">
|
|
<view class="m-r-20"><image class="receiving-item-image" :src="list.shopPic" mode="aspectFill"></image></view>
|
|
<view class="flex-1 overflow-hidden">
|
|
<view class="m-b-30 font-28 text-black font-weight-bold text-ellipsis">{{list.shopName}}取货点</view>
|
|
<view class="m-b-20 font-24 text-grey u-line-2">地址:{{list.address}}</view>
|
|
<view class="flex align-start justify-between">
|
|
<view class="flex align-center">
|
|
<view class="m-r-10" @click="makePhone(list.phone)">
|
|
<u-icon name="phone-fill" color="#01aeea" size="28"></u-icon>
|
|
<text class="text-grey font-24">找店热线</text>
|
|
</view>
|
|
<view>
|
|
<u-icon name="map" color="##707070" size="28" />
|
|
<text class="text-grey font-24">距您{{list.distance>1?list.distance+'km':list.distance*100+'m'}}</text>
|
|
</view>
|
|
</view>
|
|
<!-- <com-view class="receiving-item-btn flex align-center justify-center text-white font-24" >进店</com-view> -->
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import { IMG_URL } from '@/env.js'
|
|
export default {
|
|
props: {
|
|
active: {
|
|
type: Boolean,
|
|
default: false
|
|
},
|
|
list: {
|
|
type: Object,
|
|
default: () => {}
|
|
},
|
|
type: {
|
|
type: String,
|
|
default: ''
|
|
},
|
|
},
|
|
data() {
|
|
return {
|
|
IMG_URL
|
|
};
|
|
},
|
|
computed: {
|
|
location () {
|
|
return this.$store.state?.location || {}
|
|
}
|
|
},
|
|
methods: {
|
|
makePhone(phoneNumber) {
|
|
uni.makePhoneCall({ phoneNumber })
|
|
},
|
|
handleClick (item) {
|
|
let params = {
|
|
name: item.shopName,
|
|
id: item.id,
|
|
shippingAddress: item.address,
|
|
addressDetail: '',
|
|
phone: item.phone,
|
|
type: 'shop'
|
|
}
|
|
this.$store.commit('set_location', params)
|
|
uni.navigateBack({
|
|
delta: 1
|
|
})
|
|
}
|
|
}
|
|
};
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.receiving-item {
|
|
padding: 16rpx 16rpx;
|
|
background: #f5f5f5;
|
|
border-radius: 16rpx;
|
|
box-shadow: 0 6rpx 12rpx 0 rgba(0,0,0,0.16);
|
|
&--active {
|
|
background: #e0ffff;
|
|
}
|
|
&-image {
|
|
width: 230rpx;
|
|
height: 230rpx;
|
|
border-radius: 16rpx;
|
|
}
|
|
&-btn {
|
|
width: 120rpx;
|
|
height: 66rpx;
|
|
background-color: $u-type-primary;
|
|
border-radius: 12rpx;
|
|
}
|
|
}
|
|
|
|
</style>
|