百富门答题小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

214 lines
3.6 KiB

<template>
<view class="pagea">
<navbar
title="预约列表"
leftClick
@leftClick="$utils.navigateBack" />
<!-- <uv-tabs :list="tabs"
:activeStyle="{color : '#FD5100', fontWeight : 600}"
lineColor="#FD5100"
lineHeight="8rpx"
lineWidth="50rpx"
@click="clickTabs"></uv-tabs> -->
<view class="list">
<view class="item"
v-for="(item, index) in list"
@click="toOrderDetail(item.id)"
:key="index">
<view class="top">
<view class="service">
<text>预约日期{{item.yearValue}}-{{item.monthDay}}</text>
</view>
<view class="status">
<text>{{ tabs[item.state].name }}</text>
</view>
</view>
<view class="contenta">
<view class="left"
v-if="item.image">
<image mode="aspectFill" :src="item.image"></image>
</view>
<view class="right">
<view class="text-hidden-1">
客户姓名{{item.name}}
</view>
<view class="text-hidden-1">
电话{{item.phone}}
</view>
<view class="text-hidden-1">
预约时间{{item.dayTime}}
</view>
</view>
</view>
<view class="bottom">
地址{{ item.province }}
{{ item.city }}
{{ item.area }}
{{ item.address }}
</view>
<view class="bottom">
<view></view>
<view class="b2"
v-if="item.state == 1"
@click.stop="toEvaluate(item.id)">
去评价
</view>
</view>
</view>
</view>
</view>
</template>
<script>
import { mapGetters } from 'vuex'
import mixinsList from '@/mixins/list.js'
export default {
mixins : [mixinsList],
components : {
},
computed : {
},
data() {
return {
tabs: [
{
name: '待上门'
},
{
name: '待评价'
},
{
name: '已完成'
},
],
mixinsListApi : 'queryReservation',
}
},
onShow() {
},
methods: {
//点击tab栏
clickTabs(index) {
if (index == 0) {
} else {
}
this.queryParams.pageSize = 10
this.getData()
},
//跳转订单详情页面
toOrderDetail(id) {
uni.navigateTo({
url: '/pages_order/info/appoint?id=' + id
})
},
// 去评价
toEvaluate(id){
// uni.navigateTo({
// url: '/pages/index/review?oid=' + id
// })
this.$store.commit('getAnswerList', id)
},
}
}
</script>
<style scoped lang="scss">
.pagea{
}
.list {
.item {
width: calc(100% - 40rpx);
background-color: #fff;
margin: 20rpx;
box-sizing: border-box;
border-radius: 16rpx;
padding: 30rpx;
.top {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 26rpx;
.service {}
.status {
font-size: 26rpx;
font-weight: 600;
}
}
.contenta {
display: flex;
margin: 10rpx 0;
.left {
width: 150rpx;
height: 150rpx;
border-radius: 10rpx;
image {
width: 150rpx;
height: 150rpx;
border-radius: 10rpx;
}
}
.right {
flex: 1;
color: #777;
font-size: 24rpx;
padding-left: 20rpx;
line-height: 40rpx;
background-color: #F8F8F8;
}
}
.bottom {
display: flex;
justify-content: space-between;
font-size: 25rpx;
.price {
font-weight: 900;
text {
color: #ff780099;
font-size: 30rpx;
}
}
.b1 {
border: 1px solid #777;
color: #777;
box-sizing: border-box;
}
.b2 {
background: linear-gradient(178deg, #ecb86488, #ecb864);
color: #fff;
}
view {
margin: 12rpx;
border-radius: 28rpx;
padding: 8rpx 28rpx;
margin-bottom: 0;
}
}
}
}
</style>