style: 格式化代码
This commit is contained in:
@@ -1,87 +1,101 @@
|
||||
<template>
|
||||
<el-drawer :title="title"
|
||||
:visible="showDrawer"
|
||||
:wrapperClosable="false"
|
||||
@close="onClose"
|
||||
size="1050px">
|
||||
<el-drawer
|
||||
:title="title"
|
||||
:visible="showDrawer"
|
||||
:wrapperClosable="false"
|
||||
size="1050px"
|
||||
@close="onClose"
|
||||
>
|
||||
<div class="drawer-content">
|
||||
<el-form
|
||||
v-if="showDrawer && reloadForm"
|
||||
ref="formRef"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
class="label-input-form"
|
||||
v-if="showDrawer && reloadForm"
|
||||
ref="formRef"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
class="label-input-form"
|
||||
>
|
||||
<el-col :span="24"><div class="divider-line">基础信息</div></el-col>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="会议名称" prop="meetingName" label-width="150px" class="add-form-item">
|
||||
<el-input v-model="form.meetingName"
|
||||
placeholder="请输入会议名称"
|
||||
clearable></el-input>
|
||||
<el-input
|
||||
v-model="form.meetingName"
|
||||
placeholder="请输入会议名称"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="课题名称" prop="topicName" label-width="150px" class="add-form-item">
|
||||
<el-input v-model="form.topicName"
|
||||
placeholder="请输入课题名称"
|
||||
clearable></el-input>
|
||||
<el-input
|
||||
v-model="form.topicName"
|
||||
placeholder="请输入课题名称"
|
||||
clearable
|
||||
/>
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="mini"
|
||||
style="position:absolute;top: 10px;right: 0;"
|
||||
@click="handleGetTopic"
|
||||
>调取课题</el-button>
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="mini"
|
||||
style="position:absolute;top: 10px;right: 0;"
|
||||
@click="handleGetTopic"
|
||||
>
|
||||
调取课题
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="会议主办单位" prop="meetingOrganizer" label-width="150px" class="add-form-item">
|
||||
<el-input v-model="form.meetingOrganizer"
|
||||
placeholder="请输入会议主办单位"
|
||||
clearable></el-input>
|
||||
<el-input
|
||||
v-model="form.meetingOrganizer"
|
||||
placeholder="请输入会议主办单位"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<CustomDatePick
|
||||
:config="{
|
||||
attrName: '会议时间',
|
||||
attrField: 'meetingTime'
|
||||
}"
|
||||
v-model="form.meetingTime"
|
||||
></CustomDatePick>
|
||||
v-model="form.meetingTime"
|
||||
:config="{
|
||||
attrName: '会议时间',
|
||||
attrField: 'meetingTime'
|
||||
}"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="会议地点" prop="meetingAddress" label-width="150px" class="add-form-item">
|
||||
<el-input v-model="form.meetingAddress"
|
||||
placeholder="请输入会议地点"
|
||||
clearable></el-input>
|
||||
<el-input
|
||||
v-model="form.meetingAddress"
|
||||
placeholder="请输入会议地点"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="参会人员" prop="participants" label-width="150px" class="add-form-item">
|
||||
<el-input v-model="form.participants"
|
||||
placeholder="请输入参会人员"
|
||||
clearable></el-input>
|
||||
<el-input
|
||||
v-model="form.participants"
|
||||
placeholder="请输入参会人员"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<custom-file
|
||||
:config="{
|
||||
attrName: '会议纪要',
|
||||
attrField: 'meetingMinutes'
|
||||
}"
|
||||
v-model="form.meetingMinutes"
|
||||
></custom-file>
|
||||
v-model="form.meetingMinutes"
|
||||
:config="{
|
||||
attrName: '会议纪要',
|
||||
attrField: 'meetingMinutes'
|
||||
}"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<CustomTextarea
|
||||
:config="{
|
||||
v-model="form.meetingContent"
|
||||
:config="{
|
||||
attrName: '会议主要内容',
|
||||
attrField: 'meetingContent'
|
||||
}"
|
||||
v-model="form.meetingContent"
|
||||
></CustomTextarea>
|
||||
/>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-col :span="24"><div class="divider-line">会议分类</div></el-col>
|
||||
@@ -89,13 +103,16 @@
|
||||
<el-col :span="12">
|
||||
<el-form-item label="1级会议分类" prop="firstMeetingType" label-width="150px" class="add-form-item">
|
||||
<template slot="label">1级会议分类</template>
|
||||
<el-select v-model="form.firstMeetingType"
|
||||
placeholder="请选择1级会议分类"
|
||||
clearable>
|
||||
<el-select
|
||||
v-model="form.firstMeetingType"
|
||||
placeholder="请选择1级会议分类"
|
||||
clearable
|
||||
>
|
||||
<el-option
|
||||
v-for="opt in dict.firstMeetingType"
|
||||
:key="opt.value"
|
||||
:value="opt.value === undefined ? '' :opt.value" :label="opt.label"
|
||||
v-for="opt in dict.firstMeetingType"
|
||||
:key="opt.value"
|
||||
:value="opt.value === undefined ? '' :opt.value"
|
||||
:label="opt.label"
|
||||
>
|
||||
{{ opt.label }}
|
||||
</el-option>
|
||||
@@ -105,13 +122,16 @@
|
||||
<el-col :span="12">
|
||||
<el-form-item label="2级会议分类" prop="secondMeetingType" label-width="150px" class="add-form-item">
|
||||
<template slot="label">2级会议分类</template>
|
||||
<el-select v-model="form.secondMeetingType"
|
||||
placeholder="请选择2级会议分类"
|
||||
clearable>
|
||||
<el-select
|
||||
v-model="form.secondMeetingType"
|
||||
placeholder="请选择2级会议分类"
|
||||
clearable
|
||||
>
|
||||
<el-option
|
||||
v-for="opt in dict.secondMeetingType"
|
||||
:key="opt.value"
|
||||
:value="opt.value === undefined ? '' :opt.value" :label="opt.label"
|
||||
v-for="opt in dict.secondMeetingType"
|
||||
:key="opt.value"
|
||||
:value="opt.value === undefined ? '' :opt.value"
|
||||
:label="opt.label"
|
||||
>
|
||||
{{ opt.label }}
|
||||
</el-option>
|
||||
@@ -121,65 +141,99 @@
|
||||
</el-row>
|
||||
<el-row>
|
||||
<template v-for="(item, index) in form.meetingTopicList">
|
||||
<el-col :span="24">
|
||||
<div class="divider-line">
|
||||
会议议题
|
||||
<el-button type="primary" size="mini" icon="el-icon-plus" @click="addMeetingTopic"
|
||||
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'visible' : 'collapse'}"></el-button>
|
||||
<el-button type="primary" size="mini" icon="el-icon-minus" @click="removeMeetingTopic(index)"
|
||||
:style="{visibility: (form.meetingTopicList.length < 2 && index === 0) ? 'collapse' : 'visible'}"></el-button>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<div class="divider-line">
|
||||
会议议题
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
icon="el-icon-plus"
|
||||
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'visible' : 'collapse'}"
|
||||
@click="addMeetingTopic"
|
||||
/>
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
icon="el-icon-minus"
|
||||
:style="{visibility: (form.meetingTopicList.length < 2 && index === 0) ? 'collapse' : 'visible'}"
|
||||
@click="removeMeetingTopic(index)"
|
||||
/>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="议题名称" :prop="'meetingTopicList.' + index + '.agendaName'" :rules="rules.agendaName" label-width="150px" class="add-form-item">
|
||||
<el-input v-model="item.agendaName"
|
||||
placeholder="请输入议题名称"
|
||||
clearable></el-input>
|
||||
<el-form-item
|
||||
label="议题名称"
|
||||
:prop="'meetingTopicList.' + index + '.agendaName'"
|
||||
:rules="rules.agendaName"
|
||||
label-width="150px"
|
||||
class="add-form-item"
|
||||
>
|
||||
<el-input
|
||||
v-model="item.agendaName"
|
||||
placeholder="请输入议题名称"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<customFile
|
||||
v-model="item.agendaMaterials"
|
||||
:config="{
|
||||
attrName: '议题材料',
|
||||
attrField: `meetingTopicList.${index}.agendaMaterials`
|
||||
}"
|
||||
:rules="rules.agendaMaterials"
|
||||
v-model="item.agendaMaterials"
|
||||
></customFile>
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="汇报人" :prop="'meetingTopicList.' + index + '.reporter'" :rules="rules.reporter" label-width="150px" class="add-form-item">
|
||||
<el-input v-model="item.reporter"
|
||||
placeholder="请输入汇报人"
|
||||
clearable></el-input>
|
||||
<el-form-item
|
||||
label="汇报人"
|
||||
:prop="'meetingTopicList.' + index + '.reporter'"
|
||||
:rules="rules.reporter"
|
||||
label-width="150px"
|
||||
class="add-form-item"
|
||||
>
|
||||
<el-input
|
||||
v-model="item.reporter"
|
||||
placeholder="请输入汇报人"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="汇报人单位" :prop="'meetingTopicList.' + index + '.reportingUnit'" :rules="rules.reportingUnit" label-width="150px" class="add-form-item">
|
||||
<el-input v-model="item.reportingUnit"
|
||||
placeholder="请输入汇报人单位"
|
||||
clearable></el-input>
|
||||
<el-form-item
|
||||
label="汇报人单位"
|
||||
:prop="'meetingTopicList.' + index + '.reportingUnit'"
|
||||
:rules="rules.reportingUnit"
|
||||
label-width="150px"
|
||||
class="add-form-item"
|
||||
>
|
||||
<el-input
|
||||
v-model="item.reportingUnit"
|
||||
placeholder="请输入汇报人单位"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<CustomTextarea
|
||||
:config="{
|
||||
attrName: '议题主要内容',
|
||||
attrField: `meetingTopicList.${index}.agendaContent`
|
||||
}"
|
||||
:rules="rules.agendaContent"
|
||||
v-model="item.agendaContent"
|
||||
></CustomTextarea>
|
||||
v-model="item.agendaContent"
|
||||
:config="{
|
||||
attrName: '议题主要内容',
|
||||
attrField: `meetingTopicList.${index}.agendaContent`
|
||||
}"
|
||||
:rules="rules.agendaContent"
|
||||
/>
|
||||
</el-col>
|
||||
</template>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</div>
|
||||
<div class="drawer-footer">
|
||||
<el-button icon="el-icon-check" type="primary" @click="onSubmit" :loading="isSubmit">提交</el-button>
|
||||
<el-button icon="el-icon-close" @click="onClose" :loading="isSubmit">取消</el-button>
|
||||
<el-button icon="el-icon-check" type="primary" :loading="isSubmit" @click="onSubmit">提交</el-button>
|
||||
<el-button icon="el-icon-close" :loading="isSubmit" @click="onClose">取消</el-button>
|
||||
</div>
|
||||
<TopicsTable ref="TopicsTableRef" @dragIn="dragIn"></TopicsTable>
|
||||
<TopicsTable ref="TopicsTableRef" @dragIn="dragIn" />
|
||||
</el-drawer>
|
||||
</template>
|
||||
|
||||
@@ -187,10 +241,10 @@
|
||||
import CustomDatePick from '@/components/CustomFormComponents/DatePicker'
|
||||
import CustomFile from '@/components/CustomFormComponents/File'
|
||||
import CustomTextarea from '@/components/CustomFormComponents/Textarea'
|
||||
import TopicsTable from "./TopicsTable";
|
||||
import TopicsTable from './TopicsTable';
|
||||
|
||||
export default {
|
||||
name: "editDrawer",
|
||||
name: 'EditDrawer',
|
||||
components: {
|
||||
CustomDatePick,
|
||||
CustomFile,
|
||||
@@ -213,52 +267,52 @@ export default {
|
||||
type: Object
|
||||
}
|
||||
},
|
||||
data (){
|
||||
data () {
|
||||
const rules = {
|
||||
meetingName: [
|
||||
{required: true, type: 'string', message: '会议名称不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '会议名称不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
meetingOrganizer: [
|
||||
{required: true, type: 'string', message: '会议主办单位不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '会议主办单位不能超过500个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '会议主办单位不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '会议主办单位不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
meetingTime: [
|
||||
{required: true, message: '会议时间不能为空', trigger: 'change'}
|
||||
{ required: true, message: '会议时间不能为空', trigger: 'change' }
|
||||
],
|
||||
meetingAddress: [
|
||||
{required: true, type: 'string', message: '会议地点不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '会议地点不能超过500个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '会议地点不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '会议地点不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
participants: [
|
||||
{required: true, type: 'string', message: '参会人员不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '参会人员不能超过500个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '参会人员不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '参会人员不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
meetingContent: [
|
||||
{required: true, type: 'string', message: '会议主要内容不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '会议主要内容不能超过500个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '会议主要内容不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '会议主要内容不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
firstMeetingType: [
|
||||
{required: true, message: '1级会议分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '1级会议分类不能为空', trigger: 'change' }
|
||||
],
|
||||
secondMeetingType: [
|
||||
{required: true, message: '2级会议分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '2级会议分类不能为空', trigger: 'change' }
|
||||
],
|
||||
agendaName: [
|
||||
{required: true, type: 'string', message: '议题名称不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '议题名称不能超过500个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '议题名称不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '议题名称不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
reporter: [
|
||||
{required: true, type: 'string', message: '汇报人不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '汇报人不能超过500个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '汇报人不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '汇报人不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
reportingUnit: [
|
||||
{required: true, type: 'string', message: '汇报人单位不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '汇报人单位不能超过500个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '汇报人单位不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '汇报人单位不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
agendaContent: [
|
||||
{required: true, type: 'string', message: '议题主要内容不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '议题主要内容不能超过500个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '议题主要内容不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '议题主要内容不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
}
|
||||
const form = {
|
||||
@@ -288,7 +342,7 @@ export default {
|
||||
reloadForm: true,
|
||||
api: {
|
||||
add: 'lawss/insideOutsideMeeting/addMeetingInfo',
|
||||
delete :'lawss/insideOutsideMeeting/deleteMeetingInfo',
|
||||
delete: 'lawss/insideOutsideMeeting/deleteMeetingInfo',
|
||||
update: 'lawss/insideOutsideMeeting/updateMeetingInfo'
|
||||
}
|
||||
}
|
||||
@@ -311,10 +365,10 @@ export default {
|
||||
reportingUnit: '',
|
||||
agendaContent: ''
|
||||
}
|
||||
this.form.meetingTopicList = [...this.form.meetingTopicList, meetingTopicItem]
|
||||
this.form.meetingTopicList = [ ...this.form.meetingTopicList, meetingTopicItem ]
|
||||
},
|
||||
removeMeetingTopic (index) {
|
||||
let res = []
|
||||
const res = []
|
||||
this.form.meetingTopicList.forEach((item, i) => {
|
||||
if (i !== index) {
|
||||
res.push(item)
|
||||
|
||||
@@ -4,200 +4,236 @@
|
||||
<div class="search-area">
|
||||
<el-form :modal="searchForm" :inline="true" class="label-input-form">
|
||||
<el-formItem label="会议名称" prop="meetingName" class="search-item">
|
||||
<el-input v-model="searchForm.meetingName" clearable placeholder="请输入会议名称" :maxlength="100" @keyup.enter.native="onSearch"/>
|
||||
<el-input
|
||||
v-model="searchForm.meetingName"
|
||||
clearable
|
||||
placeholder="请输入会议名称"
|
||||
:maxlength="100"
|
||||
@keyup.enter.native="onSearch"
|
||||
/>
|
||||
</el-formItem>
|
||||
<el-formItem label="会议主办单位" prop="meetingOrganizer" class="search-item">
|
||||
<el-input v-model="searchForm.meetingOrganizer" clearable placeholder="请输入会议主办单位" :maxlength="100" @keyup.enter.native="onSearch"/>
|
||||
<el-input
|
||||
v-model="searchForm.meetingOrganizer"
|
||||
clearable
|
||||
placeholder="请输入会议主办单位"
|
||||
:maxlength="100"
|
||||
@keyup.enter.native="onSearch"
|
||||
/>
|
||||
</el-formItem>
|
||||
<el-formItem label="会议时间" class="search-item" style="margin-right: 0">
|
||||
<el-date-picker
|
||||
value-format="yyyy-MM-dd"
|
||||
format="yyyy-MM-dd"
|
||||
type="date"
|
||||
clearable
|
||||
:editable="true"
|
||||
placeholder="选择开始时间"
|
||||
v-model="searchForm.meetingTimeBegin"
|
||||
>
|
||||
</el-date-picker>
|
||||
v-model="searchForm.meetingTimeBegin"
|
||||
value-format="yyyy-MM-dd"
|
||||
format="yyyy-MM-dd"
|
||||
type="date"
|
||||
clearable
|
||||
:editable="true"
|
||||
placeholder="选择开始时间"
|
||||
/>
|
||||
</el-formItem>
|
||||
<el-form-item label="至" label-width="25px" class="search-item">
|
||||
<el-date-picker
|
||||
value-format="yyyy-MM-dd"
|
||||
format="yyyy-MM-dd"
|
||||
type="date"
|
||||
clearable
|
||||
:editable="true"
|
||||
placeholder="选择结束时间"
|
||||
v-model="searchForm.meetingTimeEnd"
|
||||
>
|
||||
</el-date-picker>
|
||||
v-model="searchForm.meetingTimeEnd"
|
||||
value-format="yyyy-MM-dd"
|
||||
format="yyyy-MM-dd"
|
||||
type="date"
|
||||
clearable
|
||||
:editable="true"
|
||||
placeholder="选择结束时间"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-btn-permission="'520f8524252e76e751a883a0a8a8615c'"
|
||||
@click="onSearch">
|
||||
v-btn-permission="'520f8524252e76e751a883a0a8a8615c'"
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
@click="onSearch"
|
||||
>
|
||||
查询
|
||||
</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
class="common-button-default"
|
||||
v-btn-permission="'6a9483964b7b49dd473ef9e6fd4a649e'"
|
||||
@click="onClear">清空
|
||||
v-btn-permission="'6a9483964b7b49dd473ef9e6fd4a649e'"
|
||||
size="mini"
|
||||
class="common-button-default"
|
||||
@click="onClear"
|
||||
>
|
||||
清空
|
||||
</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
v-btn-permission="'7f98cd8b424d6ad83b1770a6576993fc'"
|
||||
@click="advancedSearch">高级检索
|
||||
v-btn-permission="'7f98cd8b424d6ad83b1770a6576993fc'"
|
||||
size="mini"
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
@click="advancedSearch"
|
||||
>
|
||||
高级检索
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<!--按钮区-->
|
||||
<div class="action-bar">
|
||||
<el-button class="common-button-default export-button"
|
||||
size="mini"
|
||||
title="不勾选时默认导出所有筛选项;勾选时仅导出勾选项"
|
||||
v-btn-permission="'6d749caee927a480fa99e5ddc48d8e05'"
|
||||
@click="exportData"><i class="iconfont"></i>导出
|
||||
<el-button
|
||||
v-btn-permission="'6d749caee927a480fa99e5ddc48d8e05'"
|
||||
class="common-button-default export-button"
|
||||
size="mini"
|
||||
title="不勾选时默认导出所有筛选项;勾选时仅导出勾选项"
|
||||
@click="exportData"
|
||||
>
|
||||
<i class="iconfont"></i>导出
|
||||
</el-button>
|
||||
<el-button class="common-button-default in-button"
|
||||
size="mini"
|
||||
v-btn-permission="'b168e0381ec7ba5d762c36ad2935542f'"
|
||||
@click="addImportModal"><i class="iconfont"></i>导入
|
||||
<el-button
|
||||
v-btn-permission="'b168e0381ec7ba5d762c36ad2935542f'"
|
||||
class="common-button-default in-button"
|
||||
size="mini"
|
||||
@click="addImportModal"
|
||||
>
|
||||
<i class="iconfont"></i>导入
|
||||
</el-button>
|
||||
<el-button class="common-button-default in-button"
|
||||
size="mini"
|
||||
v-btn-permission="'7990fb64c468c2d37cc2246fc3cb694e'"
|
||||
@click="handleMoudel"><i class="iconfont"></i>模板下载
|
||||
<el-button
|
||||
v-btn-permission="'7990fb64c468c2d37cc2246fc3cb694e'"
|
||||
class="common-button-default in-button"
|
||||
size="mini"
|
||||
@click="handleMoudel"
|
||||
>
|
||||
<i class="iconfont"></i>模板下载
|
||||
</el-button>
|
||||
<el-button type="primary"
|
||||
class="common-button-primary add-button"
|
||||
size="mini"
|
||||
v-btn-permission="'f0e663244c1f823caa07e99bfc6535dc'"
|
||||
@click="openDrawer('add')"
|
||||
><i class="el-icon-plus"></i>新增
|
||||
<el-button
|
||||
v-btn-permission="'f0e663244c1f823caa07e99bfc6535dc'"
|
||||
type="primary"
|
||||
class="common-button-primary add-button"
|
||||
size="mini"
|
||||
@click="openDrawer('add')"
|
||||
>
|
||||
<i class="el-icon-plus" />新增
|
||||
</el-button>
|
||||
</div>
|
||||
<!-- 表格 -->
|
||||
<div class="content">
|
||||
<el-table
|
||||
ref="selection"
|
||||
:data="data"
|
||||
tooltip-effect="dark"
|
||||
style="width:100%;height: calc(100% - 57px)"
|
||||
height="string"
|
||||
border
|
||||
class="drag-table"
|
||||
@sort-change="sortChange"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', fontWeight: 'bold', height: '48px', padding: 0}"
|
||||
:cell-style="{padding: 0}"
|
||||
@selection-change="selectionChange"
|
||||
ref="selection"
|
||||
:data="data"
|
||||
tooltip-effect="dark"
|
||||
style="width:100%;height: calc(100% - 57px)"
|
||||
height="string"
|
||||
border
|
||||
class="drag-table"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', fontWeight: 'bold', height: '48px', padding: 0}"
|
||||
:cell-style="{padding: 0}"
|
||||
@sort-change="sortChange"
|
||||
@selection-change="selectionChange"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
type="index"
|
||||
width="55"
|
||||
label="序号"
|
||||
align="center">
|
||||
type="index"
|
||||
width="55"
|
||||
label="序号"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="{scope, column, $index}">
|
||||
{{ ($index + 1) + (searchForm.page - 1) * searchForm.pageSize }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="meetingName"
|
||||
label="会议名称"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
show-overflow-tooltip
|
||||
prop="meetingName"
|
||||
label="会议名称"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
<template slot-scope="{row, column, $index}">
|
||||
<a class="table-jump" style="color: #2d8cf0" @click="handlePreview(row.id)">{{ row.meetingName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="meetingOrganizer"
|
||||
label="会议主办单位"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
show-overflow-tooltip
|
||||
prop="meetingOrganizer"
|
||||
label="会议主办单位"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
/>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="meetingTime"
|
||||
label="会议时间"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
show-overflow-tooltip
|
||||
prop="meetingTime"
|
||||
label="会议时间"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
/>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="meetingAddress"
|
||||
label="会议地点"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
show-overflow-tooltip
|
||||
prop="meetingAddress"
|
||||
label="会议地点"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
/>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="agendaNameStr"
|
||||
label="议题名称"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
</el-table-column>
|
||||
show-overflow-tooltip
|
||||
prop="agendaNameStr"
|
||||
label="议题名称"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
/>
|
||||
<el-table-column
|
||||
v-if="isPermission('62cdf3d570941c154d28371632ccfa2e,71155d105e930bb8e7881a8a9809646a') > 0"
|
||||
prop="action"
|
||||
label="操作"
|
||||
align="center"
|
||||
v-if="isPermission('62cdf3d570941c154d28371632ccfa2e,71155d105e930bb8e7881a8a9809646a') > 0"
|
||||
prop="action"
|
||||
label="操作"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a class="table-jump" v-btn-permission="'62cdf3d570941c154d28371632ccfa2e'" style="color: #2d8cf0" @click="openDrawer('edit', scope.row)">编辑</a>
|
||||
<a class="table-jump" v-btn-permission="'71155d105e930bb8e7881a8a9809646a'" style="color: #f56c6c;margin-left: 10px" @click="onDelete(scope.row.id)">删除</a>
|
||||
<a v-btn-permission="'62cdf3d570941c154d28371632ccfa2e'" class="table-jump" style="color: #2d8cf0" @click="openDrawer('edit', scope.row)">编辑</a>
|
||||
<a v-btn-permission="'71155d105e930bb8e7881a8a9809646a'" class="table-jump" style="color: #f56c6c;margin-left: 10px" @click="onDelete(scope.row.id)">删除</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination :page="searchForm.page" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
|
||||
<pagination :page="searchForm.page" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange" />
|
||||
<loading :loading="loading">数据获取中...</loading>
|
||||
</div>
|
||||
<!-- 高级搜索 -->
|
||||
<AdvancedSearch :visible.sync="advancedSearchVisible" :form="advancedSearchForm" :dict="dict" @search="onSearch" @resetAdvancedSearchForm="resetAdvancedSearchForm"></AdvancedSearch>
|
||||
<AdvancedSearch
|
||||
:visible.sync="advancedSearchVisible"
|
||||
:form="advancedSearchForm"
|
||||
:dict="dict"
|
||||
@search="onSearch"
|
||||
@resetAdvancedSearchForm="resetAdvancedSearchForm"
|
||||
/>
|
||||
<!-- 新增编辑 -->
|
||||
<editDrawer ref="editDrawerRef" :dict="dict" :showDrawer.sync="showDrawer" :title="titleDrawer" :editForm="editForm" @load="getData"></editDrawer>
|
||||
<editDrawer
|
||||
ref="editDrawerRef"
|
||||
:dict="dict"
|
||||
:showDrawer.sync="showDrawer"
|
||||
:title="titleDrawer"
|
||||
:editForm="editForm"
|
||||
@load="getData"
|
||||
/>
|
||||
<!-- 导入 -->
|
||||
<ImportZip :visible.sync="importModalShowFlag" :action="importExcelUrl" @onSuccess="getData"></ImportZip>
|
||||
<ImportZip :visible.sync="importModalShowFlag" :action="importExcelUrl" @onSuccess="getData" />
|
||||
<!-- 导出 -->
|
||||
<ExportDialog ref="exportDialogRef" @exportName="handleExport"></ExportDialog>
|
||||
<ExportDialog ref="exportDialogRef" @exportName="handleExport" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import editDrawer from "./components/editDrawer";
|
||||
import editDrawer from './components/editDrawer';
|
||||
import AdvancedSearch from './components/advancedSearch'
|
||||
import ImportZip from '@/components/hzwlComponents/importZip'
|
||||
import ExportDialog from '@/components/hzwlComponents/exportDialog'
|
||||
import store from "@/store";
|
||||
import store from '@/store';
|
||||
|
||||
export default {
|
||||
name: "meeting",
|
||||
name: 'Meeting',
|
||||
components: {
|
||||
editDrawer,
|
||||
AdvancedSearch,
|
||||
ImportZip,
|
||||
ExportDialog
|
||||
},
|
||||
data(){
|
||||
data () {
|
||||
return {
|
||||
searchForm: {},
|
||||
advancedSearchForm: {},
|
||||
@@ -216,18 +252,18 @@ export default {
|
||||
editForm: void 0,
|
||||
api: {
|
||||
page: 'lawss/insideOutsideMeeting/page',
|
||||
delete :'lawss/insideOutsideMeeting/deleteMeetingInfo'
|
||||
delete: 'lawss/insideOutsideMeeting/deleteMeetingInfo'
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
created () {
|
||||
this.getDicTypeListCode()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
// 点击查看
|
||||
handlePreview(id) {
|
||||
let routeUrl = this.$router.resolve({
|
||||
handlePreview (id) {
|
||||
const routeUrl = this.$router.resolve({
|
||||
name: 'meetingDetail',
|
||||
params: { id }
|
||||
})
|
||||
@@ -235,13 +271,13 @@ export default {
|
||||
},
|
||||
isPermission (value) {
|
||||
let hasCount = 0
|
||||
let set =new Set( value.split(","))
|
||||
let menuList = store.getters.getMenuList
|
||||
const set = new Set( value.split(','))
|
||||
const menuList = store.getters.getMenuList
|
||||
if (menuList === '') {
|
||||
return hasCount
|
||||
} else {
|
||||
menuList.map((menu) => {
|
||||
if ( set.has(menu.id)|| value === undefined || value === '') {
|
||||
if ( set.has(menu.id) || value === undefined || value === '') {
|
||||
hasCount++
|
||||
}
|
||||
})
|
||||
@@ -251,14 +287,14 @@ export default {
|
||||
async getData () {
|
||||
this.searchForm.pageSize = this.searchForm.pageSize || this.$store.getters.userInfo.configContent
|
||||
this.searchForm.page = this.searchForm.page || 1
|
||||
let params = { ...this.searchForm, ...this.advancedSearchForm }
|
||||
const res = await this.$http._getData(this.api.page, params, {_this:this,loading: 'loading'})
|
||||
const params = { ...this.searchForm, ...this.advancedSearchForm }
|
||||
const res = await this.$http._getData(this.api.page, params, { _this: this, loading: 'loading' })
|
||||
if (res.ok && res.data) {
|
||||
this.data = res.data.list
|
||||
this.total = res.data.count
|
||||
}
|
||||
},
|
||||
onSearch(){
|
||||
onSearch () {
|
||||
this.getData()
|
||||
},
|
||||
onClear () {
|
||||
@@ -283,7 +319,7 @@ export default {
|
||||
}
|
||||
},
|
||||
// 表格排序
|
||||
sortChange({ column, prop, order }) {
|
||||
sortChange ({ column, prop, order }) {
|
||||
this.searchForm.sortField = prop
|
||||
this.searchForm.sortMode = 'asc'
|
||||
if (order === 'descending') {
|
||||
@@ -317,23 +353,23 @@ export default {
|
||||
exportIds: this.selectedList.join(',')
|
||||
}
|
||||
let query = '?'
|
||||
for(let i in params){
|
||||
if (params[i] && params[i]!=='') {
|
||||
for(const i in params) {
|
||||
if (params[i] && params[i] !== '') {
|
||||
query = query + i + '=' + params[i] + '&'
|
||||
}
|
||||
}
|
||||
query = query.slice(0,-1)
|
||||
query = query.slice(0, -1)
|
||||
window.open('/api/lawss/insideOutsideMeeting/exportMeetingInfo' + query)
|
||||
this.$refs.exportDialogRef.cancel()
|
||||
this.$message.success('导出信息成功')
|
||||
},
|
||||
// 导入
|
||||
addImportModal() {
|
||||
addImportModal () {
|
||||
this.importModalShowFlag = true
|
||||
this.importExcelUrl = '/api/lawss/insideOutsideMeeting/importMeetingInfo'
|
||||
},
|
||||
// 模板下载
|
||||
handleMoudel(){
|
||||
handleMoudel () {
|
||||
window.open('/api/lawss/insideOutsideMeeting/exportTemplateFile?fileName=内外部会议导入模板')
|
||||
},
|
||||
// 新增编辑
|
||||
@@ -348,7 +384,7 @@ export default {
|
||||
this.$set(this, 'editForm', row)
|
||||
break
|
||||
}
|
||||
this.$nextTick(()=>{
|
||||
this.$nextTick(() => {
|
||||
this.showDrawer = true
|
||||
})
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user