155 lines
5.9 KiB
HTML
155 lines
5.9 KiB
HTML
<!--#
|
|
layout("/layouts/platform.html"){
|
|
#-->
|
|
|
|
<div id="app">
|
|
<guava ref="guava">
|
|
<el-card shadow="never">
|
|
<div class="btn-group tool-button">
|
|
<el-date-picker
|
|
:clearable="false"
|
|
placeholder="选择年"
|
|
type="year"
|
|
v-model="pageForm.year"
|
|
value-format="yyyy">
|
|
</el-date-picker>
|
|
</div>
|
|
<div class="btn-group tool-button">
|
|
<el-input placeholder="请输入内容" v-model="pageForm.qtitle">
|
|
<template slot="prepend">标题</template>
|
|
</el-input>
|
|
</div>
|
|
<div class="btn-group tool-button">
|
|
<el-button @click="doSearch" icon="el-icon-search" type="primary"></el-button>
|
|
</div>
|
|
</el-card>
|
|
|
|
<el-card shadow="never" class="mt20">
|
|
<el-table :data="tableData" align="center" header-align="center" size="medium" style="width: 100%">
|
|
<el-table-column align="center" header-align="center" label="序号" type="index">
|
|
<template scope="scope">
|
|
<span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="标题" prop="qtitle"></el-table-column>
|
|
<el-table-column align="center" header-align="center" label="说明" prop="qsm"
|
|
show-overflow-tooltip>
|
|
<template scope="scope">
|
|
<div v-html="scope.row.qsm" v-if="!isNull(scope.row.qsm)">
|
|
{{scope.row.qsm}}
|
|
</div>
|
|
<span v-else>暂无</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="开始时间" prop="startTime">
|
|
<template slot-scope="scope">
|
|
{{moment(scope.row.startTime).format('YYYY-MM-DD HH:mm')}}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="结束时间" prop="endTime">
|
|
<template slot-scope="scope">
|
|
{{moment(scope.row.endTime).format('YYYY-MM-DD HH:mm')}}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column align="center" label="类型" prop="qlx">
|
|
<template scope="{row}">
|
|
<span v-if="row.qlx===1">调查</span>
|
|
<span v-if="row.qlx===2">答题</span>
|
|
<!-- <span v-if="row.qlx===3">购物调查</span>-->
|
|
<span v-if="row.qlx===4">意向选择</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="状态" prop="qflag">
|
|
<template scope="scope">
|
|
<span style="color: #E6A23C" v-if="scope.row.qflag==1">未开启</span>
|
|
<span style="color: #67C23A" v-if="scope.row.qflag==2">已开启</span>
|
|
<span style="color: #F56C6C" v-if="scope.row.qflag==3">已关闭</span>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="操作">
|
|
<template scope="scope">
|
|
<el-button @click="openStart(scope.row)" size="mini" type="primary">
|
|
开始答题
|
|
</el-button>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-card>
|
|
|
|
<template #edit>
|
|
<online-answer ref="onlineAnswerRef"></online-answer>
|
|
</template>
|
|
</guava>
|
|
</div>
|
|
|
|
<script>
|
|
<!--#include('/platform/question/components/answer.js'){}#-->
|
|
|
|
new Vue({
|
|
el: '#app',
|
|
mixins: [initTableMixins],
|
|
components: {
|
|
onlineAnswer
|
|
},
|
|
data() {
|
|
return {
|
|
pageForm: {
|
|
status: 1,
|
|
type: 2
|
|
},
|
|
isNull(val) {
|
|
return !val
|
|
},
|
|
dialogVisible: false
|
|
}
|
|
},
|
|
methods: {
|
|
async openStart(row) {
|
|
const {qid, qlx, qflag, activityUserScopeId} = row
|
|
if (qflag !== 2) {
|
|
this.$message.warning('该问卷未发布')
|
|
return
|
|
}
|
|
const now = new Date().getTime()
|
|
if (now < row.startTime || now > row.endTime) {
|
|
this.$message.warning('不在开启时间内')
|
|
return
|
|
}
|
|
|
|
if (activityUserScopeId) {
|
|
const resp = await $.get('/mobile/question/h5/checkPermission/' + activityUserScopeId)
|
|
if (!resp.data) {
|
|
this.$message.warning('您无权限参加')
|
|
return
|
|
}
|
|
}
|
|
|
|
if (qlx === 2) {
|
|
this.$refs.guava.edit()
|
|
this.$nextTick(() => {
|
|
this.$refs.onlineAnswerRef.onOpen(qid)
|
|
})
|
|
}
|
|
|
|
},
|
|
|
|
pageData() {
|
|
$.post('/mobile/question/h5/pageData', this.pageForm).then(res => {
|
|
if (res.code === 0) {
|
|
this.tableData = res.data.list;
|
|
this.pageForm.totalCount = res.data.totalCount;
|
|
}
|
|
})
|
|
}
|
|
},
|
|
created() {
|
|
this.pageData()
|
|
}
|
|
})
|
|
</script>
|
|
|
|
|
|
<!--#
|
|
}
|
|
#-->
|