<template>
|
<GlobalWindow
|
:title="title"
|
:visible.sync="visible"
|
:confirm-working="isWorking"
|
@confirm="confirm"
|
>
|
<div class="shop-message">
|
<el-image
|
style="margin-right: 20px; width: 160px; height: 160px; border-radius: 2px;"
|
:src="form.imgFullUrl"
|
:preview-src-list="[form.imgFullUrl]"
|
></el-image>
|
<div style="flex:1">
|
<div class="shop-name">
|
{{ form.name }} <span>评分:{{ form.score || 0 }}分</span>
|
</div>
|
<el-descriptions direction="horizontal" :column="1">
|
<el-descriptions-item label="营业时间">{{ `${form.startTime} ~ ${form.endTime}` }}</el-descriptions-item>
|
<el-descriptions-item label="门店地址">{{ form.addr }}</el-descriptions-item>
|
<el-descriptions-item label="门店标签">{{ form.productList.map(item => item.lablesName).join(' | ') }}</el-descriptions-item>
|
<el-descriptions-item label="门店介绍">{{ form.info }}</el-descriptions-item>
|
</el-descriptions>
|
</div>
|
</div>
|
<div class="shop-data">
|
<div class="title-style">店铺数据</div>
|
<div class="data-detail">
|
<div class="detail-title detail-item">店铺数据</div>
|
<div class="detail-item data">
|
<div>主页总访问量</div>
|
<div class="data-num">{{ form.shopTotalVisits }}</div>
|
</div>
|
<div class="detail-item data">
|
<div>今日总访问量</div>
|
<div class="data-num">{{ form.shopNowVisits }}</div>
|
</div>
|
<div class="detail-item data">
|
<div>昨日总访问量</div>
|
<div class="data-num">{{ form.shopYesterdayVisits }}</div>
|
</div>
|
<div class="detail-item data">
|
<div>访问总用户数</div>
|
<div class="data-num">{{ form.shopMemberVisits }}</div>
|
</div>
|
</div>
|
<div class="data-detail">
|
<div class="detail-title detail-item">店铺互动数据</div>
|
<div class="detail-item data">
|
<div>粉丝数</div>
|
<div class="data-num">{{ form.shopFollower }}</div>
|
</div>
|
<div class="detail-item data">
|
<div>菜品数</div>
|
<div class="data-num">{{ form.shopMenu }}</div>
|
</div>
|
<div class="detail-item data">
|
<div>评论数</div>
|
<div class="data-num">{{ form.shopComment }}</div>
|
</div>
|
<div class="detail-item data">
|
<div>新鲜事</div>
|
<div class="data-num">{{ form.shopNews }}</div>
|
</div>
|
</div>
|
<div class="data-detail">
|
<div class="detail-title detail-item">优惠券数据</div>
|
<div class="detail-item data">
|
<div>优惠券发放总数(张)</div>
|
<div class="data-num">{{ form.couponCount }}</div>
|
</div>
|
<div class="detail-item data">
|
<div>优惠券领取总数(张)</div>
|
<div class="data-num">{{ form.couponDrawCount }}</div>
|
</div>
|
<div class="detail-item data">
|
<div>优惠券使用总数(张)</div>
|
<div class="data-num">{{ form.couponUserComment }}</div>
|
</div>
|
<div class="detail-item data">
|
<div>优惠券使用金额(元)</div>
|
<div class="data-num">{{ form.couponUserMoney }}</div>
|
</div>
|
</div>
|
</div>
|
<div slot="footer"></div>
|
</GlobalWindow>
|
</template>
|
|
<script>
|
import BaseOpera from '@/components/base/BaseOpera'
|
import GlobalWindow from '@/components/common/GlobalWindow'
|
import { shopDetail } from '@/api/business/shop'
|
export default {
|
name: 'OperaCouponWindow',
|
extends: BaseOpera,
|
components: { GlobalWindow },
|
data () {
|
|
return {
|
getDate: [],
|
// 表单数据
|
form: {
|
id: '',
|
creator: '',
|
createDate: '',
|
editor: '',
|
editDate: '',
|
isdeleted: '',
|
remark: '',
|
imgurl: '',
|
name: '',
|
realname: '',
|
sex: '',
|
phone: '',
|
idcard: '',
|
idcardImg: '',
|
idcardImgBack: '',
|
businessImg: '',
|
status: 0,
|
longitude: '',
|
latitude: '',
|
areaId: '',
|
addr: '',
|
info: null,
|
origin: '',
|
isrec: '',
|
memberId: '',
|
applyId: '',
|
sortnum: '',
|
looknum: '',
|
startTime: '',
|
endTime: '',
|
brandStory: '',
|
memberImgurl: '',
|
nickName: null,
|
memberPhone: null,
|
imgFullUrl: '',
|
score: null,
|
shopTotalVisits: 0,
|
shopNowVisits: 0,
|
shopYesterdayVisits: 0,
|
shopMemberVisits: 0,
|
shopFollower: 0,
|
shopMenu: 0,
|
shopComment: 0,
|
starNum: null,
|
shopNews: 0,
|
couponCount: 0,
|
couponDrawCount: 0,
|
couponUserComment: 0,
|
couponUserMoney: null,
|
productList: []
|
},
|
|
}
|
},
|
created () {
|
this.config({
|
api: '/business/shop',
|
'field.id': 'id'
|
})
|
},
|
methods: {
|
open (title, target) {
|
// debugger
|
this.title = title
|
this.visible = true
|
// this.isEdit = false
|
this.form.imgurlfull = ''
|
this.form.imgurl = ''
|
// 新建
|
if (target == null) {
|
this.$nextTick(() => {
|
this.$refs.form.resetFields()
|
this.form[this.configData['field.id']] = null
|
})
|
return
|
}
|
// 编辑
|
this.$nextTick(() => {
|
|
// for (const key in this.form) {
|
// this.form[key] = target[key]
|
// }
|
this.getDetail(target.id)
|
})
|
},
|
getDetail(id) {
|
shopDetail(id)
|
.then(res => {
|
console.log(res);
|
this.form = res
|
})
|
.catch(e => {
|
this.$tip.error(e)
|
})
|
}
|
},
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
.shop-message {
|
display: flex;
|
padding: 20px;
|
.shop-name {
|
font-weight: 500;
|
span {
|
font-weight: normal
|
}
|
margin-bottom: 20px;
|
}
|
}
|
.shop-data {
|
border-top: 2px solid #666;
|
padding: 20px;
|
.title-style {
|
font-weight: 500;
|
font-size: 20px;
|
}
|
.data-detail {
|
margin-top: 20px;
|
border: 1px solid #222;
|
height: 200px;
|
display: flex;
|
.detail-item {
|
flex: 1;
|
text-align: center;
|
}
|
.detail-title {
|
line-height: 200px;
|
background-color: rgb(231, 233, 245);
|
font-size: 24px;
|
font-weight: 500;
|
}
|
.data {
|
margin: auto 0;
|
.data-num {
|
font-size: 28px;
|
font-weight: 600;
|
}
|
}
|
}
|
}
|
</style>
|