|
|
|
|
@ -1,10 +1,10 @@
|
|
|
|
|
<template>
|
|
|
|
|
<div class="app-container">
|
|
|
|
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
|
|
|
|
<el-form-item label="弹窗状态" prop="operate">
|
|
|
|
|
<el-form-item label="轮播状态" prop="operate">
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="queryParams.operate"
|
|
|
|
|
placeholder="请选择弹窗状态"
|
|
|
|
|
placeholder="请选择轮播图状态"
|
|
|
|
|
:style="{ width: '100%' }"
|
|
|
|
|
clearable
|
|
|
|
|
>
|
|
|
|
|
@ -13,32 +13,19 @@
|
|
|
|
|
<el-option label="关闭" value="2" />
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="弹窗类型" prop="openType">
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="queryParams.openType"
|
|
|
|
|
placeholder="请选择弹窗类型"
|
|
|
|
|
:style="{ width: '100%' }"
|
|
|
|
|
clearable
|
|
|
|
|
>
|
|
|
|
|
<el-option label="全部" value="" />
|
|
|
|
|
<el-option label="首页" value="1" />
|
|
|
|
|
<el-option label="发现模块" value="2" />
|
|
|
|
|
<el-option label="我的模块" value="3" />
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="开启时间" prop="siteStartTime">
|
|
|
|
|
<el-date-picker clearable
|
|
|
|
|
v-model="queryParams.siteStartTime"
|
|
|
|
|
type="date"
|
|
|
|
|
value-format="yyyy-MM-dd HH:mm"
|
|
|
|
|
type="datetime"
|
|
|
|
|
value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
|
|
placeholder="请选择开启开始时间">
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="" prop="siteEndTime">
|
|
|
|
|
<el-date-picker clearable
|
|
|
|
|
v-model="queryParams.siteEndTime"
|
|
|
|
|
type="date"
|
|
|
|
|
value-format="yyyy-MM-dd HH:mm"
|
|
|
|
|
type="datetime"
|
|
|
|
|
value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
|
|
placeholder="请选择开启结束时间">
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
@ -105,7 +92,7 @@
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="轮播封面" align="center" prop="fileUrl" >
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-image :src="scope.row.fileUrl" style="width: 60px;height: 80px">
|
|
|
|
|
<el-image :src="scope.row.fileUrl" style="width: 60px;height: 80px" :preview-src-list="[scope.row.fileUrl]">
|
|
|
|
|
<div slot="placeholder" class="image-slot"><span class="dot"></span>
|
|
|
|
|
</div>
|
|
|
|
|
</el-image>
|
|
|
|
|
@ -134,6 +121,13 @@
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="仪器" align="center" prop="machineName" />
|
|
|
|
|
<el-table-column label="打卡显示活动" align="center" prop="signNumber" />
|
|
|
|
|
<el-table-column label="用户类型" align="center" prop="userType" >
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span v-show="scope.row.userType == 0">全部</span>
|
|
|
|
|
<span v-show="scope.row.userType == 1">游客</span>
|
|
|
|
|
<span v-show="scope.row.userType == 2">会员</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="跳转类型" align="center" prop="type" >
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span v-show="scope.row.type == 0">无跳转</span>
|
|
|
|
|
@ -144,6 +138,11 @@
|
|
|
|
|
<span v-show="scope.row.type == 5">导向视频号直播间</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="创建时间" align="center" prop="createTime" width="160">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span>{{ parseTime(scope.row.createTime) }}</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-button
|
|
|
|
|
@ -220,7 +219,7 @@
|
|
|
|
|
</el-upload>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="标题" prop="siteName">
|
|
|
|
|
<el-input v-model="form.siteName" placeholder="请输入标题" style="width: 80%" />
|
|
|
|
|
<el-input v-model="form.siteName" placeholder="请输入标题" style="width: 80%" maxlength="21" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="开启时间" prop="siteStartTime">
|
|
|
|
|
<el-date-picker
|
|
|
|
|
@ -244,40 +243,40 @@
|
|
|
|
|
end-placeholder="结束日期">
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="弹窗类型" prop="openType">
|
|
|
|
|
<el-select v-model="form.openType">
|
|
|
|
|
<el-option label="首页" :value="1" :key="1"></el-option>
|
|
|
|
|
<el-option label="发现模块" :value="2" :key="2"></el-option>
|
|
|
|
|
<el-option label="活动模块" :value="3" :key="3"></el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="推送次数" prop="pushNumber">
|
|
|
|
|
<el-radio-group v-model="form.pushType">
|
|
|
|
|
<el-radio :label="1">永久一次</el-radio>
|
|
|
|
|
<el-radio :label="2">每次进入</el-radio>
|
|
|
|
|
<el-radio :label="3">自定义频次</el-radio>
|
|
|
|
|
</el-radio-group>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-row>
|
|
|
|
|
<el-col :span = "12">
|
|
|
|
|
<el-form-item label="每天" prop="pushNumber" v-if="form.pushType==3">
|
|
|
|
|
<el-input-number v-model="form.pushNumber" :min="1" :max="10" label="请选择多少次"></el-input-number>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span = "12">
|
|
|
|
|
<el-form-item label="推送时间" prop="pushTimer" v-if="form.pushType==3">
|
|
|
|
|
<el-select v-model="form.pushTimerArray" multiple placeholder="请选择" size="small">
|
|
|
|
|
<el-option label="星期一" :value="1" :key="1"></el-option>
|
|
|
|
|
<el-option label="星期二" :value="2" :key="2"></el-option>
|
|
|
|
|
<el-option label="星期三" :value="3" :key="3"></el-option>
|
|
|
|
|
<el-option label="星期四" :value="4" :key="4"></el-option>
|
|
|
|
|
<el-option label="星期五" :value="5" :key="5"></el-option>
|
|
|
|
|
<el-option label="星期六" :value="6" :key="6"></el-option>
|
|
|
|
|
<el-option label="星期日" :value="7" :key="7"></el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<!-- <el-form-item label="弹窗类型" prop="openType">-->
|
|
|
|
|
<!-- <el-select v-model="form.openType">-->
|
|
|
|
|
<!-- <el-option label="首页" :value="1" :key="1"></el-option>-->
|
|
|
|
|
<!-- <el-option label="发现模块" :value="2" :key="2"></el-option>-->
|
|
|
|
|
<!-- <el-option label="活动模块" :value="3" :key="3"></el-option>-->
|
|
|
|
|
<!-- </el-select>-->
|
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
|
<!-- <el-form-item label="推送次数" prop="pushNumber">-->
|
|
|
|
|
<!-- <el-radio-group v-model="form.pushType">-->
|
|
|
|
|
<!-- <el-radio :label="1">永久一次</el-radio>-->
|
|
|
|
|
<!-- <el-radio :label="2">每次进入</el-radio>-->
|
|
|
|
|
<!-- <el-radio :label="3">自定义频次</el-radio>-->
|
|
|
|
|
<!-- </el-radio-group>-->
|
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
|
<!-- <el-row>-->
|
|
|
|
|
<!-- <el-col :span = "12">-->
|
|
|
|
|
<!-- <el-form-item label="每天" prop="pushNumber" v-if="form.pushType==3">-->
|
|
|
|
|
<!-- <el-input-number v-model="form.pushNumber" :min="1" :max="10" label="请选择多少次"></el-input-number>-->
|
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
|
<!-- </el-col>-->
|
|
|
|
|
<!-- <el-col :span = "12">-->
|
|
|
|
|
<!-- <el-form-item label="推送时间" prop="pushTimer" v-if="form.pushType==3">-->
|
|
|
|
|
<!-- <el-select v-model="form.pushTimerArray" multiple placeholder="请选择" size="small">-->
|
|
|
|
|
<!-- <el-option label="星期一" :value="1" :key="1"></el-option>-->
|
|
|
|
|
<!-- <el-option label="星期二" :value="2" :key="2"></el-option>-->
|
|
|
|
|
<!-- <el-option label="星期三" :value="3" :key="3"></el-option>-->
|
|
|
|
|
<!-- <el-option label="星期四" :value="4" :key="4"></el-option>-->
|
|
|
|
|
<!-- <el-option label="星期五" :value="5" :key="5"></el-option>-->
|
|
|
|
|
<!-- <el-option label="星期六" :value="6" :key="6"></el-option>-->
|
|
|
|
|
<!-- <el-option label="星期日" :value="7" :key="7"></el-option>-->
|
|
|
|
|
<!-- </el-select>-->
|
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
|
<!-- </el-col>-->
|
|
|
|
|
<!-- </el-row>-->
|
|
|
|
|
<el-form-item label="可见小程序标签" prop="showWechatTagId" label-width="120px">
|
|
|
|
|
<treeselect v-model="form.showWechatTagArray" :options="chatTagOptions" :multiple="true" :show-count="true" placeholder="请选择小程序标签" :disable-branch-nodes="true" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
@ -291,30 +290,30 @@
|
|
|
|
|
<treeselect v-model="form.forbidCompanyTagArray" :options="tagOptions" :multiple="true" :show-count="true" placeholder="请选择企微标签" :disable-branch-nodes="true" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-row>
|
|
|
|
|
<el-col :span = "12">
|
|
|
|
|
<el-form-item label="所属渠道" prop="channelId">
|
|
|
|
|
<el-select v-model="form.channelArray" multiple placeholder="请选择">
|
|
|
|
|
<!-- <el-col :span = "12">-->
|
|
|
|
|
<!-- <el-form-item label="所属渠道" prop="channelId">-->
|
|
|
|
|
<!-- <el-select v-model="form.channelArray" multiple placeholder="请选择">-->
|
|
|
|
|
<!-- <el-option-->
|
|
|
|
|
<!-- v-for="item in channelList"-->
|
|
|
|
|
<!-- :key="item.id"-->
|
|
|
|
|
<!-- :label="item.channelName"-->
|
|
|
|
|
<!-- :value="item.id">-->
|
|
|
|
|
<!-- </el-option>-->
|
|
|
|
|
<!-- </el-select>-->
|
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
|
<!-- </el-col>-->
|
|
|
|
|
<el-col :span = "24">
|
|
|
|
|
<el-form-item label="仪器" prop="channelId">
|
|
|
|
|
<el-select v-model="form.machineArray" multiple placeholder="请选择" style="width: 80%">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in channelList"
|
|
|
|
|
:key="item.id"
|
|
|
|
|
:label="item.channelName"
|
|
|
|
|
:value="item.id">
|
|
|
|
|
</el-option>
|
|
|
|
|
v-for="instrument in instrumentList"
|
|
|
|
|
:key="instrument.id"
|
|
|
|
|
:label="instrument.name"
|
|
|
|
|
:value="instrument.id"
|
|
|
|
|
></el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span = "12">
|
|
|
|
|
<el-form-item label="仪器" prop="channelId">
|
|
|
|
|
<el-select v-model="form.machineArray" multiple placeholder="请选择">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in channelList"
|
|
|
|
|
:key="item.id"
|
|
|
|
|
:label="item.channelName"
|
|
|
|
|
:value="item.id">
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row>
|
|
|
|
|
<el-col :span = "12">
|
|
|
|
|
@ -412,12 +411,15 @@ import {getToken} from "@/utils/auth";
|
|
|
|
|
import { tagTreeSelect } from "@/api/system/wechatTab";
|
|
|
|
|
import Treeselect from "@riophae/vue-treeselect";
|
|
|
|
|
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
|
|
|
|
|
import { listInstrument } from "@/api/system/instrument";
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
name: "Info",
|
|
|
|
|
components: { Treeselect },
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
// 仪器列表
|
|
|
|
|
instrumentList:[],
|
|
|
|
|
// 遮罩层
|
|
|
|
|
loading: true,
|
|
|
|
|
// opearte
|
|
|
|
|
@ -467,7 +469,7 @@ export default {
|
|
|
|
|
siteEndTime: null,
|
|
|
|
|
userRegisterStartTime: null,
|
|
|
|
|
userRegisterEndTime: null,
|
|
|
|
|
openType: null,
|
|
|
|
|
openType: "",
|
|
|
|
|
pushType: null,
|
|
|
|
|
pushNumber: null,
|
|
|
|
|
pushTimer: null,
|
|
|
|
|
@ -484,7 +486,7 @@ export default {
|
|
|
|
|
machineName: null,
|
|
|
|
|
machineId: null,
|
|
|
|
|
userType: null,
|
|
|
|
|
operate: null,
|
|
|
|
|
operate: "",
|
|
|
|
|
signNumber: null,
|
|
|
|
|
orderNumber: null,
|
|
|
|
|
type: null,
|
|
|
|
|
@ -499,14 +501,65 @@ export default {
|
|
|
|
|
form: {},
|
|
|
|
|
// 表单校验
|
|
|
|
|
rules: {
|
|
|
|
|
fileUrl: [
|
|
|
|
|
{ required: true, message: "弹窗封面不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
pushType: [
|
|
|
|
|
{ required: true, message: "推送频次不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
siteName: [
|
|
|
|
|
{ required: true, message: "标题不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
userType: [
|
|
|
|
|
{ required: true, message: "用户类型不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
orderNumber: [
|
|
|
|
|
{ required: true, message: "排序不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
type: [
|
|
|
|
|
{ required: true, message: "跳转类型不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
link: [
|
|
|
|
|
{ required: true, message: "参数不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
redirectAppid: [
|
|
|
|
|
{ required: true, message: "APPID不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
linkParams: [
|
|
|
|
|
{ required: true, message: "跳转参数不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
redirectUrl: [
|
|
|
|
|
{ required: true, message: "页面链接不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
videoNo: [
|
|
|
|
|
{ required: true, message: "视频号ID不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
feedId: [
|
|
|
|
|
{ required: true, message: "视频号feedId不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
pushTimer: [
|
|
|
|
|
{ required: true, message: "自定义频次时间不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
pushNumber: [
|
|
|
|
|
{ required: true, message: "每天推送次数不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
created() {
|
|
|
|
|
this.queryParams.siteStartTime = this.dateUtil(new Date(new Date().toLocaleDateString()));
|
|
|
|
|
this.queryParams.siteEndTime = this.dateUtil(new Date(new Date(new Date().toLocaleDateString()).getTime() + 24 * 60 * 60 * 1000 - 1));
|
|
|
|
|
this.getList();
|
|
|
|
|
this.getDeptTree();
|
|
|
|
|
this.queryInstrumentList();
|
|
|
|
|
},
|
|
|
|
|
methods: {
|
|
|
|
|
// 查询仪器
|
|
|
|
|
queryInstrumentList(){
|
|
|
|
|
listInstrument(this.queryParams).then(response => {
|
|
|
|
|
this.instrumentList = response.rows;
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
/** 查询站点管理列表 */
|
|
|
|
|
getList() {
|
|
|
|
|
this.form.fileUrl = 'http://127.0.0.1:9300/statics/2023/12/16/0c49191de1ed8f91b28d9c2b12556154_20231216154804A002.mp4'
|
|
|
|
|
@ -520,6 +573,16 @@ export default {
|
|
|
|
|
this.channelList = response.rows;
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
dateUtil(date){
|
|
|
|
|
// 获取年份、月份和日期
|
|
|
|
|
const year = date.getFullYear().toString(); // 四位数表示的年份
|
|
|
|
|
const months = (date.getMonth() + 1).toString().padStart(2, '0'); // 补零后的两位数表示的月份
|
|
|
|
|
const day = date.getDate().toString().padStart(2, '0'); // 补零后的两位数表示的日期
|
|
|
|
|
const hours = date.getHours().toString().padStart(2, '0'); // 补全两位数的小时
|
|
|
|
|
const minutes = date.getMinutes().toString().padStart(2, '0'); // 补全两位数的分钟
|
|
|
|
|
const seconds = date.getSeconds().toString().padStart(2, '0');
|
|
|
|
|
return `${year}-${months}-${day} ${hours}:${minutes}:${seconds}`;
|
|
|
|
|
},
|
|
|
|
|
// 取消按钮
|
|
|
|
|
cancel() {
|
|
|
|
|
this.open = false;
|
|
|
|
|
@ -591,6 +654,8 @@ export default {
|
|
|
|
|
this.reset();
|
|
|
|
|
this.open = true;
|
|
|
|
|
this.title = "添加站点管理";
|
|
|
|
|
this.form.orderNumber = 1000;
|
|
|
|
|
this.form.userType = 2;
|
|
|
|
|
},
|
|
|
|
|
/** 修改按钮操作 */
|
|
|
|
|
handleUpdate(row, operate) {
|
|
|
|
|
@ -629,12 +694,16 @@ export default {
|
|
|
|
|
submitForm() {
|
|
|
|
|
this.$refs["form"].validate(valid => {
|
|
|
|
|
if (valid) {
|
|
|
|
|
if (!this.form.fileUrl) {
|
|
|
|
|
this.$modal.msgError("弹窗封面不能为空");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
// 处理时间
|
|
|
|
|
if(this.form.startTime.length > 0) {
|
|
|
|
|
if(this.form.startTime && this.form.startTime.length > 0) {
|
|
|
|
|
this.form.siteStartTime = this.form.startTime[0];
|
|
|
|
|
this.form.siteEndTime = this.form.startTime[1];
|
|
|
|
|
}
|
|
|
|
|
if(this.form.registerTime.length > 0) {
|
|
|
|
|
if(this.form.registerTime && this.form.registerTime.length > 0) {
|
|
|
|
|
this.form.userRegisterStartTime = this.form.registerTime[0];
|
|
|
|
|
this.form.userRegisterEndTime = this.form.registerTime[1];
|
|
|
|
|
}
|
|
|
|
|
|