style: 格式化代码

This commit is contained in:
zyn
2024-01-23 11:41:47 +08:00
parent b76d2ff5ca
commit b42d918212
2 changed files with 345 additions and 255 deletions
@@ -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)
+173 -137
View File
@@ -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">&#xe6e9;</i>导出
<el-button
v-btn-permission="'6d749caee927a480fa99e5ddc48d8e05'"
class="common-button-default export-button"
size="mini"
title="不勾选时默认导出所有筛选项;勾选时仅导出勾选项"
@click="exportData"
>
<i class="iconfont">&#xe6e9;</i>导出
</el-button>
<el-button class="common-button-default in-button"
size="mini"
v-btn-permission="'b168e0381ec7ba5d762c36ad2935542f'"
@click="addImportModal"><i class="iconfont">&#xe6de;</i>导入
<el-button
v-btn-permission="'b168e0381ec7ba5d762c36ad2935542f'"
class="common-button-default in-button"
size="mini"
@click="addImportModal"
>
<i class="iconfont">&#xe6de;</i>导入
</el-button>
<el-button class="common-button-default in-button"
size="mini"
v-btn-permission="'7990fb64c468c2d37cc2246fc3cb694e'"
@click="handleMoudel"><i class="iconfont">&#xe6de;</i>模板下载
<el-button
v-btn-permission="'7990fb64c468c2d37cc2246fc3cb694e'"
class="common-button-default in-button"
size="mini"
@click="handleMoudel"
>
<i class="iconfont">&#xe6de;</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
})
},