|
|
|
@ -1,27 +1,29 @@ |
|
|
|
|
<template> |
|
|
|
|
<div class="app-container"> |
|
|
|
|
<el-form :model="queryParams" @submit.native.prevent ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="120px"> |
|
|
|
|
<el-form v-show="showSearch" ref="queryForm" :inline="true" :model="queryParams" label-width="120px" size="small" |
|
|
|
|
@submit.native.prevent> |
|
|
|
|
|
|
|
|
|
<el-form-item label="开始时间" prop="startTime"> |
|
|
|
|
<el-date-picker clearable |
|
|
|
|
v-model="queryParams.startTime" |
|
|
|
|
<el-date-picker v-model="queryParams.startTime" |
|
|
|
|
clearable |
|
|
|
|
placeholder="请选择开始时间" |
|
|
|
|
type="datetime" |
|
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" |
|
|
|
|
placeholder="请选择开始时间" |
|
|
|
|
> |
|
|
|
|
</el-date-picker> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="结束时间" prop="endTime"> |
|
|
|
|
<el-date-picker clearable |
|
|
|
|
v-model="queryParams.endTime" |
|
|
|
|
<el-date-picker v-model="queryParams.endTime" |
|
|
|
|
clearable |
|
|
|
|
placeholder="请选择结束时间" |
|
|
|
|
type="datetime" |
|
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" |
|
|
|
|
placeholder="请选择结束时间" |
|
|
|
|
> |
|
|
|
|
</el-date-picker> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="场馆名称" prop="venueId"> |
|
|
|
|
<auto-select v-model="queryParams.venueId" :options="venueList" @getValue="reviceValue($event,33)"></auto-select> |
|
|
|
|
<auto-select v-model="queryParams.venueId" :options="venueList" |
|
|
|
|
@getValue="reviceValue($event,33)"></auto-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="展品" prop="exhibitsId"> |
|
|
|
|
|
|
|
|
@ -32,7 +34,7 @@ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item label="数据来源" prop="dataSource"> |
|
|
|
|
<el-select v-model="queryParams.dataSource" placeholder="数据来源" clearable style="width: 240px"> |
|
|
|
|
<el-select v-model="queryParams.dataSource" clearable placeholder="数据来源" style="width: 240px"> |
|
|
|
|
<el-option v-for="dict in dict.type.data_sources" :key="dict.value" :label="dict.label" |
|
|
|
|
:value="dict.value" |
|
|
|
|
/> |
|
|
|
@ -40,11 +42,12 @@ |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="媒体渠道" prop="mediaId"> |
|
|
|
|
<auto-select v-model="queryParams.mediaId" :options="mediaChannelList" @getValue="reviceValue($event,21)"></auto-select> |
|
|
|
|
<auto-select v-model="queryParams.mediaId" :options="mediaChannelList" |
|
|
|
|
@getValue="reviceValue($event,21)"></auto-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item> |
|
|
|
|
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> |
|
|
|
|
<el-button icon="el-icon-search" size="mini" type="primary" @click="handleQuery">搜索</el-button> |
|
|
|
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-form> |
|
|
|
@ -52,25 +55,25 @@ |
|
|
|
|
<el-row :gutter="10" class="mb8"> |
|
|
|
|
<el-col :span="1.5"> |
|
|
|
|
<el-button |
|
|
|
|
type="primary" |
|
|
|
|
plain |
|
|
|
|
v-hasPermi="['marketingData:exhibitsBrowse:add']" |
|
|
|
|
icon="el-icon-plus" |
|
|
|
|
plain |
|
|
|
|
size="mini" |
|
|
|
|
type="primary" |
|
|
|
|
@click="handleAdd" |
|
|
|
|
v-hasPermi="['marketingData:exhibitsBrowse:add']" |
|
|
|
|
>新增 |
|
|
|
|
</el-button> |
|
|
|
|
</el-col> |
|
|
|
|
|
|
|
|
|
<el-col :span="1.5"> |
|
|
|
|
<el-button |
|
|
|
|
type="danger" |
|
|
|
|
plain |
|
|
|
|
v-hasPermi="['marketingData:exhibitsBrowse:remove']" |
|
|
|
|
:disabled="multiple" |
|
|
|
|
icon="el-icon-delete" |
|
|
|
|
plain |
|
|
|
|
size="mini" |
|
|
|
|
:disabled="multiple" |
|
|
|
|
type="danger" |
|
|
|
|
@click="handleDelete" |
|
|
|
|
v-hasPermi="['marketingData:exhibitsBrowse:remove']" |
|
|
|
|
>删除 |
|
|
|
|
</el-button> |
|
|
|
|
</el-col> |
|
|
|
@ -79,36 +82,36 @@ |
|
|
|
|
</el-row> |
|
|
|
|
|
|
|
|
|
<el-table v-loading="loading" :data="exhibitsBrowseList" @selection-change="handleSelectionChange"> |
|
|
|
|
<el-table-column type="selection" width="55" align="center"/> |
|
|
|
|
<el-table-column align="center" type="selection" width="55"/> |
|
|
|
|
|
|
|
|
|
<el-table-column label="统计时间" align="center" prop="statisticsTime" width="180"> |
|
|
|
|
<el-table-column align="center" label="统计时间" prop="statisticsTime" width="180"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<span>{{ parseTime(scope.row.statisticsTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column label="场馆名称" align="center" prop="venueName"/> |
|
|
|
|
<el-table-column label="展厅名称" align="center" prop="exhibitionHallName"/> |
|
|
|
|
<el-table-column label="展品名称" align="center" prop="exhibitsName"/> |
|
|
|
|
<el-table-column label="媒体渠道" align="center" prop="mediaName"/> |
|
|
|
|
<el-table-column label="浏览次数" align="center" prop="browsingTimes"/> |
|
|
|
|
<el-table-column label="停留时长 " align="center" prop="stayTime"/> |
|
|
|
|
<el-table-column label="数据来源" align="center" prop="dataSourceName"/> |
|
|
|
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
|
|
|
|
<el-table-column align="center" label="场馆名称" prop="venueName"/> |
|
|
|
|
<el-table-column align="center" label="展厅名称" prop="exhibitionHallName"/> |
|
|
|
|
<el-table-column align="center" label="展品名称" prop="exhibitsName"/> |
|
|
|
|
<el-table-column align="center" label="媒体渠道" prop="mediaName"/> |
|
|
|
|
<el-table-column align="center" label="浏览次数" prop="browsingTimes"/> |
|
|
|
|
<el-table-column align="center" label="停留时长 " prop="stayTime"/> |
|
|
|
|
<el-table-column align="center" label="数据来源" prop="dataSourceName"/> |
|
|
|
|
<el-table-column align="center" class-name="small-padding fixed-width" label="操作"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-button |
|
|
|
|
v-hasPermi="['marketingData:exhibitsBrowse:edit']" |
|
|
|
|
icon="el-icon-edit" |
|
|
|
|
size="mini" |
|
|
|
|
type="text" |
|
|
|
|
icon="el-icon-edit" |
|
|
|
|
@click="handleUpdate(scope.row)" |
|
|
|
|
v-hasPermi="['marketingData:exhibitsBrowse:edit']" |
|
|
|
|
>修改 |
|
|
|
|
</el-button> |
|
|
|
|
<el-button |
|
|
|
|
v-hasPermi="['marketingData:exhibitsBrowse:remove']" |
|
|
|
|
icon="el-icon-delete" |
|
|
|
|
size="mini" |
|
|
|
|
type="text" |
|
|
|
|
icon="el-icon-delete" |
|
|
|
|
@click="handleDelete(scope.row)" |
|
|
|
|
v-hasPermi="['marketingData:exhibitsBrowse:remove']" |
|
|
|
|
>删除 |
|
|
|
|
</el-button> |
|
|
|
|
</template> |
|
|
|
@ -117,9 +120,9 @@ |
|
|
|
|
|
|
|
|
|
<pagination |
|
|
|
|
v-show="total>0" |
|
|
|
|
:total="total" |
|
|
|
|
:page.sync="queryParams.pageNum" |
|
|
|
|
:limit.sync="queryParams.pageSize" |
|
|
|
|
:page.sync="queryParams.pageNum" |
|
|
|
|
:total="total" |
|
|
|
|
@pagination="getList" |
|
|
|
|
/> |
|
|
|
|
|
|
|
|
@ -137,8 +140,8 @@ |
|
|
|
|
> |
|
|
|
|
</el-date-picker> |
|
|
|
|
</el-form-item> |
|
|
|
|
<span style="margin: 0 5px;line-height: 36px" >-</span> |
|
|
|
|
<el-form-item prop="endTime" label-width="2"> |
|
|
|
|
<span style="margin: 0 5px;line-height: 36px">-</span> |
|
|
|
|
<el-form-item label-width="2" prop="endTime"> |
|
|
|
|
<el-date-picker v-model="form.endTime" |
|
|
|
|
clearable |
|
|
|
|
placeholder="请选择日期" |
|
|
|
@ -150,10 +153,10 @@ |
|
|
|
|
</div> |
|
|
|
|
<div style="display: flex"> |
|
|
|
|
<el-form-item label="时段划分" prop="startHour"> |
|
|
|
|
<el-input v-model="form.startHour" /> |
|
|
|
|
<el-input v-model="form.startHour"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<span style="margin: 0 5px;line-height: 36px" >-</span> |
|
|
|
|
<el-form-item prop="endHour" label-width="2"> |
|
|
|
|
<span style="margin: 0 5px;line-height: 36px">-</span> |
|
|
|
|
<el-form-item label-width="2" prop="endHour"> |
|
|
|
|
<el-input v-model="form.endHour"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
</div> |
|
|
|
@ -217,14 +220,14 @@ |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
<template v-if="isEdit==2"> |
|
|
|
|
<el-form-column label="统计时间" align="center" prop="statisticsTime" width="180"> |
|
|
|
|
<el-form-column align="center" label="统计时间" prop="statisticsTime" width="180"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<span>{{ parseTime(scope.row.statisticsTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span> |
|
|
|
|
</template> |
|
|
|
|
</el-form-column> |
|
|
|
|
<el-form-item label="展品" prop="exhibitsId"> |
|
|
|
|
<auto-select v-model="form.exhibitsId" :options="exhibitsListList" |
|
|
|
|
@getValue="reviceValue($event,32)" disabled="true" |
|
|
|
|
disabled="true" @getValue="reviceValue($event,32)" |
|
|
|
|
></auto-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="媒体渠道" prop="mediaId"> |
|
|
|
@ -264,7 +267,7 @@ import { |
|
|
|
|
updateExhibitsBrowse |
|
|
|
|
} from '@/api/marketingdata/exhibitsBrowse' |
|
|
|
|
import tickt from '../../ticket-data/ticket-check-flow/tickt' |
|
|
|
|
import { deepClone } from '@/utils' |
|
|
|
|
import {deepClone} from '@/utils' |
|
|
|
|
|
|
|
|
|
const tableData = { |
|
|
|
|
mediaId: null, |
|
|
|
@ -279,7 +282,7 @@ export default { |
|
|
|
|
mixins: [tickt], |
|
|
|
|
data() { |
|
|
|
|
return { |
|
|
|
|
isEdit:1, |
|
|
|
|
isEdit: 1, |
|
|
|
|
showAdd: true, |
|
|
|
|
change: false, |
|
|
|
|
// 遮罩层 |
|
|
|
@ -322,31 +325,31 @@ export default { |
|
|
|
|
// 表单校验 |
|
|
|
|
rules: { |
|
|
|
|
intervalMinutes: [ |
|
|
|
|
{ required: true, message: '时间间隔不得为空', trigger: 'blur' } |
|
|
|
|
{required: true, message: '时间间隔不得为空', trigger: 'blur'} |
|
|
|
|
], |
|
|
|
|
startHour: [ |
|
|
|
|
{ required: true, message: '开始小时不得为空', trigger: 'blur' } |
|
|
|
|
{required: true, message: '开始小时不得为空', trigger: 'blur'} |
|
|
|
|
], |
|
|
|
|
endHour: [ |
|
|
|
|
{ required: true, message: '结束小时不得为空', trigger: 'blur' } |
|
|
|
|
{required: true, message: '结束小时不得为空', trigger: 'blur'} |
|
|
|
|
], |
|
|
|
|
startTime: [ |
|
|
|
|
{ required: true, message: '开始时间不得为空', trigger: 'blur' } |
|
|
|
|
{required: true, message: '开始时间不得为空', trigger: 'blur'} |
|
|
|
|
], |
|
|
|
|
endTime: [ |
|
|
|
|
{ required: true, message: '结束时间不得为空', trigger: 'blur' } |
|
|
|
|
{required: true, message: '结束时间不得为空', trigger: 'blur'} |
|
|
|
|
], |
|
|
|
|
dataSource: [ |
|
|
|
|
{ required: true, message: '数据来源 1 接口 2 手工录入不能为空', trigger: 'blur' } |
|
|
|
|
{required: true, message: '数据来源 1 接口 2 手工录入不能为空', trigger: 'blur'} |
|
|
|
|
], |
|
|
|
|
exhibitsId: [ |
|
|
|
|
{ required: true, message: '展品不得为空', trigger: 'blur' } |
|
|
|
|
{required: true, message: '展品不得为空', trigger: 'blur'} |
|
|
|
|
], |
|
|
|
|
mediaId: [ |
|
|
|
|
{ required: true, message: '媒体渠道不能为空', trigger: 'blur' } |
|
|
|
|
{required: true, message: '媒体渠道不能为空', trigger: 'blur'} |
|
|
|
|
], |
|
|
|
|
organCode: [ |
|
|
|
|
{ required: true, message: '所属机构不能为空', trigger: 'blur' } |
|
|
|
|
{required: true, message: '所属机构不能为空', trigger: 'blur'} |
|
|
|
|
] |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -437,18 +440,20 @@ export default { |
|
|
|
|
handleAdd() { |
|
|
|
|
this.reset() |
|
|
|
|
this.open = true |
|
|
|
|
this.isEdit=1 |
|
|
|
|
this.isEdit = 1 |
|
|
|
|
this.title = '添加展品流量数据' |
|
|
|
|
}, |
|
|
|
|
/** 修改按钮操作 */ |
|
|
|
|
handleUpdate(row) { |
|
|
|
|
this.reset() |
|
|
|
|
this.isEdit=2 |
|
|
|
|
this.isEdit = 2 |
|
|
|
|
const id = row.id || this.ids |
|
|
|
|
getExhibitsBrowse(id).then(response => { |
|
|
|
|
this.form = response.data |
|
|
|
|
this.open = true |
|
|
|
|
this.title = '修改展品流量数据' |
|
|
|
|
}).catch(err=>{ |
|
|
|
|
console.log(err) |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
/** 提交按钮 */ |
|
|
|
@ -474,7 +479,7 @@ export default { |
|
|
|
|
/** 删除按钮操作 */ |
|
|
|
|
handleDelete(row) { |
|
|
|
|
const ids = row.id || this.ids |
|
|
|
|
this.$modal.confirm('是否确认删除展品流量数据编号为"' + ids + '"的数据项?').then(function() { |
|
|
|
|
this.$modal.confirm('是否确认删除展品流量数据编号为"' + ids + '"的数据项?').then(function () { |
|
|
|
|
return delExhibitsBrowse(ids) |
|
|
|
|
}).then(() => { |
|
|
|
|
this.getList() |
|
|
|
|