Merge branch 'dev_2024325_LCZGF_39' into 'master'
Dev 2024325 lczgf 39 See merge request laws-foton-slrs/foton-laws-system-front!176
This commit is contained in:
@@ -212,10 +212,11 @@ export default {
|
||||
},
|
||||
watch: {
|
||||
value: {
|
||||
handler(val) {
|
||||
if (this.showFileModel) {
|
||||
this.getShowFileList()
|
||||
}
|
||||
handler () {
|
||||
this.getShowFileList()
|
||||
// if (this.showFileModel) {
|
||||
// this.getShowFileList()
|
||||
// }
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -540,6 +541,7 @@ export default {
|
||||
*/
|
||||
getShowFileList() {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.showFileList = []
|
||||
if (this.value && this.value !== '') {
|
||||
let paramefile = this.value
|
||||
if (paramefile.charAt(paramefile.length - 1) === ',') {
|
||||
|
||||
@@ -48,7 +48,12 @@
|
||||
</div>
|
||||
</el-dialog>
|
||||
<!-- 导入失败-->
|
||||
<el-dialog :visible.sync="importFailed" :close-on-click-modal="false" width="400px">
|
||||
<el-dialog
|
||||
:visible.sync="importFailed"
|
||||
:close-on-click-modal="false"
|
||||
width="400px"
|
||||
append-to-body
|
||||
>
|
||||
<p slot="title" style="color:#f60">
|
||||
<span>导入失败</span>
|
||||
</p>
|
||||
@@ -141,6 +146,8 @@ export default {
|
||||
})
|
||||
}
|
||||
this.fileList = fileList
|
||||
} else {
|
||||
this.fileList = []
|
||||
}
|
||||
},
|
||||
onClose () {
|
||||
|
||||
@@ -0,0 +1,722 @@
|
||||
<template>
|
||||
<el-drawer
|
||||
ref="standard"
|
||||
title="查询结果"
|
||||
size="1250px"
|
||||
:visible.sync="visible"
|
||||
direction="rtl"
|
||||
append-to-body
|
||||
>
|
||||
<div style="flex: 1" class="drawer-content">
|
||||
<div style="height: calc(100% - 56px)">
|
||||
<el-form
|
||||
:model="searchForm"
|
||||
inline
|
||||
class="label-input-form search-area"
|
||||
style="justify-content: left;"
|
||||
>
|
||||
<el-form-item label="标准/政策来源" class="search-item">
|
||||
<el-select
|
||||
v-model="searchForm.dataSource"
|
||||
placeholder="请选择标准/政策来源"
|
||||
@change="dataSourceChange"
|
||||
>
|
||||
<el-option v-for="i in dataSourceOptions" :value="i.value" :label="i.label" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
label="标准编号/政策文号"
|
||||
style="margin-right:10px"
|
||||
class="search-item"
|
||||
>
|
||||
<el-input
|
||||
v-model="searchForm.lawNumber"
|
||||
clearable
|
||||
placeholder="根据编号查找"
|
||||
:maxlength="100"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
label="标准名称/政策名称"
|
||||
style="margin-right:10px"
|
||||
class="search-item"
|
||||
>
|
||||
<el-input
|
||||
v-model="searchForm.lawName"
|
||||
placeholder="根据名称查找"
|
||||
clearable
|
||||
:maxlength="100"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
@click="onSearch"
|
||||
>
|
||||
查询
|
||||
</el-button>
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
size="mini"
|
||||
@click="onClear"
|
||||
>
|
||||
清空
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-table
|
||||
v-if="showTable"
|
||||
ref="reviseDrawerTable"
|
||||
:data="standardData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;"
|
||||
border
|
||||
height="calc(100% - 51px)"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', fontWeight: 'bold', height: '48px'}"
|
||||
@selection-change="selectionChange"
|
||||
>
|
||||
<el-table-column
|
||||
fixed="left"
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
fixed="left"
|
||||
type="index"
|
||||
width="55"
|
||||
label="序号"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="{scope, column, $index}">
|
||||
{{ ($index + 1) + (searchForm.page - 1) * searchForm.pageSize }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<div v-if="searchForm.dataSource === 'INLAND'">
|
||||
<el-table-column
|
||||
label="标准号"
|
||||
width="150"
|
||||
prop="standCode"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a
|
||||
v-if="scope.row.standYear && textStatusMap[scope.row.textStatus] === '废止'"
|
||||
class="table-jump"
|
||||
style="color: #F56C6C"
|
||||
@click="handlePreview(scope.row)"
|
||||
>{{ scope.row.standCode }}</a>
|
||||
<a
|
||||
v-else-if="scope.row.standYear"
|
||||
class="table-jump"
|
||||
style="color: #333333"
|
||||
@click="handlePreview(scope.row)"
|
||||
>{{ scope.row.standCode }}</a>
|
||||
<a
|
||||
v-else
|
||||
class="table-jump"
|
||||
style="color: #333333"
|
||||
@click="handlePreview(scope.row)"
|
||||
>{{ scope.row.standCode }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
min-width="300"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="textStatusMap[scope.row.textStatus] === '废止'" class="table-jump" style="color: #F56C6C" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
width="120"
|
||||
label="发布日期"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{ scope.row.issueTime }}</span>
|
||||
<span v-else>{{ scope.row.issueTime }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="ssrq"
|
||||
width="120"
|
||||
label="实施日期"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{ scope.row.ssrq }}</span>
|
||||
<span v-else>{{ scope.row.ssrq }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
width="150"
|
||||
label="新车型实施日期"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{ scope.row.xcxssrq }}</span>
|
||||
<span v-else>{{ scope.row.xcxssrq }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
width="150"
|
||||
label="在产车实施日期"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{ scope.row.zccssrq }}</span>
|
||||
<span v-else>{{ scope.row.zccssrq }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="textStatus"
|
||||
width="110"
|
||||
label="标准状态"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||
textStatusMap[scope.row.textStatus]
|
||||
}}</span>
|
||||
<span v-else>{{ textStatusMap[scope.row.textStatus] }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</div>
|
||||
<div v-if="searchForm.dataSource === 'FOREIGN'">
|
||||
<el-table-column
|
||||
label="标准号"
|
||||
width="150"
|
||||
prop="standCode"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a
|
||||
v-if="scope.row.standYear && textStatusMap[scope.row.textStatus] === '废止'"
|
||||
style="color: #F56C6C"
|
||||
class="table-jump"
|
||||
@click="handlePreview(scope.row)"
|
||||
>{{ scope.row.standCode }}</a>
|
||||
<a
|
||||
v-else-if="scope.row.standYear && textStatusMap[scope.row.textStatus] === '——' "
|
||||
style="color: #409EFF"
|
||||
class="table-jump"
|
||||
@click="handlePreview(scope.row)"
|
||||
>{{ scope.row.standCode }}</a>
|
||||
<a
|
||||
v-else-if="scope.row.standYear"
|
||||
style="color: #333333"
|
||||
class="table-jump"
|
||||
@click="handlePreview(scope.row)"
|
||||
>{{ scope.row.standCode }}</a>
|
||||
<a
|
||||
v-else
|
||||
style="color: #333333"
|
||||
class="table-jump"
|
||||
@click="handlePreview(scope.row)"
|
||||
>{{ scope.row.standCode }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="standName"
|
||||
label="标准名称"
|
||||
min-width="300"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||
scope.row.standName
|
||||
}}</a>
|
||||
<a v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||
scope.row.standName
|
||||
}}</a>
|
||||
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||
scope.row.standName
|
||||
}}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="standEnName"
|
||||
label="英文名称"
|
||||
min-width="300"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||
scope.row.standEnName
|
||||
}}</a>
|
||||
<a v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||
scope.row.standEnName
|
||||
}}</a>
|
||||
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||
scope.row.standEnName
|
||||
}}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
width="120"
|
||||
label="发布日期"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<div v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">
|
||||
{{ scope.row.issueTime }}
|
||||
</div>
|
||||
<div v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">
|
||||
{{ scope.row.issueTime }}
|
||||
</div>
|
||||
<div v-else style="color: #333333">
|
||||
{{ scope.row.issueTime }}
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="ssrq"
|
||||
width="120"
|
||||
label="实施日期"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||
scope.row.ssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.ssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{ scope.row.ssrq }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="xcxssrq"
|
||||
width="150"
|
||||
label="新车型实施日期"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{
|
||||
scope.row.xcxssrq
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="zccssrq"
|
||||
width="150"
|
||||
label="在产车实施日期"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{
|
||||
scope.row.zccssrq
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="textStatus"
|
||||
width="110"
|
||||
label="标准状态"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||
textStatusMap[scope.row.textStatus]
|
||||
}}</span>
|
||||
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||
textStatusMap[scope.row.textStatus]
|
||||
}}</span>
|
||||
<span v-else style="color: #333333">{{ textStatusMap[scope.row.textStatus] }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</div>
|
||||
<div v-if="searchForm.dataSource === 'FOREIGN_LAWS'">
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
label="政策文号"
|
||||
width="150"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="lawsName"
|
||||
label="中文名称"
|
||||
min-width="300"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="lawsEnName"
|
||||
label="英文名称"
|
||||
min-width="300"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsEnName }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsEnName }}</a>
|
||||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsEnName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
label="发文日期"
|
||||
width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{ scope.row.issueTime }}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{ scope.row.issueTime }}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{ scope.row.issueTime }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="XCXSSRQLAWS"
|
||||
label="新车实施日期"
|
||||
width="150"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{ scope.row.putTime }}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{ scope.row.putTime }}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{ scope.row.XCXSSRQLAWS }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="standStatusShow"
|
||||
:label="standardStatusName"
|
||||
width="110"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">
|
||||
{{ scope.row.standStatusShow }}
|
||||
</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">
|
||||
{{ scope.row.standStatusShow }}
|
||||
</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">
|
||||
{{ scope.row.standStatusShow }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</div>
|
||||
<div v-if="searchForm.dataSource === 'BUSINESS_STAND'">
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
label="企标编号"
|
||||
width="150"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standCode }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standCode }}</a>
|
||||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standCode }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="standName"
|
||||
label="中文名称"
|
||||
min-width="300"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="standEnName"
|
||||
label="英文名称"
|
||||
min-width="300"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standEnName }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standEnName }}</a>
|
||||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standEnName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
label="发布日期"
|
||||
width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{ scope.row.issueTime }}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{ scope.row.issueTime }}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{ scope.row.issueTime }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="putTime"
|
||||
label="实施日期"
|
||||
width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{ scope.row.putTime }}</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{ scope.row.putTime }}</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{ scope.row.putTime }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="standStatusShow"
|
||||
label="标准状态"
|
||||
width="110"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">
|
||||
{{ scope.row.standStatusShow }}
|
||||
</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">
|
||||
{{ scope.row.standStatusShow }}
|
||||
</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">
|
||||
{{ scope.row.standStatusShow }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</div>
|
||||
</el-table>
|
||||
</div>
|
||||
<pagination
|
||||
:page="searchForm.page"
|
||||
:total="searchForm.total"
|
||||
@pageChange="pageChange"
|
||||
@pageSizeChange="pageSizeChange"
|
||||
/>
|
||||
</div>
|
||||
<div class="drawer-footer">
|
||||
<el-button
|
||||
round
|
||||
class="common-button-primary"
|
||||
icon="el-icon-check"
|
||||
type="primary"
|
||||
@click="onDrag"
|
||||
>
|
||||
带入
|
||||
</el-button>
|
||||
<el-button
|
||||
round
|
||||
class="common-button-default"
|
||||
icon="el-icon-close"
|
||||
@click="onCancel"
|
||||
>
|
||||
取消
|
||||
</el-button>
|
||||
</div>
|
||||
<loading :loading="loading">数据获取中</loading>
|
||||
</el-drawer>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'StandardListDrawer',
|
||||
data () {
|
||||
const dataSourceOptions = [
|
||||
{
|
||||
label: '国内标准库',
|
||||
value: 'INLAND'
|
||||
},
|
||||
{
|
||||
label: '海外标准库',
|
||||
value: 'FOREIGN'
|
||||
},
|
||||
{
|
||||
label: '国内外政策库',
|
||||
value: 'FOREIGN_LAWS'
|
||||
},
|
||||
{
|
||||
label: '企业标准库',
|
||||
value: 'BUSINESS_STAND'
|
||||
},
|
||||
]
|
||||
const searchForm = {
|
||||
dataSource: 'INLAND',
|
||||
standType: 'INLAND',
|
||||
lawCode: '',
|
||||
lawName: '',
|
||||
productType: '',
|
||||
page: 1,
|
||||
total: 0,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
}
|
||||
return {
|
||||
searchForm,
|
||||
initSearchForm: JSON.parse(JSON.stringify(searchForm)),
|
||||
dataSourceOptions,
|
||||
standardData: [],
|
||||
loading: false,
|
||||
url: {
|
||||
INLANDFOREIGN: 'sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage',
|
||||
FOREIGN_LAWS: 'lawss/sarLawsInfo/page',
|
||||
BUSINESS_STAND: 'lawss/sarBussionessStand/getSarBussionStandPage'
|
||||
},
|
||||
textStatusMap: {},
|
||||
showTable: true,
|
||||
visible: false,
|
||||
selectedList: [],
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
standardStatusName () {
|
||||
return this.searchForm.standType === 'FOREIGN_LAWS' ? '政策状态' : '标准状态'
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getDicTypeListCode()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
open () {
|
||||
this.visible = true
|
||||
this.searchForm = JSON.parse(JSON.stringify(this.initSearchForm))
|
||||
this.selectedList = []
|
||||
this.getData()
|
||||
},
|
||||
onCancel () {
|
||||
this.visible = false
|
||||
},
|
||||
getData () {
|
||||
this.searchForm.standType = this.searchForm.dataSource
|
||||
const params = { dataSource: this.searchForm.dataSource, standType: this.searchForm.standType, page: this.searchForm.page, total: this.searchForm.total, ...this.searchForm.pageSize }
|
||||
const config = {
|
||||
_this: this,
|
||||
loading: 'loading'
|
||||
}
|
||||
let url = this.url.INLANDFOREIGN
|
||||
switch (this.searchForm.dataSource) {
|
||||
case 'INLAND':
|
||||
case 'FOREIGN':
|
||||
url = this.url.INLANDFOREIGN
|
||||
params.standNumber = this.searchForm.lawNumber
|
||||
params.standName = this.searchForm.lawName
|
||||
break
|
||||
case 'FOREIGN_LAWS':
|
||||
url = this.url.FOREIGN_LAWS
|
||||
params.lawsNo = this.searchForm.lawNumber
|
||||
params.lawsName = this.searchForm.lawName
|
||||
break
|
||||
case 'BUSINESS_STAND':
|
||||
url = this.url.BUSINESS_STAND
|
||||
params.standCode = this.searchForm.lawNumber
|
||||
params.standName = this.searchForm.lawName
|
||||
break
|
||||
}
|
||||
this.$http._getData(url, params, config).then(res => {
|
||||
if (res.ok) {
|
||||
this.standardData = res.data.list
|
||||
this.searchForm.total = res.data.count
|
||||
this.showTable = false
|
||||
this.$nextTick(() => {
|
||||
this.showTable = true
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
pageChange (page) {
|
||||
this.searchForm.page = page
|
||||
this.getData()
|
||||
},
|
||||
pageSizeChange (pageSize) {
|
||||
this.searchForm.pageSize = pageSize
|
||||
this.getData()
|
||||
},
|
||||
dataSourceChange () {
|
||||
const standType = this.searchForm.dataSource
|
||||
this.searchForm = JSON.parse(JSON.stringify(this.initSearchForm))
|
||||
this.searchForm.dataSource = standType
|
||||
this.searchForm.standType = standType
|
||||
this.standType = standType
|
||||
console.log(this.standType)
|
||||
this.getData()
|
||||
},
|
||||
onSearch () {
|
||||
this.searchForm.page = 1
|
||||
this.getData()
|
||||
},
|
||||
onClear () {
|
||||
this.searchForm.page = 1
|
||||
this.searchForm.lawNumber = ''
|
||||
this.searchForm.lawName = ''
|
||||
this.getData()
|
||||
},
|
||||
getDicTypeListCode () {
|
||||
this.$http._getData('sys/dictype/getDicTypeListCode').then(res => {
|
||||
if (res.ok) {
|
||||
this.dict = { ...res.data }
|
||||
this.setMap(this.dict.WBZTCLASS, 'textStatusMap')
|
||||
}
|
||||
})
|
||||
},
|
||||
setMap (data, key) {
|
||||
data.forEach(item => {
|
||||
this.$set(this[key], item.value, item.label);
|
||||
});
|
||||
},
|
||||
selectionChange (selection) {
|
||||
this.selectedList = selection
|
||||
},
|
||||
// 点击查看
|
||||
handlePreview (item) {
|
||||
let name = '', id = item.id, pageType = ''
|
||||
if (item.standType === 'INLAND') {
|
||||
name = 'OtherStandardDetails'
|
||||
pageType = 'INLAND_STAND'
|
||||
}else if (item.standType === 'FOREIGN') {
|
||||
name = 'OtherStandardDetails'
|
||||
pageType = 'FOREIGN_STAND'
|
||||
}else if (item.country !== undefined) {
|
||||
name = 'OtherLawsStandDetails'
|
||||
pageType = 'LAWS_STAND'
|
||||
} else {
|
||||
name = 'OtherBussStandardDetails'
|
||||
pageType = 'BUSINESS_STAND'
|
||||
}
|
||||
const routeUrl = this.$router.resolve({ name, params: { id, pageType } })
|
||||
window.open(routeUrl.href, '_blank')
|
||||
},
|
||||
onDrag () {
|
||||
this.$emit('dragIn', {
|
||||
list: this.selectedList,
|
||||
type: this.searchForm.dataSource
|
||||
})
|
||||
this.visible = false
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.drawer-content{
|
||||
padding: 0 19px;
|
||||
overflow-y: auto;
|
||||
flex: 1;
|
||||
position: relative;
|
||||
}
|
||||
.drawer-footer {
|
||||
width: 100%;
|
||||
padding: 0 20px;
|
||||
height: 70px;
|
||||
line-height: 69px;
|
||||
border-top: 1px solid #e8e8e8;
|
||||
text-align: right;
|
||||
background: #fff;
|
||||
z-index: 999;
|
||||
}
|
||||
</style>
|
||||
@@ -5,33 +5,35 @@
|
||||
<h4>{{ title }}</h4>
|
||||
<div style="margin-top: 10px;width: 300px;max-width: 100%">
|
||||
<el-input
|
||||
:disabled="disabled"
|
||||
:value="name"
|
||||
:placeholder="`选择${title}`"
|
||||
readonly
|
||||
@click.native="choice(id)"></el-input>
|
||||
:disabled="disabled"
|
||||
:value="name"
|
||||
:placeholder="placeholder || `选择${title}`"
|
||||
readonly
|
||||
@click.native="choice(id)"
|
||||
/>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
<Role-tree v-if="!disabled"
|
||||
:check-box="!multiple"
|
||||
:is-title="`选择${title}`"
|
||||
:is-visible.sync="modalShowFlag"
|
||||
@checkedRole="checkedRole"
|
||||
:nodeList="nodeList"
|
||||
></Role-tree>
|
||||
<Role-tree
|
||||
v-if="!disabled"
|
||||
:check-box="!multiple"
|
||||
:is-title="`选择${title}`"
|
||||
:is-visible.sync="modalShowFlag"
|
||||
:nodeList="nodeList"
|
||||
@checkedRole="checkedRole"
|
||||
/>
|
||||
</el-timeline-item>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "TimeLineFormItem",
|
||||
name: 'TimeLineFormItem',
|
||||
props: {
|
||||
id:{
|
||||
id: {
|
||||
type: String,
|
||||
required: true
|
||||
},
|
||||
name:{
|
||||
name: {
|
||||
type: String,
|
||||
required: true
|
||||
},
|
||||
@@ -50,14 +52,17 @@ export default {
|
||||
type: String,
|
||||
required: true
|
||||
},
|
||||
multiple: {// 多选
|
||||
multiple: { // 多选
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
placeholder: {
|
||||
type: String
|
||||
}
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
drawerTitle: '', //drawer标题
|
||||
drawerTitle: '', // drawer标题
|
||||
modalShowFlag: false, // drawer开关
|
||||
nodeList: [],
|
||||
}
|
||||
@@ -77,7 +82,7 @@ export default {
|
||||
this.$emit('update:name', name)
|
||||
},
|
||||
joint (data, type) {
|
||||
return data.reduce((init,item) => {
|
||||
return data.reduce((init, item) => {
|
||||
if (init === '') {
|
||||
return item[type]
|
||||
} else {
|
||||
|
||||
@@ -47,6 +47,7 @@
|
||||
:visible.sync="fileMadel"
|
||||
title="上传文件"
|
||||
:close-on-click-modal="false"
|
||||
append-to-body
|
||||
>
|
||||
<el-upload
|
||||
ref="importfile"
|
||||
@@ -195,6 +196,9 @@ export default {
|
||||
}
|
||||
this.fileList = fileList
|
||||
this.FileList = fileList
|
||||
} else {
|
||||
this.fileList = []
|
||||
this.FileList = []
|
||||
}
|
||||
},
|
||||
beforeUpload (file) {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<template>
|
||||
<!--导出文件改名字模态框-->
|
||||
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="300px" :append-to-body="appendToBody">
|
||||
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="310px" :append-to-body="appendToBody">
|
||||
<el-form :inline="true" class="label-input-form search-area">
|
||||
<el-form-item label="导出名称" class="search-item">
|
||||
<el-input v-model="exportName" placeholder="请输入导出文件名称" :maxlength="30" clearable label="导出名称"/>
|
||||
<el-input class="exportFileInput" v-model="exportName" placeholder="请输入导出文件名称" :maxlength="30" clearable label="导出名称"/>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="demo-drawer-footer">
|
||||
@@ -16,7 +16,7 @@
|
||||
<script>
|
||||
export default {
|
||||
name: "exportDialog",
|
||||
data () {
|
||||
data() {
|
||||
return {
|
||||
exportModelFlag: false,
|
||||
exportName: ''
|
||||
@@ -29,14 +29,14 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
openModel () {
|
||||
openModel() {
|
||||
this.exportName = ''
|
||||
this.exportModelFlag = true
|
||||
},
|
||||
cancel () {
|
||||
cancel() {
|
||||
this.exportModelFlag = false
|
||||
},
|
||||
submit () {
|
||||
submit() {
|
||||
// 导出文件名
|
||||
this.$emit('exportName', this.exportName)
|
||||
}
|
||||
@@ -45,9 +45,14 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.exportFileInput /deep/.el-input__inner {
|
||||
padding-right: 0 !important;
|
||||
}
|
||||
|
||||
/deep/ .label-input-form .add-form-item .el-form-item__content .el-input .el-input__inner {
|
||||
width: 280px;
|
||||
}
|
||||
|
||||
/deep/ .el-dialog .el-dialog__header {
|
||||
width: 100%;
|
||||
font-size: 14px;
|
||||
@@ -58,9 +63,11 @@ export default {
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
/deep/ .el-dialog .el-dialog__body {
|
||||
padding: 15px 20px;
|
||||
}
|
||||
|
||||
/deep/ .el-dialog .el-dialog__footer .el-button {
|
||||
height: 32px;
|
||||
padding: 8px 23px;
|
||||
|
||||
@@ -0,0 +1,113 @@
|
||||
<template>
|
||||
<el-drawer
|
||||
title="政策体系"
|
||||
:visible.sync="visible"
|
||||
>
|
||||
<el-input v-model="filterText" placeholder="请输入政策体系" class="filterInput" style="width: 100%;padding: 10px 5px"/>
|
||||
<div style="flex: 1">
|
||||
<el-tree
|
||||
ref="tree"
|
||||
:data="treeList"
|
||||
:props="defaultProps"
|
||||
node-key="id"
|
||||
highlight-current
|
||||
:filter-node-method="filterNode"
|
||||
:expand-on-click-node="false"
|
||||
>
|
||||
<span slot-scope="{ node, data }" class="custom-tree-node">
|
||||
<span :class="data.children.length !== 0 ? 'is-show' : 'is-leaf-none'" />
|
||||
<span style="font-size:12px"> {{ node.label }} </span>
|
||||
</span>
|
||||
</el-tree>
|
||||
</div>
|
||||
<div class="demo-drawer-footer" style="height: 51px">
|
||||
<el-button size="mini" @click="cancel">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="submit">确定</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'PolicyTree',
|
||||
data () {
|
||||
return {
|
||||
visible: false,
|
||||
getListStand: 'sarResource/ts-resource/getListStandIgnoreMyCollection',
|
||||
treeList: [],
|
||||
filterText: '',
|
||||
defaultProps: {
|
||||
children: 'children',
|
||||
label: 'menuName'
|
||||
},
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
this.getList()
|
||||
},
|
||||
watch: {
|
||||
filterText (val) {
|
||||
this.$refs.tree.filter(val);
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
filterNode (value, data) {
|
||||
if (!value) return true;
|
||||
return data.menuName.indexOf(value) !== -1;
|
||||
},
|
||||
getList () {
|
||||
this.$http._getData(this.getListStand, {
|
||||
sorDivide: 'FOREIGN_LAWS',
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}).then(res => {
|
||||
if (res.ok) {
|
||||
this.treeList = res.data
|
||||
}
|
||||
})
|
||||
},
|
||||
open (key) {
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.filterText = ''
|
||||
key === '' ?
|
||||
this.$refs.tree.setCurrentKey() :
|
||||
this.$refs.tree.setCurrentKey(key)
|
||||
})
|
||||
},
|
||||
cancel () {
|
||||
this.visible = false
|
||||
},
|
||||
submit () {
|
||||
const currentNode = this.$refs.tree.getCurrentNode()
|
||||
if (!currentNode) {
|
||||
this.$message({
|
||||
message: '请选择政策体系',
|
||||
type: 'warning'
|
||||
})
|
||||
return
|
||||
}
|
||||
this.$emit('choose', currentNode)
|
||||
this.cancel()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
/deep/ .is-leaf-none{
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
background: url('~@/assets/images/shangqi/img/none-file-new.png');
|
||||
background-size:100% 100%;
|
||||
}
|
||||
/deep/ .is-show{
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
background:url('~@/assets/images/shangqi/img/tree.png');
|
||||
background-size:100% 100%;
|
||||
}
|
||||
</style>
|
||||
@@ -61,7 +61,7 @@
|
||||
<template slot="title">
|
||||
<div class="modular-header">
|
||||
<div class="modular-header-title">
|
||||
<i class="icon-modular-title" /><span>会议议题</span>
|
||||
<i class="icon-modular-title" /><span>会议议题{{ index + 1 }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
<p class="half"><label style=" margin-right: 157px;">发文日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p>
|
||||
<p class="half"><label style=" margin-right: 157px;">发文单位</label><span>{{ sarStandardsInfoEO.issueCompany || '-' }}</span></p>
|
||||
<p class="half"><label style=" margin-right: 125px;">征集意见周期</label><span>{{ formatDateFunc(sarStandardsInfoEO.commentCycleStart) || '' }} - {{formatDateFunc(sarStandardsInfoEO.commentCycleEnd) || ''}}</span></p>
|
||||
<p class="half"><label style=" margin-right: 156px;">标准状态</label><span style="">{{ sarStandardsInfoEO.standStatusShow || '-' }}</span></p>
|
||||
<p class="half"><label style=" margin-right: 156px;">政策状态</label><span style="">{{ sarStandardsInfoEO.standStatusShow || '-' }}</span></p>
|
||||
<p class="half"><label style=" margin-right: 157px;">适用车型</label><span>{{ sarStandardsInfoEO.lawsSycx || '-' }}</span></p>
|
||||
<p class="half"><label style=" margin-right: 95px;">是否纳入认证清单</label><span>{{ sarStandardsInfoEO.isRelateAccess === '1' ? '是' : (sarStandardsInfoEO.isRelateAccess ? '否':'-')}}</span></p>
|
||||
<p class="half"><label style=" margin-right: 190px;">年度</label><span>{{ sarStandardsInfoEO.lawsYear || '-' }}</span></p>
|
||||
@@ -64,11 +64,17 @@
|
||||
<span v-else>{{ sarStandardsInfoEO.lawsNotisyncNum || '-' }}</span>
|
||||
</p>
|
||||
<!--<p class="half"><label style=" margin-right: 125px;">通知文号链接</label><span>{{ sarStandardsInfoEO.notisyncNumLink || '-' }}</span></p>-->
|
||||
<p class="half"><label style=" margin-right: 157px;">信息简报</label><span>{{ sarStandardsInfoEO.lawsBulletin || '-' }}</span></p>
|
||||
<p class="half"><label style=" margin-right: 157px;">信息月报</label><span>{{ sarStandardsInfoEO.lawsBulletin || '-' }}</span></p>
|
||||
<p class="half"><label style=" margin-right: 157px;">参考消息</label><span>{{ sarStandardsInfoEO.referenceNews || '-' }}</span></p>
|
||||
<p class="half"><label style=" margin-right: 190px;">标签</label><span>{{ sarStandardsInfoEO.lawsLabel || '-' }}</span></p>
|
||||
<p class="half"><label style=" margin-right: 62px;">备注(最终政策发布)</label><span>{{ sarStandardsInfoEO.lawsRemark || '-' }}</span></p>
|
||||
<!--<p class="half"><label style=" margin-right: 157px;">适用区域</label><span>{{ sarStandardsInfoEO.lawsSyqy || '-' }}</span></p>-->
|
||||
<!--<p class="half"><label style=" margin-right: 157px;">政策文号</label><span>{{ sarStandardsInfoEO.lawsNo || '-' }}</span></p>-->
|
||||
<!-- <p class="half"><label style=" margin-right: 62px;">备注(最终政策发布)</label><span>{{ sarStandardsInfoEO.lawsRemark || '-' }}</span></p>-->
|
||||
<p class="half"><label style=" margin-right: 157px;">政策要点</label><span>{{ sarStandardsInfoEO.lawsKeyPoint || '-' }}</span></p>
|
||||
<p class="half"><label style=" margin-right: 190px;">备注</label><span>{{ sarStandardsInfoEO.lawsRemark || '-' }}</span></p>
|
||||
<p class="half">
|
||||
<label style=" margin-right: 125px;">政策原文链接</label>
|
||||
<a v-if="sarStandardsInfoEO.lawsOriginalLink && sarStandardsInfoEO.lawsOriginalLink !== ''" :href="sarStandardsInfoEO.lawsOriginalLink" target="_blank">{{ sarStandardsInfoEO.lawsOriginalLink }}</a>
|
||||
<span v-else>-</span>
|
||||
</p>
|
||||
<template v-for="(child, childIndex) in item.child2">
|
||||
<p class="half">
|
||||
<label style=" margin-right: 156px;">{{child.attrName}}</label>
|
||||
|
||||
@@ -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,115 @@
|
||||
</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" style="display: flex;align-items: center;justify-content: space-between">
|
||||
<div>
|
||||
会议议题{{ index + 1 }}
|
||||
<el-button
|
||||
style="margin-left: 10px"
|
||||
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>
|
||||
<div style="display: flex;align-items: center">
|
||||
<i
|
||||
class="el-icon-bottom move-icon"
|
||||
style="transform: rotate(180deg)"
|
||||
:style="{visibility: (index === 0) ? 'collapse' : 'visible'}"
|
||||
@click="moveOrder(index, 'top')"
|
||||
/>
|
||||
<i
|
||||
class="el-icon-bottom move-icon"
|
||||
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'collapse' : 'visible'}"
|
||||
@click="moveOrder(index, 'bottom')"
|
||||
/>
|
||||
</div>
|
||||
</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 +257,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 +283,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 +358,7 @@ export default {
|
||||
reloadForm: true,
|
||||
api: {
|
||||
add: 'lawss/insideOutsideMeeting/addMeetingInfo',
|
||||
delete :'lawss/insideOutsideMeeting/deleteMeetingInfo',
|
||||
delete: 'lawss/insideOutsideMeeting/deleteMeetingInfo',
|
||||
update: 'lawss/insideOutsideMeeting/updateMeetingInfo'
|
||||
}
|
||||
}
|
||||
@@ -311,10 +381,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)
|
||||
@@ -353,6 +423,9 @@ export default {
|
||||
this.$refs.formRef.validate(valid => {
|
||||
if (valid) {
|
||||
this.isSubmit = true
|
||||
this.form.meetingTopicList.forEach((item, index) => {
|
||||
item.sort = index
|
||||
})
|
||||
if (this.title === '新增') {
|
||||
this.$http._postData(this.api.add, this.form).then(res => {
|
||||
if (res.ok) {
|
||||
@@ -382,7 +455,21 @@ export default {
|
||||
},
|
||||
dragIn (val) {
|
||||
this.$set(this.form, 'topicName', val.topicName)
|
||||
}
|
||||
},
|
||||
moveOrder (index, type) {
|
||||
if (type === 'top') {
|
||||
const obj1 = this.form.meetingTopicList[index]
|
||||
const obj2 = this.form.meetingTopicList[index - 1]
|
||||
this.$set(this.form.meetingTopicList, index - 1, obj1)
|
||||
this.$set(this.form.meetingTopicList, index, obj2)
|
||||
}
|
||||
if (type === 'bottom') {
|
||||
const obj1 = this.form.meetingTopicList[index]
|
||||
const obj2 = this.form.meetingTopicList[index + 1]
|
||||
this.$set(this.form.meetingTopicList, index + 1, obj1)
|
||||
this.$set(this.form.meetingTopicList, index, obj2)
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -403,4 +490,11 @@ export default {
|
||||
background: #fff;
|
||||
z-index: 999;
|
||||
}
|
||||
.move-icon {
|
||||
font-size: 20px;
|
||||
cursor: pointer
|
||||
}
|
||||
.move-icon:hover {
|
||||
color: #409EFF;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -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
|
||||
})
|
||||
},
|
||||
|
||||
@@ -1,218 +1,151 @@
|
||||
<template>
|
||||
<el-drawer
|
||||
title="高级搜索"
|
||||
size="800px"
|
||||
:wrapperClosable="false"
|
||||
:visible.sync="isAdvancedSearch">
|
||||
title="高级搜索"
|
||||
size="800px"
|
||||
:wrapperClosable="false"
|
||||
:visible.sync="isAdvancedSearch"
|
||||
>
|
||||
<div class="demo-drawer-content">
|
||||
<el-form
|
||||
:model="lawsStandInfoSearch"
|
||||
class="label-input-form table-lattice"
|
||||
label-width="80px">
|
||||
:model="lawsStandInfoSearch"
|
||||
class="label-input-form table-lattice"
|
||||
label-width="80px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<div class="prc-content-border">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="12">
|
||||
<SelectFormItem label="1级政策分类"
|
||||
title="1级政策分类"
|
||||
v-model="lawsStandInfoSearch.lawsTypeFirstLevel"
|
||||
:options="dict.lawsTypeFirstLevelOptions">
|
||||
</SelectFormItem>
|
||||
<SelectFormItem label="3级政策分类"
|
||||
title="3级政策分类"
|
||||
v-model="lawsStandInfoSearch.lawsTypeThirdLevel"
|
||||
:options="dict.lawsTypeThirdLevelOptions">
|
||||
</SelectFormItem>
|
||||
<InputFormItem label="政策名称"
|
||||
title="政策名称"
|
||||
v-model="lawsStandInfoSearch.lawsName">
|
||||
</InputFormItem>
|
||||
<InputFormItem label="政策文号"
|
||||
title="政策文号"
|
||||
v-model="lawsStandInfoSearch.lawsNo">
|
||||
</InputFormItem>
|
||||
<InputFormItem label="发文单位"
|
||||
title="发文单位"
|
||||
v-model="lawsStandInfoSearch.issueCompany">
|
||||
</InputFormItem>
|
||||
<SelectFormItem label="标准状态"
|
||||
title="标准状态"
|
||||
v-model="lawsStandInfoSearch.lawsTextState"
|
||||
:options="dict.lawsTextStateOptions">
|
||||
</SelectFormItem>
|
||||
<SelectFormItem label="是否纳入认证清单"
|
||||
title="是否纳入认证清单"
|
||||
v-model="lawsStandInfoSearch.isRelateAccess"
|
||||
:options="isRelateAccessOptions || []">
|
||||
</SelectFormItem>
|
||||
<InputFormItem label="福田转发通知文号"
|
||||
title="福田转发通知文号"
|
||||
v-model="lawsStandInfoSearch.lawsNotisyncNum">
|
||||
</InputFormItem>
|
||||
<InputFormItem label="信息简报"
|
||||
title="信息简报"
|
||||
v-model="lawsStandInfoSearch.lawsBulletin">
|
||||
</InputFormItem>
|
||||
<InputFormItem label="备注(最终政策发布)"
|
||||
title="备注(最终政策发布)"
|
||||
v-model="lawsStandInfoSearch.lawsRemark">
|
||||
</InputFormItem>
|
||||
|
||||
<!--#region-->
|
||||
<!--<el-form-item label="政策分类" title="政策分类" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.lawsType" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.lawsTypeOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="发文日期" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-datePicker v-model="lawsStandInfoSearch.issueTime"-->
|
||||
<!-- :editable="false"-->
|
||||
<!-- placeholder="请选择发文日期"-->
|
||||
<!-- value-format="yyyy-MM-dd"-->
|
||||
<!-- clearable></el-datePicker>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="适用区域" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.lawsSyqy" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.lawsSyqyOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="年度" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.lawsYear" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.lawsYearOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="信息简报" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-input v-model="lawsStandInfoSearch.lawsBulletin" clearable-->
|
||||
<!-- placeholder="请输入政策文号"-->
|
||||
<!-- ></el-input>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--#endregion-->
|
||||
|
||||
<SelectFormItem
|
||||
v-model="lawsStandInfoSearch.lawsTypeFirstLevel"
|
||||
label="1级政策分类"
|
||||
title="1级政策分类"
|
||||
:options="dict.lawsTypeFirstLevelOptions"
|
||||
/>
|
||||
<SelectFormItem
|
||||
v-model="lawsStandInfoSearch.lawsTypeThirdLevel"
|
||||
label="3级政策分类"
|
||||
title="3级政策分类"
|
||||
:options="dict.lawsTypeThirdLevelOptions"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.lawsName"
|
||||
label="政策名称"
|
||||
title="政策名称"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.lawsNo"
|
||||
label="政策文号"
|
||||
title="政策文号"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.issueCompany"
|
||||
label="发文单位"
|
||||
title="发文单位"
|
||||
/>
|
||||
<SelectFormItem
|
||||
v-model="lawsStandInfoSearch.lawsTextState"
|
||||
label="政策状态"
|
||||
title="政策状态"
|
||||
:options="dict.lawsTextStateOptions"
|
||||
/>
|
||||
<SelectFormItem
|
||||
v-model="lawsStandInfoSearch.isRelateAccess"
|
||||
label="是否纳入认证清单"
|
||||
title="是否纳入认证清单"
|
||||
:options="isRelateAccessOptions || []"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.lawsNotisyncNum"
|
||||
label="福田转发通知文号"
|
||||
title="福田转发通知文号"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.lawsBulletin"
|
||||
label="信息月报"
|
||||
title="信息月报"
|
||||
/>
|
||||
<!-- <InputFormItem-->
|
||||
<!-- v-model="lawsStandInfoSearch.lawsRemark"-->
|
||||
<!-- label="备注(最终政策发布)"-->
|
||||
<!-- title="备注(最终政策发布)"-->
|
||||
<!-- />-->
|
||||
<SelectMultipleFormItem
|
||||
v-model="lawsStandInfoSearch.lawsLabel"
|
||||
label="标签"
|
||||
title="标签"
|
||||
:options="dict.lawsLabelOptions"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.lawsRemark"
|
||||
label="备注"
|
||||
title="备注"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<SelectFormItem label="2级政策分类"
|
||||
title="2级政策分类"
|
||||
v-model="lawsStandInfoSearch.lawsTypeSecondLevel"
|
||||
:options="dict.lawsTypeSecondLevelOptions">
|
||||
</SelectFormItem>
|
||||
<SelectFormItem label="4级政策分类"
|
||||
title="4级政策分类"
|
||||
v-model="lawsStandInfoSearch.lawsTypeFourthLevel"
|
||||
:options="dict.lawsTypeFourthLevelOptions">
|
||||
</SelectFormItem>
|
||||
<InputFormItem label="英文名称"
|
||||
title="英文名称"
|
||||
v-model="lawsStandInfoSearch.lawsEnName">
|
||||
</InputFormItem>
|
||||
<DatePickerFormItem label="发文日期"
|
||||
title="发文日期"
|
||||
v-model="lawsStandInfoSearch.issueTime">
|
||||
</DatePickerFormItem>
|
||||
<DataRangePickerFormItem label="征集意见周期"
|
||||
title="征集意见周期"
|
||||
:startTime.sync="lawsStandInfoSearch.commentCycleStart"
|
||||
:endTime.sync="lawsStandInfoSearch.commentCycleEnd">
|
||||
</DataRangePickerFormItem>
|
||||
<SelectMultipleFormItem label="适用车型"
|
||||
title="适用车型"
|
||||
v-model="lawsStandInfoSearch.lawsSycx"
|
||||
:options="dict.lawsSycxOptions || []">
|
||||
</SelectMultipleFormItem>
|
||||
<SelectFormItem label="年度"
|
||||
title="年度"
|
||||
v-model="lawsStandInfoSearch.lawsYear"
|
||||
:options="dict.lawsYearOptions">
|
||||
</SelectFormItem>
|
||||
<InputFormItem label="通知文号链接"
|
||||
title="通知文号链接"
|
||||
v-model="lawsStandInfoSearch.notisyncNumLink">
|
||||
</InputFormItem>
|
||||
<SelectMultipleFormItem label="标签"
|
||||
title="标签"
|
||||
v-model="lawsStandInfoSearch.lawsLabel"
|
||||
:options="dict.lawsLabelOptions">
|
||||
</SelectMultipleFormItem>
|
||||
|
||||
<!--#region-->
|
||||
<!--<el-form-item label="政策文号" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-input v-model="lawsStandInfoSearch.lawsNo" clearable-->
|
||||
<!-- placeholder="请输入政策文号"></el-input>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="发文单位" title="发文单位" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-input v-model="lawsStandInfoSearch.issueCompany" placeholder="请输入发文单位" clearable></el-input>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="适用车型" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.lawsSycx" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.lawsSycxOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="是否纳入认证清单" title="是否纳入认证清单" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.isRelateAccess">-->
|
||||
<!-- <el-option value="1" label="是" key="1"></el-option>-->
|
||||
<!-- <el-option value="2" label="否" key="2"></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="福田转发通知文号" title="福田转发通知文号" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-input v-model="lawsStandInfoSearch.lawsNotisyncNum" placeholder="请输入福田转发通知文号" clearable></el-input>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="标签" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.lawsLabel" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.lawsLabelOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--#endregion-->
|
||||
<SelectFormItem
|
||||
v-model="lawsStandInfoSearch.lawsTypeSecondLevel"
|
||||
label="2级政策分类"
|
||||
title="2级政策分类"
|
||||
:options="dict.lawsTypeSecondLevelOptions"
|
||||
/>
|
||||
<SelectFormItem
|
||||
v-model="lawsStandInfoSearch.lawsTypeFourthLevel"
|
||||
label="4级政策分类"
|
||||
title="4级政策分类"
|
||||
:options="dict.lawsTypeFourthLevelOptions"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.lawsEnName"
|
||||
label="英文名称"
|
||||
title="英文名称"
|
||||
/>
|
||||
<DatePickerFormItem
|
||||
v-model="lawsStandInfoSearch.issueTime"
|
||||
label="发文日期"
|
||||
title="发文日期"
|
||||
/>
|
||||
<DataRangePickerFormItem
|
||||
label="征集意见周期"
|
||||
title="征集意见周期"
|
||||
:startTime.sync="lawsStandInfoSearch.commentCycleStart"
|
||||
:endTime.sync="lawsStandInfoSearch.commentCycleEnd"
|
||||
/>
|
||||
<SelectMultipleFormItem
|
||||
v-model="lawsStandInfoSearch.lawsSycx"
|
||||
label="适用车型"
|
||||
title="适用车型"
|
||||
:options="dict.lawsSycxOptions || []"
|
||||
/>
|
||||
<SelectFormItem
|
||||
v-model="lawsStandInfoSearch.lawsYear"
|
||||
label="年度"
|
||||
title="年度"
|
||||
:options="dict.lawsYearOptions"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.notisyncNumLink"
|
||||
label="通知文号链接"
|
||||
title="通知文号链接"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.referenceNews"
|
||||
label="参考消息"
|
||||
title="参考消息"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.lawsKeyPoint"
|
||||
label="政策要点"
|
||||
title="政策要点"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.lawsOriginalLink"
|
||||
label="政策原文链接"
|
||||
title="政策原文链接"
|
||||
/>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<!--#region-->
|
||||
<!--<el-row :gutter="24">-->
|
||||
<!-- <el-col :span="24">-->
|
||||
<!-- <el-form-item label="征集意见周期" title="征集意见周期" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-date-picker-->
|
||||
<!-- v-model="commentCycleDate"-->
|
||||
<!-- :picker-options="pickerOptions"-->
|
||||
<!-- type="daterange"-->
|
||||
<!-- range-separator="至"-->
|
||||
<!-- start-placeholder="起始时间"-->
|
||||
<!-- end-placeholder="结束时间"-->
|
||||
<!-- value-format="yyyy-MM-dd"-->
|
||||
<!-- align="right">-->
|
||||
<!-- </el-date-picker>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!--</el-row>-->
|
||||
<!--#endregion-->
|
||||
</div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">实施日期</template>
|
||||
@@ -220,55 +153,33 @@
|
||||
<div class="prc-content-border">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="12">
|
||||
<DatePickerGroupFormItem label="实施日期"
|
||||
title="实施日期"
|
||||
v-model="lawsStandInfoSearch.SSRQLAWS"
|
||||
></DatePickerGroupFormItem>
|
||||
<DatePickerFormItem label="新生产实施日期"
|
||||
title="新生产实施日期"
|
||||
v-model="lawsStandInfoSearch.ZCXSSRQLAWS">
|
||||
</DatePickerFormItem>
|
||||
<DatePickerFormItem label="生效日期"
|
||||
title="生效日期"
|
||||
v-model="lawsStandInfoSearch.SXRQLAWS">
|
||||
</DatePickerFormItem>
|
||||
|
||||
<!--#region-->
|
||||
<!--<el-form-item label="实施日期" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-datePicker v-model="lawsStandInfoSearch.SSRQLAWS"-->
|
||||
<!-- :editable="false"-->
|
||||
<!-- placeholder="请选择实施日期"-->
|
||||
<!-- value-format="yyyy-MM-dd"-->
|
||||
<!-- clearable></el-datePicker>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="新车型实施日期" title="新车型实施日期" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-datePicker v-model="lawsStandInfoSearch.XCXSSRQLAWS"-->
|
||||
<!-- :editable="false"-->
|
||||
<!-- placeholder="请选择实施日期"-->
|
||||
<!-- value-format="yyyy-MM-dd"-->
|
||||
<!-- clearable></el-datePicker>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--#endregion-->
|
||||
<DatePickerGroupFormItem
|
||||
v-model="lawsStandInfoSearch.SSRQLAWS"
|
||||
label="实施日期"
|
||||
title="实施日期"
|
||||
/>
|
||||
<DatePickerFormItem
|
||||
v-model="lawsStandInfoSearch.ZCXSSRQLAWS"
|
||||
label="新生产实施日期"
|
||||
title="新生产实施日期"
|
||||
/>
|
||||
<DatePickerFormItem
|
||||
v-model="lawsStandInfoSearch.SXRQLAWS"
|
||||
label="生效日期"
|
||||
title="生效日期"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<DatePickerFormItem label="新认证实施日期"
|
||||
title="新认证实施日期"
|
||||
v-model="lawsStandInfoSearch.XRZSSRQLAWS"
|
||||
></DatePickerFormItem>
|
||||
<DatePickerFormItem label="在用车实施日期"
|
||||
title="在用车实施日期"
|
||||
v-model="lawsStandInfoSearch.XCXSSRQLAWS"
|
||||
></DatePickerFormItem>
|
||||
|
||||
<!--#region-->
|
||||
<!--<el-form-item label="在产车实施日期" title="在产车实施日期" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-datePicker v-model="lawsStandInfoSearch.ZCXSSRQLAWS"-->
|
||||
<!-- :editable="false"-->
|
||||
<!-- placeholder="请选择实施日期"-->
|
||||
<!-- value-format="yyyy-MM-dd"-->
|
||||
<!-- clearable></el-datePicker>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--#endregion-->
|
||||
<DatePickerFormItem
|
||||
v-model="lawsStandInfoSearch.XRZSSRQLAWS"
|
||||
label="新认证实施日期"
|
||||
title="新认证实施日期"
|
||||
/>
|
||||
<DatePickerFormItem
|
||||
v-model="lawsStandInfoSearch.XCXSSRQLAWS"
|
||||
label="在用车实施日期"
|
||||
title="在用车实施日期"
|
||||
/>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
@@ -278,120 +189,42 @@
|
||||
<div class="prc-content-border">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="12">
|
||||
<SelectFormItem label="我司参与深度"
|
||||
title="我司参与深度"
|
||||
v-model="lawsStandInfoSearch.CYSDLAWS"
|
||||
:options="dict.CYSDLAWSOptions">
|
||||
</SelectFormItem>
|
||||
<DepartmentFormItem label="投稿单位"
|
||||
title="投稿单位"
|
||||
v-model="lawsStandInfoSearch.TGDWLAWS"
|
||||
:ids.sync="lawsStandInfoSearch.TGDWLAWSID">
|
||||
</DepartmentFormItem>
|
||||
<DepartmentFormItem label="责任部门"
|
||||
title="责任部门"
|
||||
v-model="lawsStandInfoSearch.ZRBMLAWS"
|
||||
:ids.sync="lawsStandInfoSearch.ZRBMLAWSID">
|
||||
</DepartmentFormItem>
|
||||
<!--#region-->
|
||||
<!--<el-form-item label="发布机构" title="发布机构" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-input v-model="lawsStandInfoSearch.FBJGLAWS" placeholder="请输入发布机构" clearable></el-input>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="投稿人" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.TGRLAWS" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.TGRLAWSOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="能源类型" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.NYLXLAWS" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.NYLXLAWSOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="责任部门" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.ZRBMLAWS" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.ZRBMLAWSOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--#endregion-->
|
||||
<SelectFormItem
|
||||
v-model="lawsStandInfoSearch.CYSDLAWS"
|
||||
label="我司参与深度"
|
||||
title="我司参与深度"
|
||||
:options="dict.CYSDLAWSOptions"
|
||||
/>
|
||||
<DepartmentFormItem
|
||||
v-model="lawsStandInfoSearch.TGDWLAWS"
|
||||
label="投稿单位"
|
||||
title="投稿单位"
|
||||
:ids.sync="lawsStandInfoSearch.TGDWLAWSID"
|
||||
/>
|
||||
<DepartmentFormItem
|
||||
v-model="lawsStandInfoSearch.ZRBMLAWS"
|
||||
label="责任部门"
|
||||
title="责任部门"
|
||||
:ids.sync="lawsStandInfoSearch.ZRBMLAWSID"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<personFormItem label="投稿人"
|
||||
title="投稿人"
|
||||
v-model="lawsStandInfoSearch.TGRLAWS">
|
||||
</personFormItem>
|
||||
<SelectMultipleFormItem label="适用认证"
|
||||
title="适用认证"
|
||||
v-model="lawsStandInfoSearch.SYRZLAWS"
|
||||
:options="dict.syrzOptions">
|
||||
</SelectMultipleFormItem>
|
||||
<personFormItem label="责任工程师"
|
||||
title="责任工程师"
|
||||
v-model="lawsStandInfoSearch.ZRGCSLAWS">
|
||||
</personFormItem>
|
||||
<!--#region-->
|
||||
<!--<el-form-item label="我司参与深度" title="我司参与深度" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.CYSDLAWS" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.CYSDLAWSOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="投稿单位" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.TGDWLAWS" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.TGDWLAWSOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="适用认证" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.YYRZLAWS" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.YYRZLAWSOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--<el-form-item label="责任工程师" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-select v-model="lawsStandInfoSearch.ZRGCSLAWS" filterable clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in dict.ZRGCSLAWSOptions"-->
|
||||
<!-- placeholder="请选择"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--#endregion-->
|
||||
<personFormItem
|
||||
v-model="lawsStandInfoSearch.TGRLAWS"
|
||||
label="投稿人"
|
||||
title="投稿人"
|
||||
/>
|
||||
<SelectMultipleFormItem
|
||||
v-model="lawsStandInfoSearch.SYRZLAWS"
|
||||
label="适用认证"
|
||||
title="适用认证"
|
||||
:options="dict.syrzOptions"
|
||||
/>
|
||||
<personFormItem
|
||||
v-model="lawsStandInfoSearch.ZRGCSLAWS"
|
||||
label="责任工程师"
|
||||
title="责任工程师"
|
||||
/>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
@@ -401,38 +234,33 @@
|
||||
<div class="prc-content-border">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="12">
|
||||
<InputForStandardsForLaws label="代替文件号"
|
||||
title="代替文件号"
|
||||
v-model="lawsStandInfoSearch.DTWJHLAWS"
|
||||
></InputForStandardsForLaws>
|
||||
<InputForStandardsForLaws label="引用标准&政策"
|
||||
title="引用标准&政策"
|
||||
v-model="lawsStandInfoSearch.YYBZZCLAWS"
|
||||
></InputForStandardsForLaws>
|
||||
<InputFormItem label="参会记录"
|
||||
title="参会记录"
|
||||
v-model="lawsStandInfoSearch.CHJLLAWS">
|
||||
</InputFormItem>
|
||||
<!--#region-->
|
||||
<!--<el-form-item label="代替文件号" title="代替文件号" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-input v-model="lawsStandInfoSearch.DTWJHLAWS" placeholder="请输入代替文件号" clearable></el-input>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--#endregion-->
|
||||
<InputForStandardsForLaws
|
||||
v-model="lawsStandInfoSearch.DTWJHLAWS"
|
||||
label="代替文件号"
|
||||
title="代替文件号"
|
||||
/>
|
||||
<InputForStandardsForLaws
|
||||
v-model="lawsStandInfoSearch.YYBZZCLAWS"
|
||||
label="引用标准&政策"
|
||||
title="引用标准&政策"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.CHJLLAWS"
|
||||
label="参会记录"
|
||||
title="参会记录"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<InputForStandardsForLaws label="被代替文件号"
|
||||
title="被代替文件号"
|
||||
v-model="lawsStandInfoSearch.BDTWJHLAWS"
|
||||
></InputForStandardsForLaws>
|
||||
<InputFormItem label="相关流程"
|
||||
title="相关流程"
|
||||
v-model="lawsStandInfoSearch.XGLC">
|
||||
</InputFormItem>
|
||||
<!--#region-->
|
||||
<!--<el-form-item label="被代替文件号" title="被代替文件号" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-input v-model="lawsStandInfoSearch.BDTWJHLAWS" placeholder="请输入被代替文件号" clearable></el-input>-->
|
||||
<!--</el-form-item>-->
|
||||
<!--#endregion-->
|
||||
<InputForStandardsForLaws
|
||||
v-model="lawsStandInfoSearch.BDTWJHLAWS"
|
||||
label="被代替文件号"
|
||||
title="被代替文件号"
|
||||
/>
|
||||
<InputFormItem
|
||||
v-model="lawsStandInfoSearch.XGLC"
|
||||
label="相关流程"
|
||||
title="相关流程"
|
||||
/>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
@@ -440,15 +268,19 @@
|
||||
</div>
|
||||
<div class="demo-drawer-footer">
|
||||
<el-button
|
||||
class="common-button-primary"
|
||||
icon="el-icon-check"
|
||||
type="primary"
|
||||
@click="getBussionStandTableBtn(lawsStandInfoSearch,'','sel')">搜索
|
||||
class="common-button-primary"
|
||||
icon="el-icon-check"
|
||||
type="primary"
|
||||
@click="getBussionStandTableBtn(lawsStandInfoSearch,'','sel')"
|
||||
>
|
||||
搜索
|
||||
</el-button>
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
icon="el-icon-close"
|
||||
@click="clearAllSearch('lawsStandInfoSearch')">取消
|
||||
class="common-button-default"
|
||||
icon="el-icon-close"
|
||||
@click="clearAllSearch('lawsStandInfoSearch')"
|
||||
>
|
||||
取消
|
||||
</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
@@ -456,18 +288,18 @@
|
||||
|
||||
<script>
|
||||
import ProcessTitle from '@/pages/processCenter/pages/components/ProcessTitle'
|
||||
import SelectFormItem from "@/components/hzwlComponents/SelectFormItem";
|
||||
import InputFormItem from "@/components/hzwlComponents/InputFormItem";
|
||||
import DatePickerFormItem from "@/components/hzwlComponents/DatePickerFormItem";
|
||||
import DataRangePickerFormItem from "@/components/hzwlComponents/DataRangePickerFormItem";
|
||||
import SelectMultipleFormItem from "@/components/hzwlComponents/SelectMultipleFormItem";
|
||||
import DatePickerGroupFormItem from "@/components/hzwlComponents/DatePickerGroupFormItem";
|
||||
import DepartmentFormItem from "@/components/hzwlComponents/DepartmentFormItem";
|
||||
import personFormItem from "@/components/hzwlComponents/personFormItem";
|
||||
import InputForStandardsForLaws from "@/components/hzwlComponents/InputForStandardsForLaws";
|
||||
import SelectFormItem from '@/components/hzwlComponents/SelectFormItem';
|
||||
import InputFormItem from '@/components/hzwlComponents/InputFormItem';
|
||||
import DatePickerFormItem from '@/components/hzwlComponents/DatePickerFormItem';
|
||||
import DataRangePickerFormItem from '@/components/hzwlComponents/DataRangePickerFormItem';
|
||||
import SelectMultipleFormItem from '@/components/hzwlComponents/SelectMultipleFormItem';
|
||||
import DatePickerGroupFormItem from '@/components/hzwlComponents/DatePickerGroupFormItem';
|
||||
import DepartmentFormItem from '@/components/hzwlComponents/DepartmentFormItem';
|
||||
import personFormItem from '@/components/hzwlComponents/personFormItem';
|
||||
import InputForStandardsForLaws from '@/components/hzwlComponents/InputForStandardsForLaws';
|
||||
|
||||
export default {
|
||||
name: "advancedSearch",
|
||||
name: 'AdvancedSearch',
|
||||
components: {
|
||||
ProcessTitle,
|
||||
SelectFormItem,
|
||||
@@ -480,6 +312,16 @@ export default {
|
||||
personFormItem,
|
||||
InputForStandardsForLaws
|
||||
},
|
||||
props: {
|
||||
lawsStandInfoSearch: {
|
||||
type: Object,
|
||||
default: () => ({})
|
||||
},
|
||||
dict: {
|
||||
type: Object,
|
||||
default: () => ({})
|
||||
},
|
||||
},
|
||||
data () {
|
||||
return{
|
||||
isAdvancedSearch: false,
|
||||
@@ -495,16 +337,6 @@ export default {
|
||||
]
|
||||
}
|
||||
},
|
||||
props: {
|
||||
lawsStandInfoSearch: {
|
||||
type: Object,
|
||||
default: () => ({})
|
||||
},
|
||||
dict: {
|
||||
type: Object,
|
||||
default: () => ({})
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
open () {
|
||||
this.isAdvancedSearch = true
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<!-- 配置标准 -->
|
||||
<el-drawer
|
||||
title="配置政策"
|
||||
:wrapperClosable="false"
|
||||
:visible.sync="configStandFlag"
|
||||
size="1200px"
|
||||
@close="cancelConfigStand"
|
||||
title="配置政策"
|
||||
:wrapperClosable="false"
|
||||
:visible.sync="configStandFlag"
|
||||
size="1200px"
|
||||
@close="cancelConfigStand"
|
||||
>
|
||||
<div class="demo-drawer-content">
|
||||
<div class="search-area">
|
||||
@@ -16,8 +16,12 @@
|
||||
<!-- placeholder="根据标准名称查找" clearable/>-->
|
||||
<!-- </el-formItem>-->
|
||||
<el-formItem label="政策文号" prop="lawsNo" class="search-item">
|
||||
<el-input v-model="sarConfigStandSearch.lawsNo" @keyup.enter.native="searchConfiguraStand"
|
||||
placeholder="根据政策文号查找" clearable/>
|
||||
<el-input
|
||||
v-model="sarConfigStandSearch.lawsNo"
|
||||
placeholder="根据政策文号查找"
|
||||
clearable
|
||||
@keyup.enter.native="searchConfiguraStand"
|
||||
/>
|
||||
</el-formItem>
|
||||
<!-- <el-formItem label="企标类别" prop="standSort" class="search-item">-->
|
||||
<!-- <el-select v-model="sarConfigStandSearch.standSort" placeholder="根据企标类别查找"-->
|
||||
@@ -27,24 +31,32 @@
|
||||
<!-- </el-select>-->
|
||||
<!-- </el-formItem>-->
|
||||
<el-formItem label="政策名称" prop="lawsName" class="search-item">
|
||||
<el-input v-model="sarConfigStandSearch.lawsName" @keyup.enter.native="searchConfiguraStand" placeholder="根据政策名称查找" clearable :maxlength="100"/>
|
||||
<el-input
|
||||
v-model="sarConfigStandSearch.lawsName"
|
||||
placeholder="根据政策名称查找"
|
||||
clearable
|
||||
:maxlength="100"
|
||||
@keyup.enter.native="searchConfiguraStand"
|
||||
/>
|
||||
</el-formItem>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="small"
|
||||
:loading="searching"
|
||||
@click="searchConfiguraStand">
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="small"
|
||||
:loading="searching"
|
||||
@click="searchConfiguraStand"
|
||||
>
|
||||
查询
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
size="small"
|
||||
@click="clearAllSearch(3)"
|
||||
>清空
|
||||
class="common-button-default"
|
||||
size="small"
|
||||
@click="clearAllSearch(3)"
|
||||
>
|
||||
清空
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
@@ -52,96 +64,104 @@
|
||||
</div>
|
||||
<div class="drawer-content">
|
||||
<el-table
|
||||
ref="selection"
|
||||
:data="configStandList"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%; flex: auto;"
|
||||
height="100%"
|
||||
border
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||
@sort-change="sortChangeConfig"
|
||||
@selection-change="selectConfigStandChange">
|
||||
ref="selection"
|
||||
:data="configStandList"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%; flex: auto;"
|
||||
height="100%"
|
||||
border
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||
@sort-change="sortChangeConfig"
|
||||
@selection-change="selectConfigStandChange"
|
||||
>
|
||||
<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) + (configPage - 1) * configRows }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="lawsNo"
|
||||
label="政策文号"
|
||||
width="150"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
prop="lawsNo"
|
||||
label="政策文号"
|
||||
width="150"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="lawsName"
|
||||
label="政策名称"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="lawsEnName"
|
||||
label="英文名称"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
label="发文日期"
|
||||
width="120"
|
||||
sortable
|
||||
align="center"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="lawsName"
|
||||
label="政策名称"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="lawsEnName"
|
||||
label="英文名称"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="issueTime"
|
||||
label="发文日期"
|
||||
width="120"
|
||||
sortable
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span>{{formatDate(scope.row.issueTime)}}</span>
|
||||
<span>{{ formatDate(scope.row.issueTime) }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="ssrqlaws"
|
||||
label="实施日期"
|
||||
width="120"
|
||||
sortable
|
||||
align="center">
|
||||
prop="ssrqlaws"
|
||||
label="实施日期"
|
||||
width="120"
|
||||
sortable
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span>{{formatDate(scope.row.ssrqlaws)}}</span>
|
||||
<span>{{ formatDate(scope.row.ssrqlaws) }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standStatusShow"
|
||||
label="标准状态"
|
||||
width="100"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
prop="standStatusShow"
|
||||
label="政策状态"
|
||||
width="100"
|
||||
align="center"
|
||||
/>
|
||||
</el-table>
|
||||
</div>
|
||||
<pagination
|
||||
style="position: relative;"
|
||||
:auto-size="true"
|
||||
:page="configPage"
|
||||
:pageSize="configRows"
|
||||
:total="configTotal"
|
||||
@pageChange="configuraPageChange"
|
||||
@pageSizeChange="configuraPageSizeChange"></pagination>
|
||||
style="position: relative;"
|
||||
:auto-size="true"
|
||||
:page="configPage"
|
||||
:pageSize="configRows"
|
||||
:total="configTotal"
|
||||
@pageChange="configuraPageChange"
|
||||
@pageSizeChange="configuraPageSizeChange"
|
||||
/>
|
||||
<div class="divDel">
|
||||
<div class="divDel_title">已选政策</div>
|
||||
<div class="divDel_box">
|
||||
<el-tag
|
||||
v-for="tag in selectConfigStand"
|
||||
:key="tag.id"
|
||||
size="mini"
|
||||
closable
|
||||
@close="handleTagClose(tag)">
|
||||
<a v-if="tag.standStatusShow === '作废' "
|
||||
class="table-jump" style="color: #F56C6C"
|
||||
@click="handlePreview(tag)">{{ tag.lawsName }}</a>
|
||||
<a v-else @click="handlePreview(tag)" class="table-jump" style="color: #333333">{{ tag.lawsName }}</a>
|
||||
v-for="tag in selectConfigStand"
|
||||
:key="tag.id"
|
||||
size="mini"
|
||||
closable
|
||||
@close="handleTagClose(tag)"
|
||||
>
|
||||
<a
|
||||
v-if="tag.standStatusShow === '作废' "
|
||||
class="table-jump"
|
||||
style="color: #F56C6C"
|
||||
@click="handlePreview(tag)"
|
||||
>{{ tag.lawsName }}</a>
|
||||
<a v-else class="table-jump" style="color: #333333" @click="handlePreview(tag)">{{ tag.lawsName }}</a>
|
||||
</el-tag>
|
||||
</div>
|
||||
</div>
|
||||
@@ -149,21 +169,42 @@
|
||||
</div>
|
||||
<div class="demo-drawer-footer">
|
||||
<el-button
|
||||
type="primary"
|
||||
round class="common-button-primary"
|
||||
icon="el-icon-check"
|
||||
@click="saveConfigStand"
|
||||
:loading="isSubmit"
|
||||
>提交</el-button>
|
||||
<el-button class="common-button-default" style="padding: 7px 12px;" icon="el-icon-close" type="primary"
|
||||
round @click="cancelConfigStand">取消</el-button>
|
||||
type="primary"
|
||||
round
|
||||
class="common-button-primary"
|
||||
icon="el-icon-check"
|
||||
:loading="isSubmit"
|
||||
@click="saveConfigStand"
|
||||
>
|
||||
提交
|
||||
</el-button>
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
style="padding: 7px 12px;"
|
||||
icon="el-icon-close"
|
||||
type="primary"
|
||||
round
|
||||
@click="cancelConfigStand"
|
||||
>
|
||||
取消
|
||||
</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "configStandDrawer",
|
||||
name: 'ConfigStandDrawer',
|
||||
props: {
|
||||
selectSarMenu: {
|
||||
type: Object,
|
||||
required: true
|
||||
},
|
||||
getBussionStandTable: {
|
||||
type: Function,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
configStandFlag: false, // 控制配置标准表格是否显示
|
||||
@@ -198,16 +239,6 @@ export default {
|
||||
selectConfigStand: []
|
||||
}
|
||||
},
|
||||
props: {
|
||||
selectSarMenu: {
|
||||
type: Object,
|
||||
required: true
|
||||
},
|
||||
getBussionStandTable: {
|
||||
type: Function,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
open () {
|
||||
this.configStandFlag = true
|
||||
@@ -221,8 +252,8 @@ export default {
|
||||
this.selectConfiguraStand()
|
||||
},
|
||||
clearAllSearch (flag) {
|
||||
this.sarConfigStandSearch.lawsNo=''
|
||||
this.sarConfigStandSearch.lawsName=''
|
||||
this.sarConfigStandSearch.lawsNo = ''
|
||||
this.sarConfigStandSearch.lawsName = ''
|
||||
this.configPage = 1
|
||||
this.sarConfigStandSearch.page = 1
|
||||
this.selectConfiguraStand()
|
||||
@@ -230,8 +261,8 @@ export default {
|
||||
// 取消配置标准
|
||||
cancelConfigStand () {
|
||||
this.configStandFlag = false
|
||||
this.sarConfigStandSearch.lawsNo=''
|
||||
this.sarConfigStandSearch.lawsName=''
|
||||
this.sarConfigStandSearch.lawsNo = ''
|
||||
this.sarConfigStandSearch.lawsName = ''
|
||||
this.configPage = 1
|
||||
this.selectConfigStand = []
|
||||
},
|
||||
@@ -247,7 +278,7 @@ export default {
|
||||
})
|
||||
},
|
||||
// 配置标准-表格排序
|
||||
sortChangeConfig(sortObj) {
|
||||
sortChangeConfig (sortObj) {
|
||||
if (sortObj.column.order !== 'normal') {
|
||||
switch (sortObj.prop) {
|
||||
case 'issueTime' :
|
||||
@@ -299,7 +330,7 @@ export default {
|
||||
},
|
||||
// 提交配置搜索项
|
||||
saveConfigStand () {
|
||||
let search = {}
|
||||
const search = {}
|
||||
search.menuId = this.selectSarMenu.id
|
||||
if (this.selectConfigStand.length === 0) {
|
||||
this.$message({
|
||||
@@ -325,9 +356,9 @@ export default {
|
||||
}
|
||||
},
|
||||
formatDate (dateStr) {
|
||||
if (dateStr && dateStr!== '') {
|
||||
let dateArr = dateStr.split(',')
|
||||
return dateArr.map(date => date.slice(0,10)).join(',')
|
||||
if (dateStr && dateStr !== '') {
|
||||
const dateArr = dateStr.split(',')
|
||||
return dateArr.map(date => date.slice(0, 10)).join(',')
|
||||
}
|
||||
return dateStr
|
||||
},
|
||||
@@ -336,7 +367,7 @@ export default {
|
||||
this.$refs.selection.toggleRowSelection(tag, false)
|
||||
},
|
||||
handlePreview (tag) {
|
||||
let routeUrl = this.$router.resolve({
|
||||
const routeUrl = this.$router.resolve({
|
||||
name: 'OtherLawsStandDetails',
|
||||
params: {
|
||||
id: tag.id,
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -2,173 +2,178 @@
|
||||
<!--表格-->
|
||||
<div class="content">
|
||||
<el-table
|
||||
ref="selection"
|
||||
:data="standinfoList"
|
||||
tooltip-effect="dark"
|
||||
style="width:100%;"
|
||||
:height="tableHeight"
|
||||
border
|
||||
class="drag-table"
|
||||
:row-class-name="dragRowClassName"
|
||||
@sort-change="sortChange"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
@selection-change="standSelectChange"
|
||||
ref="selection"
|
||||
:data="standinfoList"
|
||||
tooltip-effect="dark"
|
||||
style="width:100%;"
|
||||
:height="tableHeight"
|
||||
border
|
||||
class="drag-table"
|
||||
:row-class-name="dragRowClassName"
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
@sort-change="sortChange"
|
||||
@selection-change="standSelectChange"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
min-width="5%"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
type="selection"
|
||||
min-width="5%"
|
||||
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) + (lawsStandInfoSearch.page - 1) * lawsStandInfoSearch.pageSize }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="lawsName"
|
||||
label="政策名称"
|
||||
min-width="120"
|
||||
show-overflow-tooltip
|
||||
prop="lawsName"
|
||||
label="政策名称"
|
||||
min-width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsName }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsName }}</a>
|
||||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsName }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="lawsNo"
|
||||
label="政策文号"
|
||||
sortable
|
||||
min-width="120"
|
||||
show-overflow-tooltip
|
||||
prop="lawsNo"
|
||||
label="政策文号"
|
||||
sortable
|
||||
min-width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsNo }}</a>
|
||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsNo }}</a>
|
||||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsNo }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="issueCompany"
|
||||
label="发文单位"
|
||||
sortable
|
||||
min-width="120"
|
||||
show-overflow-tooltip
|
||||
prop="issueCompany"
|
||||
label="发文单位"
|
||||
sortable
|
||||
min-width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.issueCompany }}</a>
|
||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.issueCompany }}</a>
|
||||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.issueCompany }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.issueCompany }}</a>
|
||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.issueCompany }}</a>
|
||||
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.issueCompany }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="issueTime"
|
||||
label="发文日期"
|
||||
sortable
|
||||
min-width="120"
|
||||
show-overflow-tooltip
|
||||
prop="issueTime"
|
||||
label="发文日期"
|
||||
sortable
|
||||
min-width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.issueTime) }}</a>
|
||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.issueTime) }}</a>
|
||||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.issueTime) }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.issueTime) }}</a>
|
||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.issueTime) }}</a>
|
||||
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.issueTime) }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="ssrqlaws"
|
||||
label="实施日期"
|
||||
sortable
|
||||
min-width="120"
|
||||
show-overflow-tooltip
|
||||
prop="ssrqlaws"
|
||||
label="实施日期"
|
||||
sortable
|
||||
min-width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
||||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
||||
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="lawsSycx"
|
||||
label="适用车型"
|
||||
sortable
|
||||
min-width="120"
|
||||
show-overflow-tooltip
|
||||
prop="lawsSycx"
|
||||
label="适用车型"
|
||||
sortable
|
||||
min-width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
||||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
||||
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
sortable
|
||||
prop="standStatusShow"
|
||||
label="标准状态"
|
||||
min-width="110"
|
||||
show-overflow-tooltip
|
||||
sortable
|
||||
prop="standStatusShow"
|
||||
label="政策状态"
|
||||
min-width="110"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">
|
||||
{{scope.row.standStatusShow}}
|
||||
{{ scope.row.standStatusShow }}
|
||||
</span>
|
||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">
|
||||
{{scope.row.standStatusShow}}
|
||||
{{ scope.row.standStatusShow }}
|
||||
</span>
|
||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">
|
||||
{{scope.row.standStatusShow}}
|
||||
{{ scope.row.standStatusShow }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="isPermission('1a8b50a3541387dc2818fc361ea3ab31,dca69b895a88c2e3a3bf16d44e34fc04,b98579c3d0514ba75c4d1b21c9d5aa17,c158e787202d1e67f75d5a2f9da889df') > 0"
|
||||
prop="action"
|
||||
label="操作"
|
||||
align="center"
|
||||
min-width="120"
|
||||
v-if="isPermission('1a8b50a3541387dc2818fc361ea3ab31,dca69b895a88c2e3a3bf16d44e34fc04,b98579c3d0514ba75c4d1b21c9d5aa17,c158e787202d1e67f75d5a2f9da889df') > 0"
|
||||
prop="action"
|
||||
label="操作"
|
||||
align="center"
|
||||
min-width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a class="table-jump" v-btn-permission="'1a8b50a3541387dc2818fc361ea3ab31'" v-if="scope.row.collectBtn" style="color: #2d8cf0" @click="handleCommand([scope.row, '收藏'])">收藏</a>
|
||||
<a class="table-jump" v-btn-permission="'dca69b895a88c2e3a3bf16d44e34fc04'" v-else style="color: #2d8cf0" @click="handleCommand([scope.row, '取消收藏'])">取消收藏</a>
|
||||
<a class="table-jump" v-btn-permission="'b98579c3d0514ba75c4d1b21c9d5aa17'" style="color: #2d8cf0;margin-left: 10px" @click="handleCommand([scope.row, '编辑'])">编辑</a>
|
||||
<a class="table-jump" v-btn-permission="'c158e787202d1e67f75d5a2f9da889df'" style="color: #f56c6c;margin-left: 10px" @click="handleCommand([scope.row, '删除'])">删除</a>
|
||||
<a
|
||||
v-if="scope.row.collectBtn"
|
||||
v-btn-permission="'1a8b50a3541387dc2818fc361ea3ab31'"
|
||||
class="table-jump"
|
||||
style="color: #2d8cf0"
|
||||
@click="handleCommand([scope.row, '收藏'])"
|
||||
>收藏</a>
|
||||
<a
|
||||
v-else
|
||||
v-btn-permission="'dca69b895a88c2e3a3bf16d44e34fc04'"
|
||||
class="table-jump"
|
||||
style="color: #2d8cf0"
|
||||
@click="handleCommand([scope.row, '取消收藏'])"
|
||||
>取消收藏</a>
|
||||
<a v-btn-permission="'b98579c3d0514ba75c4d1b21c9d5aa17'" class="table-jump" style="color: #2d8cf0;margin-left: 10px" @click="handleCommand([scope.row, '编辑'])">编辑</a>
|
||||
<a v-btn-permission="'c158e787202d1e67f75d5a2f9da889df'" class="table-jump" style="color: #f56c6c;margin-left: 10px" @click="handleCommand([scope.row, '删除'])">删除</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination :page="lawsStandInfoSearch.page" :total="total"
|
||||
@pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
|
||||
<pagination
|
||||
:page="lawsStandInfoSearch.page"
|
||||
:total="total"
|
||||
@pageChange="pageChange"
|
||||
@pageSizeChange="pageSizeChange"
|
||||
/>
|
||||
<loading :loading="loading">数据获取中</loading>
|
||||
<editDrawer
|
||||
ref="editDrawerRef"
|
||||
:formFieldListData="formFieldListData"
|
||||
:selectSarMenu="selectSarMenu"
|
||||
:getBussionStandTable="getBussionStandTable">
|
||||
</editDrawer>
|
||||
ref="editDrawerRef"
|
||||
:formFieldListData="formFieldListData"
|
||||
:selectSarMenu="selectSarMenu"
|
||||
:getBussionStandTable="getBussionStandTable"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import editDrawer from "./editDrawer";
|
||||
import store from "@/store";
|
||||
import editDrawer from './editDrawer';
|
||||
import store from '@/store';
|
||||
export default {
|
||||
name: "mainTable",
|
||||
data () {
|
||||
return {
|
||||
standinfoList: [],
|
||||
tableHeight: null,
|
||||
tableFlag: '',
|
||||
total: 0,
|
||||
loading: false,
|
||||
selectedList: [],
|
||||
formFieldListData: [],
|
||||
dict: {}
|
||||
}
|
||||
},
|
||||
name: 'MainTable',
|
||||
components: {
|
||||
editDrawer
|
||||
},
|
||||
@@ -184,19 +189,31 @@ export default {
|
||||
required: true
|
||||
}
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
standinfoList: [],
|
||||
tableHeight: null,
|
||||
tableFlag: '',
|
||||
total: 0,
|
||||
loading: false,
|
||||
selectedList: [],
|
||||
formFieldListData: [],
|
||||
dict: {}
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
selectedList: {
|
||||
handler: function(newValue, oldValue) {
|
||||
handler: function (newValue, oldValue) {
|
||||
this.$emit('selectedList', newValue)
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
},
|
||||
created() {
|
||||
created () {
|
||||
this.getBussionStandTable()
|
||||
this.getDicTypeListCode()
|
||||
},
|
||||
mounted() {
|
||||
mounted () {
|
||||
// 加载动态表单数据
|
||||
this.getAddFormFieldList()
|
||||
this.tableHeight = $('.content').height() - 44 - 20
|
||||
@@ -204,22 +221,22 @@ export default {
|
||||
this.tableHeight = $('.content').height() - 44 - 20
|
||||
}
|
||||
},
|
||||
destroyed() {
|
||||
destroyed () {
|
||||
window.onresize = null
|
||||
this.tableHeight = ""
|
||||
this.tableHeight = ''
|
||||
},
|
||||
methods: {
|
||||
addModal () {
|
||||
this.$refs.editDrawerRef.addModal()
|
||||
},
|
||||
// 分页查询企业标准---表格
|
||||
getBussionStandTable (item, nodeId,type) {
|
||||
getBussionStandTable (item, nodeId, type) {
|
||||
if (item !== '' && item !== null && item !== undefined) {
|
||||
item.pageSize = this.$store.getters.userInfo.configContent
|
||||
}
|
||||
this.lawsStandInfoSearch.pageSize = this.$store.getters.userInfo.configContent
|
||||
const data = item || this.lawsStandInfoSearch
|
||||
const formData = {...data}
|
||||
const formData = { ...data }
|
||||
if (nodeId !== undefined) {
|
||||
formData.menuId = nodeId
|
||||
}
|
||||
@@ -240,16 +257,16 @@ export default {
|
||||
formData.collectMenuId = undefined
|
||||
}
|
||||
formData.userId = this.$store.getters.userInfo.userId
|
||||
if(type === 'sel'){
|
||||
if(type === 'sel') {
|
||||
const advanceSearchVOList = [];
|
||||
if(this.formFieldListData !== undefined && this.formFieldListData !== null){
|
||||
if(this.formFieldListData !== undefined && this.formFieldListData !== null) {
|
||||
const formFieldList = this.formFieldListData
|
||||
formFieldList.forEach((item) => {
|
||||
const value = this.lawsStandInfoSearch[item.attrField]
|
||||
// 时间格式处理
|
||||
if (value !== undefined && value !== null && value !== '') {
|
||||
advanceSearchVOList.push({
|
||||
connect: advanceSearchVOList.length > 0 ? "and" : "",
|
||||
connect: advanceSearchVOList.length > 0 ? 'and' : '',
|
||||
field: item.attrField || '',
|
||||
type: 'like',
|
||||
value: value
|
||||
@@ -258,7 +275,7 @@ export default {
|
||||
})
|
||||
}
|
||||
formData.advanceSearchVOStr = JSON.stringify(advanceSearchVOList);
|
||||
if(this.commentCycleDate && this.commentCycleDate.length === 2){
|
||||
if(this.commentCycleDate && this.commentCycleDate.length === 2) {
|
||||
formData.commentCycleStart = this.commentCycleDate[0]
|
||||
formData.commentCycleEnd = this.commentCycleDate[1]
|
||||
}
|
||||
@@ -301,7 +318,7 @@ export default {
|
||||
return 'drag-row' + ' ' + 'id=' + row.row.id
|
||||
},
|
||||
// 表格排序
|
||||
sortChange(sortObj) {
|
||||
sortChange (sortObj) {
|
||||
this.nowOrderBy = sortObj.column.property
|
||||
// this.nowOrder = sortObj.order
|
||||
switch (sortObj.order) {
|
||||
@@ -352,7 +369,7 @@ export default {
|
||||
// break
|
||||
// }
|
||||
// }
|
||||
//搜索后排序,应该以被搜索后的数据排序
|
||||
// 搜索后排序,应该以被搜索后的数据排序
|
||||
this.getBussionStandTable(this.lawsStandInfoSearch)
|
||||
},
|
||||
// 选择项勾选改变
|
||||
@@ -364,7 +381,7 @@ export default {
|
||||
},
|
||||
// 点击查看
|
||||
handlePreview (item) {
|
||||
let routeUrl = this.$router.resolve({
|
||||
const routeUrl = this.$router.resolve({
|
||||
name: 'OtherLawsStandDetails',
|
||||
params: {
|
||||
id: item.id,
|
||||
@@ -375,13 +392,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++
|
||||
}
|
||||
})
|
||||
@@ -398,20 +415,20 @@ export default {
|
||||
this.lawsStandInfoSearch.pageSize = pageSize
|
||||
this.getBussionStandTable()
|
||||
},
|
||||
arr(data){
|
||||
if(data){
|
||||
if(data.indexOf(",") !== -1){
|
||||
let arr = data.split(",");
|
||||
let list = []
|
||||
arr.forEach(item =>{
|
||||
arr (data) {
|
||||
if(data) {
|
||||
if(data.indexOf(',') !== -1) {
|
||||
const arr = data.split(',');
|
||||
const list = []
|
||||
arr.forEach(item => {
|
||||
list.push(item.slice(0, 10));
|
||||
})
|
||||
return list.join(",");
|
||||
return list.join(',');
|
||||
}else {
|
||||
return data.slice(0, 10)
|
||||
}
|
||||
}
|
||||
return ""
|
||||
return ''
|
||||
},
|
||||
// 更多
|
||||
handleCommand (command) {
|
||||
@@ -480,7 +497,7 @@ export default {
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: true
|
||||
}).then(() => {
|
||||
this.$http.post('lawss/sarLawsInfo/deleteSarLawsStandInfo', {ids: itemid}, {
|
||||
this.$http.post('lawss/sarLawsInfo/deleteSarLawsStandInfo', { ids: itemid }, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.getBussionStandTable()
|
||||
@@ -507,7 +524,7 @@ export default {
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: true
|
||||
}).then(() => {
|
||||
this.$http.post('lawss/sarLawsInfo/deleteSarLawsStandInfo', {ids: this.selectedList.join(',')}, {
|
||||
this.$http.post('lawss/sarLawsInfo/deleteSarLawsStandInfo', { ids: this.selectedList.join(',') }, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.getBussionStandTable()
|
||||
@@ -520,7 +537,7 @@ export default {
|
||||
}
|
||||
},
|
||||
getAddFormFieldList (isEdit) {
|
||||
this.$http.get('lawss/sarStandAttrDetails/list', {}, {_this: this},
|
||||
this.$http.get('lawss/sarStandAttrDetails/list', {}, { _this: this },
|
||||
res => {
|
||||
if (res.ok) {
|
||||
const { data = {} } = res
|
||||
@@ -598,7 +615,7 @@ export default {
|
||||
}
|
||||
}, e => {})
|
||||
},
|
||||
convert(value, dict) {
|
||||
convert (value, dict) {
|
||||
if (this.dict[dict]) {
|
||||
return value.split(',').map(v => this.dict[dict].find(item => item.value === v)?.label || v).join(',')
|
||||
// return this.dict[dict].find(item => item.value === value)?.label || value
|
||||
@@ -607,9 +624,9 @@ export default {
|
||||
}
|
||||
},
|
||||
formatDate (dateStr) {
|
||||
if (dateStr && dateStr!== '') {
|
||||
let dateArr = dateStr.split(',')
|
||||
return dateArr.map(date => date.slice(0,10)).join(',')
|
||||
if (dateStr && dateStr !== '') {
|
||||
const dateArr = dateStr.split(',')
|
||||
return dateArr.map(date => date.slice(0, 10)).join(',')
|
||||
}
|
||||
return dateStr
|
||||
},
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<table-tools-bar
|
||||
@search="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||
@reset="clearAllSearch('lawsStandInfoSearch')"
|
||||
@search="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||
@reset="clearAllSearch('lawsStandInfoSearch')"
|
||||
>
|
||||
<div slot="left">
|
||||
<div class="search-area">
|
||||
@@ -11,53 +11,87 @@
|
||||
<!-- <el-input v-model="lawsStandInfoSearch.lawsNumber" clearable placeholder="根据编号查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"/>-->
|
||||
<!--</el-formItem>-->
|
||||
<el-formItem label="政策名称" prop="numberName" class="search-item">
|
||||
<el-input v-model="lawsStandInfoSearch.lawsName" clearable placeholder="根据政策名称查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"/>
|
||||
<el-input
|
||||
v-model="lawsStandInfoSearch.lawsName"
|
||||
clearable
|
||||
placeholder="根据政策名称查找"
|
||||
:maxlength="100"
|
||||
@keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||
/>
|
||||
</el-formItem>
|
||||
<el-formItem label="政策文号" prop="lawsNo" class="search-item">
|
||||
<el-input v-model="lawsStandInfoSearch.lawsNo" clearable placeholder="根据政策文号查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"/>
|
||||
<el-input
|
||||
v-model="lawsStandInfoSearch.lawsNo"
|
||||
clearable
|
||||
placeholder="根据政策文号查找"
|
||||
:maxlength="100"
|
||||
@keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||
/>
|
||||
</el-formItem>
|
||||
<el-formItem label="发文单位" prop="issueCompany" class="search-item">
|
||||
<el-input v-model="lawsStandInfoSearch.issueCompany" clearable placeholder="根据发文单位查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"/>
|
||||
<el-input
|
||||
v-model="lawsStandInfoSearch.issueCompany"
|
||||
clearable
|
||||
placeholder="根据发文单位查找"
|
||||
:maxlength="100"
|
||||
@keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||
/>
|
||||
</el-formItem>
|
||||
<el-formItem label="适用车型" prop="lawsSycx" class="search-item">
|
||||
<el-select :value="lawsSycx" multiple filterable clearable collapse-tags @change="lawsSycxChange">
|
||||
<el-select
|
||||
:value="lawsSycx"
|
||||
multiple
|
||||
filterable
|
||||
clearable
|
||||
collapse-tags
|
||||
@change="lawsSycxChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in dict.lawsSycxOptions"
|
||||
placeholder="请选择适用车型"
|
||||
:key="item.value"
|
||||
:value="item.value"
|
||||
:label="item.label"
|
||||
></el-option>
|
||||
v-for="item in dict.lawsSycxOptions"
|
||||
:key="item.value"
|
||||
placeholder="请选择适用车型"
|
||||
:value="item.value"
|
||||
:label="item.label"
|
||||
/>
|
||||
</el-select>
|
||||
</el-formItem>
|
||||
<el-formItem label="标准状态" prop="lawsTextState" class="search-item">
|
||||
<el-formItem label="政策状态" prop="lawsTextState" class="search-item">
|
||||
<el-select v-model="lawsStandInfoSearch.lawsTextState" filterable clearable>
|
||||
<el-option
|
||||
v-for="item in dict.lawsTextStateOptions"
|
||||
placeholder="请选择标准状态"
|
||||
:key="item.value"
|
||||
:value="item.value"
|
||||
:label="item.label"
|
||||
></el-option>
|
||||
v-for="item in dict.lawsTextStateOptions"
|
||||
:key="item.value"
|
||||
placeholder="请选择政策状态"
|
||||
:value="item.value"
|
||||
:label="item.label"
|
||||
/>
|
||||
</el-select>
|
||||
</el-formItem>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
v-btn-permission="'776298201c756873ddc8000eb716e347'"
|
||||
@click="getBussionStandTableBtn(lawsStandInfoSearch)">
|
||||
v-btn-permission="'776298201c756873ddc8000eb716e347'"
|
||||
type="primary"
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
@click="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||
>
|
||||
查询
|
||||
</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
class="common-button-default"
|
||||
v-btn-permission="'f0e6ba2b9736b77f9a271addf692b9c0'"
|
||||
@click="clearAllSearch('lawsStandInfoSearch')">清空
|
||||
v-btn-permission="'f0e6ba2b9736b77f9a271addf692b9c0'"
|
||||
size="mini"
|
||||
class="common-button-default"
|
||||
@click="clearAllSearch('lawsStandInfoSearch')"
|
||||
>
|
||||
清空
|
||||
</el-button>
|
||||
<el-button size="mini" type="primary" class="common-button-primary"
|
||||
v-btn-permission="'2e08f0dcb187e214127f971419f91174'" @click="selectMoreBtn">高级检索
|
||||
<el-button
|
||||
v-btn-permission="'2e08f0dcb187e214127f971419f91174'"
|
||||
size="mini"
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
@click="selectMoreBtn"
|
||||
>
|
||||
高级检索
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
@@ -72,11 +106,7 @@
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "policySearch",
|
||||
data() {
|
||||
return {
|
||||
}
|
||||
},
|
||||
name: 'PolicySearch',
|
||||
props: {
|
||||
lawsStandInfoSearch: {
|
||||
type: Object,
|
||||
@@ -87,12 +117,16 @@ export default {
|
||||
required: true
|
||||
}
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
lawsSycx () {
|
||||
return this.lawsStandInfoSearch.lawsSycx ? this.lawsStandInfoSearch.lawsSycx.split(',') : []
|
||||
}
|
||||
},
|
||||
methods:{
|
||||
methods: {
|
||||
// 搜索
|
||||
getBussionStandTableBtn (item, advancedSearch, type) {
|
||||
this.$emit('getBussionStandTableBtn')
|
||||
|
||||
@@ -0,0 +1,189 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
title="导入"
|
||||
:visible.sync="visible"
|
||||
width="500px"
|
||||
class="dialog"
|
||||
append-to-body
|
||||
>
|
||||
<el-form
|
||||
ref="formRef"
|
||||
class="form"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
label-width="120px"
|
||||
label-position="left"
|
||||
>
|
||||
<el-form-item label="核查清单名称" prop="checkListName">
|
||||
<el-input
|
||||
v-model="form.checkListName"
|
||||
placeholder="请输入核查清单名称"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="导入模板" prop="templateName">
|
||||
<div
|
||||
v-for="(id, index) in form.templateId.split(',')"
|
||||
:key="id"
|
||||
class="fileClass"
|
||||
@click="onPreview(id)"
|
||||
>
|
||||
{{ form.templateName.split(',')[index] }}
|
||||
</div>
|
||||
<el-button size="small" type="primary" @click="addImportModal">上传</el-button>
|
||||
<el-button size="small" type="primary" @click="downTemplate">空白模板下载</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer">
|
||||
<el-button size="small" type="primary" :loading="loading" @click="submit">确定</el-button>
|
||||
<el-button size="small" type="primary" :loading="loading" @click="visible = false">关闭</el-button>
|
||||
</div>
|
||||
<Import
|
||||
ref="importRef"
|
||||
accept=".xls, .XLS, .xlsx, .XLSX"
|
||||
:visible.sync="importModalShowFlag"
|
||||
:action="url.uploadNew"
|
||||
:limit="1"
|
||||
:ids.sync="form.templateId"
|
||||
:names.sync="form.templateName"
|
||||
@onSuccess="onSuccess"
|
||||
/>
|
||||
<!-- 导入失败-->
|
||||
<el-dialog
|
||||
:visible.sync="importFailed.visible"
|
||||
:close-on-click-modal="false"
|
||||
width="400px"
|
||||
append-to-body
|
||||
>
|
||||
<p slot="title" style="color:#f60">
|
||||
<span>导入失败</span>
|
||||
</p>
|
||||
<div style="max-height: 300px;overflow: auto;padding: 10px 0;">
|
||||
<p v-html="importFailed.importFailedText" />
|
||||
</div>
|
||||
<div slot="footer" class="demo-drawer-footer">
|
||||
<el-button
|
||||
type="primary"
|
||||
round
|
||||
class="common-button-default"
|
||||
icon="el-icon-check"
|
||||
@click="importFailed.visible = false"
|
||||
>
|
||||
确认
|
||||
</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Import from '@/components/hzwlComponents/Import'
|
||||
export default {
|
||||
name: 'ImportModel',
|
||||
components: {
|
||||
Import
|
||||
},
|
||||
data () {
|
||||
const form = {
|
||||
checkListName: '',
|
||||
templateId: '',
|
||||
templateName: '',
|
||||
}
|
||||
const rules = {
|
||||
checkListName: [
|
||||
{ required: true, message: '核查清单名称不能为空', trigger: 'change' }
|
||||
],
|
||||
templateName: [
|
||||
{ required: true, message: '导入模板不能为空', trigger: 'change' }
|
||||
],
|
||||
}
|
||||
return {
|
||||
visible: false,
|
||||
loading: false,
|
||||
form,
|
||||
rules,
|
||||
url: {
|
||||
uploadNew: 'api/att/attFile/uploadNew',
|
||||
importExcelUrl: 'standardTrackingCheckList/importTrackingChecklist',
|
||||
exportTemplateFile: 'api/standardTrackingCheckList/exportTemplateFile',
|
||||
},
|
||||
importModalShowFlag: false,
|
||||
importFailed: {
|
||||
visible: false,
|
||||
importFailedText: '',
|
||||
},
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
openModel () {
|
||||
Object.keys(this.form).forEach(key => this.form[key] = '')
|
||||
this.$nextTick(() => {
|
||||
this.$nextTick(() => {
|
||||
this.$refs.formRef.clearValidate()
|
||||
this.$refs.importRef.initFileList()
|
||||
})
|
||||
})
|
||||
this.visible = true
|
||||
},
|
||||
submit () {
|
||||
this.$refs.formRef.validate(valid => {
|
||||
if (valid) {
|
||||
const config = { _this: this, loading: 'loading' }
|
||||
this.$http._post(this.url.importExcelUrl, this.form, config).then(res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('导入成功')
|
||||
this.visible = false
|
||||
this.$emit('ok')
|
||||
} else {
|
||||
this.importFailed.importFailedText = res.message
|
||||
this.importFailed.visible = true
|
||||
// this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
addImportModal () {
|
||||
this.importModalShowFlag = true
|
||||
},
|
||||
onPreview (id) {
|
||||
this.$preview(id)
|
||||
},
|
||||
onSuccess () {
|
||||
this.$refs.formRef.validateField('templateName')
|
||||
},
|
||||
downTemplate () {
|
||||
window.open(`${this.url.exportTemplateFile}?fileName=标准跟踪清单导入模板`)
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.dialog {
|
||||
/deep/ .el-dialog {
|
||||
border-radius: 10px;
|
||||
}
|
||||
/deep/ .el-dialog__header {
|
||||
border-bottom: 1px solid #E9E9E9;
|
||||
}
|
||||
/deep/ .el-form-item{
|
||||
margin-bottom: 10px;
|
||||
color: #666;
|
||||
border-bottom: 1px dashed #E9E9E9;
|
||||
.el-form-item__label {
|
||||
line-height: 50px;
|
||||
}
|
||||
.el-form-item__content{
|
||||
line-height: 50px;
|
||||
}
|
||||
.el-input__inner {
|
||||
border: none !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
.fileClass {
|
||||
color: rgb(64, 158, 255);
|
||||
cursor: pointer;
|
||||
line-height: 30px;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,256 @@
|
||||
<template>
|
||||
<div style="height: calc(100% - 155px)">
|
||||
<loading :loading="loading">数据获取中...</loading>
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
style="margin-bottom: 10px;"
|
||||
:disabled="disabled"
|
||||
@click="handleSearchStandard"
|
||||
>
|
||||
手动查找
|
||||
</el-button>
|
||||
<el-button
|
||||
type="danger"
|
||||
size="mini"
|
||||
style="margin-bottom: 10px;"
|
||||
:disabled="disabled"
|
||||
@click="handleDeleteStandard"
|
||||
>
|
||||
批量删除
|
||||
</el-button>
|
||||
<el-table
|
||||
ref="selection"
|
||||
class="table"
|
||||
:data="value"
|
||||
tooltip-effect="dark"
|
||||
style="width:100%;height: calc(100% - 40px)"
|
||||
height="string"
|
||||
border
|
||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', fontWeight: 'bold', height: '48px', padding: 0}"
|
||||
:cell-style="{padding: 0}"
|
||||
@selection-change="selectionChange"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
type="index"
|
||||
width="55"
|
||||
label="序号"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="{scope, column, $index}">
|
||||
{{ ($index + 1) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="标准编号/政策文号"
|
||||
show-overflow-tooltip
|
||||
prop="lawCode"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="lawName"
|
||||
label="标准名称/政策名称"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="productType"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
label="产品类型"
|
||||
>
|
||||
<template slot-scope="{row, column, $index}">
|
||||
<span v-if="disabled">{{ trackingChecklistProductTypeMap[row.productType] || '-' }}</span>
|
||||
<el-select
|
||||
v-else
|
||||
v-model="row.productType"
|
||||
placeholder="请选择产品类型"
|
||||
size="mini"
|
||||
clearable
|
||||
:disabled="disabled"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in dict.trackingChecklistProductType"
|
||||
:key="item.value"
|
||||
:value="item.value"
|
||||
:label="item.label"
|
||||
/>
|
||||
</el-select>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="implTime"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
label="实施日期"
|
||||
>
|
||||
<template slot-scope="{row, column, $index}">
|
||||
<span v-if="disabled">{{ row.implTime || '-' }}</span>
|
||||
<el-date-picker
|
||||
v-else
|
||||
v-model="row.implTime"
|
||||
size="mini"
|
||||
type="date"
|
||||
value-format="yyyy-MM-dd"
|
||||
placeholder="选择日期"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="implRequire"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
label="实施要求"
|
||||
>
|
||||
<template slot-scope="{row, column, $index}">
|
||||
<span v-if="disabled">{{ trackingChecklistPutDemandMap[row.implRequire] || '-' }}</span>
|
||||
<el-select
|
||||
v-else
|
||||
v-model="row.implRequire"
|
||||
placeholder="请选择实施要求"
|
||||
clearable
|
||||
size="mini"
|
||||
:disabled="disabled"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in dict.trackingChecklistPutDemand"
|
||||
:key="item.value"
|
||||
:value="item.value"
|
||||
:label="item.label"
|
||||
/>
|
||||
</el-select>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<StandardListDrawer ref="StandardListDrawerRef" @dragIn="dragIn" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import StandardListDrawer from '@/components/hzwlComponents/StandardListDrawer'
|
||||
export default {
|
||||
name: 'Inventory',
|
||||
components: {
|
||||
StandardListDrawer
|
||||
},
|
||||
props: {
|
||||
value: {
|
||||
type: Array,
|
||||
default: () => []
|
||||
},
|
||||
disabled: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
selectedList: [],
|
||||
dict: {},
|
||||
loading: false
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
trackingChecklistProductTypeMap () {
|
||||
return this.dict.trackingChecklistProductType
|
||||
? this.dict.trackingChecklistProductType.reduce((obj, item) => {
|
||||
obj[item.value] = item.label
|
||||
return obj
|
||||
}, {})
|
||||
: []
|
||||
},
|
||||
trackingChecklistPutDemandMap () {
|
||||
return this.dict.trackingChecklistPutDemand
|
||||
? this.dict.trackingChecklistPutDemand.reduce((obj, item) => {
|
||||
obj[item.value] = item.label
|
||||
return obj
|
||||
}, {})
|
||||
: []
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getDicTypeListCode()
|
||||
},
|
||||
methods: {
|
||||
handleSearchStandard () {
|
||||
this.$refs.StandardListDrawerRef.open()
|
||||
},
|
||||
selectionChange (selection) {
|
||||
this.selectedList = selection
|
||||
},
|
||||
dragIn ({ list, type }) {
|
||||
if (list.some(item => this.value.some(i => i.lawId === item.id))) {
|
||||
this.$message.warning('请勿重复添加数据')
|
||||
return
|
||||
}
|
||||
const newList = list.map(item => {
|
||||
let lawCode = ''
|
||||
let lawName = ''
|
||||
switch (type) {
|
||||
case 'INLAND':
|
||||
case 'FOREIGN':
|
||||
case 'BUSINESS_STAND':
|
||||
lawCode = item.standCode
|
||||
lawName = item.standName
|
||||
break
|
||||
case 'FOREIGN_LAWS':
|
||||
lawCode = item.lawsNo
|
||||
lawName = item.lawsName
|
||||
break
|
||||
}
|
||||
return {
|
||||
lawId: item.id,
|
||||
dataSource: type,
|
||||
lawCode,
|
||||
lawName,
|
||||
productType: '',
|
||||
implTime: '',
|
||||
implRequire: ''
|
||||
}
|
||||
})
|
||||
this.$emit('input', [ ...this.value, ...newList ])
|
||||
},
|
||||
handleDeleteStandard () {
|
||||
if (this.selectedList.length === 0) {
|
||||
this.$message.warning('请选择要删除的数据')
|
||||
return
|
||||
}
|
||||
this.$confirm('确认删除这些数据?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: true
|
||||
}).then(() => {
|
||||
const list = this.value.filter(item => !this.selectedList.some(i => i.lawId === item.lawId))
|
||||
this.$emit('input', list)
|
||||
})
|
||||
},
|
||||
getDicTypeListCode () {
|
||||
this.loading = true
|
||||
this.$http._getData('sys/dictype/getDicTypeListCode').then(res => {
|
||||
this.dict = { ...res.data }
|
||||
this.loading = false
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.table{
|
||||
/deep/ .el-select.el-select--mini{
|
||||
width: 100% !important;
|
||||
}
|
||||
/deep/ .el-date-editor.el-input, .el-date-editor.el-input__inner {
|
||||
width: 100% !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,134 @@
|
||||
<template>
|
||||
<el-timeline>
|
||||
<el-form
|
||||
ref="userForm"
|
||||
:model="roleForm"
|
||||
:rules="roleRules"
|
||||
class="label-input-form"
|
||||
>
|
||||
<TimeLineFormItem
|
||||
:id.sync="roleForm.prcCreateUser"
|
||||
prop="prcCreateUserName"
|
||||
timestamp="发起流程"
|
||||
title="起草"
|
||||
placeholder="请选择起草人"
|
||||
:name.sync="roleForm.prcCreateUserName"
|
||||
disabled
|
||||
/>
|
||||
<TimeLineFormItem
|
||||
:id.sync="roleForm.shr1UserIds"
|
||||
prop="shr1UserNames"
|
||||
timestamp="审核"
|
||||
title="审核"
|
||||
placeholder="请选择审核人"
|
||||
multiple
|
||||
:name.sync="roleForm.shr1UserNames"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<TimeLineFormItem
|
||||
:id.sync="roleForm.sdr1UserIds"
|
||||
prop="sdr1UserNames"
|
||||
timestamp="审定"
|
||||
title="审定"
|
||||
placeholder="请选择审定人"
|
||||
multiple
|
||||
:name.sync="roleForm.sdr1UserNames"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<TimeLineFormItem
|
||||
:id.sync="roleForm.pzr1UserId"
|
||||
prop="pzr1UserName"
|
||||
timestamp="批准"
|
||||
title="批准"
|
||||
placeholder="请选择批准人"
|
||||
:name.sync="roleForm.pzr1UserName"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<TimeLineFormItem
|
||||
:id.sync="roleForm.djrUserIds"
|
||||
prop="djrUserNames"
|
||||
timestamp="责任对接人分配任务"
|
||||
title="责任对接人分配任务"
|
||||
placeholder="责任对接人分配任务"
|
||||
multiple
|
||||
:name.sync="roleForm.djrUserNames"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<TimeLineFormItem
|
||||
:id.sync="roleForm.glyUserId"
|
||||
prop="glyUserName"
|
||||
timestamp="管理员"
|
||||
title="管理员"
|
||||
:name.sync="roleForm.glyUserName"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<TimeLineFormItem
|
||||
:id.sync="roleForm.shr2UserIds"
|
||||
prop="shr2UserNames"
|
||||
timestamp="审核"
|
||||
title="审核"
|
||||
placeholder="请选择审核人"
|
||||
multiple
|
||||
:name.sync="roleForm.shr2UserNames"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<TimeLineFormItem
|
||||
:id.sync="roleForm.sdr2UserIds"
|
||||
prop="sdr2UserNames"
|
||||
timestamp="审定"
|
||||
title="审定"
|
||||
placeholder="请选择审定人"
|
||||
multiple
|
||||
:name.sync="roleForm.sdr2UserNames"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<TimeLineFormItem
|
||||
:id.sync="roleForm.pzr2UserId"
|
||||
prop="pzr2UserName"
|
||||
timestamp="批准"
|
||||
title="批准"
|
||||
placeholder="请选择批准人"
|
||||
:name.sync="roleForm.pzr2UserName"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<TimeLineFormItem
|
||||
:id.sync="roleForm.csrUserIds"
|
||||
prop="csrUserNames"
|
||||
timestamp="抄送"
|
||||
title="抄送"
|
||||
placeholder="请选择抄送人"
|
||||
:multiple="true"
|
||||
:name.sync="roleForm.csrUserNames"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-form>
|
||||
</el-timeline>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TimeLineFormItem from '@/components/hzwlComponents/TimeLineFormItem'
|
||||
export default {
|
||||
name: 'PersonInfo',
|
||||
components: {
|
||||
TimeLineFormItem
|
||||
},
|
||||
props: {
|
||||
roleForm: {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
roleRules: {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
disabled: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
@@ -0,0 +1,278 @@
|
||||
<template>
|
||||
<el-drawer
|
||||
:title="title"
|
||||
:visible="showDrawer"
|
||||
:wrapperClosable="false"
|
||||
size="1000px"
|
||||
@close="onClose"
|
||||
>
|
||||
<div class="drawer-content">
|
||||
<el-form
|
||||
v-if="reloadForm"
|
||||
ref="form"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
label-width="150px"
|
||||
label-position="left"
|
||||
style="height: 100%"
|
||||
>
|
||||
<InputFormItem
|
||||
v-model="form.checkListName"
|
||||
class="form-item-first"
|
||||
prop="checkListName"
|
||||
label="核查清单名称"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<UploadFormItem
|
||||
v-if="reloadForm"
|
||||
label="模板"
|
||||
:ids.sync="form.checklistTemplate"
|
||||
:names.sync="form.checklistTemplateName"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<el-tabs v-model="activeName">
|
||||
<el-tab-pane label="核查清单" name="1" />
|
||||
<el-tab-pane label="人员信息" name="2" />
|
||||
</el-tabs>
|
||||
<Inventory
|
||||
v-show="activeName === '1'"
|
||||
v-model="form.issueTrackList"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<PersonInfo
|
||||
v-show="activeName === '2'"
|
||||
ref="roleForm"
|
||||
:roleForm="roleForm"
|
||||
:roleRules="roleRules"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
<loading :loading="loading">数据获取中...</loading>
|
||||
</el-form>
|
||||
</div>
|
||||
<div class="drawer-footer">
|
||||
<el-button
|
||||
icon="el-icon-check"
|
||||
type="primary"
|
||||
size="mini"
|
||||
:loading="isSubmit"
|
||||
:disabled="disabled"
|
||||
@click="onSubmit"
|
||||
>
|
||||
提交
|
||||
</el-button>
|
||||
<el-button icon="el-icon-close" size="mini" :loading="isSubmit" @click="onClose">取消</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import UploadFormItem from '@/components/hzwlComponents/UploadFormItem'
|
||||
import InputFormItem from '@/components/hzwlComponents/InputFormItem'
|
||||
import PersonInfo from './PersonInfo'
|
||||
import Inventory from './Inventory'
|
||||
export default {
|
||||
name: 'AddModel',
|
||||
components: {
|
||||
UploadFormItem,
|
||||
InputFormItem,
|
||||
PersonInfo,
|
||||
Inventory,
|
||||
},
|
||||
data () {
|
||||
const form = {
|
||||
checkListName: '',
|
||||
checklistTemplate: '',
|
||||
checklistTemplateName: '',
|
||||
issueTrackList: [],
|
||||
}
|
||||
const roleForm = {
|
||||
prcCreateUser: this.$store.getters.userInfo.account,
|
||||
prcCreateUserName: this.$store.getters.userInfo.userName,
|
||||
shr1UserIds: '',
|
||||
shr1UserNames: '',
|
||||
sdr1UserIds: '',
|
||||
sdr1UserNames: '',
|
||||
pzr1UserId: '',
|
||||
pzr1UserName: '',
|
||||
djrUserIds: '',
|
||||
djrUserNames: '',
|
||||
glyUserId: '',
|
||||
glyUserName: '',
|
||||
shr2UserIds: '',
|
||||
shr2UserNames: '',
|
||||
sdr2UserIds: '',
|
||||
sdr2UserNames: '',
|
||||
pzr2UserId: '',
|
||||
pzr2UserName: '',
|
||||
csrUserIds: '',
|
||||
csrUserNames: '',
|
||||
}
|
||||
const rules = {
|
||||
checkListName: [
|
||||
{ required: true, message: '核查清单名称不能为空', trigger: 'change' }
|
||||
],
|
||||
}
|
||||
const roleRules = {
|
||||
shr1UserNames: [
|
||||
{ required: true, message: '请选择审核人', trigger: 'change' },
|
||||
],
|
||||
sdr1UserNames: [
|
||||
{ required: true, message: '请选择审定人', trigger: 'change' },
|
||||
],
|
||||
pzr1UserName: [
|
||||
{ required: true, message: '请选择批准人', trigger: 'change' },
|
||||
],
|
||||
djrUserNames: [
|
||||
{ required: true, message: '请选择责任对接人', trigger: 'change' },
|
||||
],
|
||||
glyUserName: [
|
||||
{ required: true, message: '请选择管理员', trigger: 'change' },
|
||||
],
|
||||
shr2UserNames: [
|
||||
{ required: true, message: '请选择审核人', trigger: 'change' },
|
||||
],
|
||||
sdr2UserNames: [
|
||||
{ required: true, message: '请选择审定人', trigger: 'change' },
|
||||
],
|
||||
pzr2UserName: [
|
||||
{ required: true, message: '请选择批准人', trigger: 'change' },
|
||||
],
|
||||
csrUserNames: [
|
||||
{ required: true, message: '请选择抄送人', trigger: 'change' },
|
||||
],
|
||||
}
|
||||
return {
|
||||
title: '新增',
|
||||
showDrawer: false,
|
||||
isSubmit: false,
|
||||
form,
|
||||
initForm: JSON.parse(JSON.stringify(form)),
|
||||
roleForm,
|
||||
initRoleForm: JSON.parse(JSON.stringify(roleForm)),
|
||||
rules,
|
||||
roleRules,
|
||||
activeName: '1',
|
||||
url: {
|
||||
save: 'standardTrackingCheckList/save',
|
||||
update: 'standardTrackingCheckList/update',
|
||||
getById: 'standardTrackingCheckList/getById',
|
||||
},
|
||||
loading: false,
|
||||
reloadForm: true,
|
||||
disabled: false,
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onClose () {
|
||||
this.showDrawer = false
|
||||
},
|
||||
add () {
|
||||
this.title = '新增'
|
||||
this.disabled = false
|
||||
// this.form = JSON.parse(JSON.stringify(this.initForm))
|
||||
Object.keys(this.initForm).forEach(key => this.form[key] = this.initForm[key])
|
||||
this.roleForm = JSON.parse(JSON.stringify(this.initRoleForm))
|
||||
this.reloadForm = false
|
||||
this.$nextTick(() => {
|
||||
this.reloadForm = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.form.clearValidate()
|
||||
this.$refs['roleForm'].$refs['userForm'].clearValidate()
|
||||
})
|
||||
})
|
||||
this.showDrawer = true
|
||||
},
|
||||
edit (id, type) {
|
||||
if (type && type === 'detail') {
|
||||
this.title = '详情'
|
||||
this.disabled = true
|
||||
} else {
|
||||
this.title = '编辑'
|
||||
this.disabled = false
|
||||
}
|
||||
this.showDrawer = true
|
||||
const config = { _this: this, loading: 'loading' }
|
||||
this.$http._getData(this.url.getById, { checklistId: id }, config).then(res => {
|
||||
if (res.ok) {
|
||||
this.form = res.data
|
||||
this.roleForm = res.data.roleForm
|
||||
this.reloadForm = false
|
||||
this.$nextTick(() => {
|
||||
this.reloadForm = true
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
onSubmit () {
|
||||
if (this.form.issueTrackList.length === 0) {
|
||||
return this.$message.warning('请添加核查清单')
|
||||
}
|
||||
this.$refs.form.validate(valid => {
|
||||
if (!valid)
|
||||
return this.$message.warning('请完善基础信息');
|
||||
this.$refs['roleForm'].$refs['userForm'].validate(valid => {
|
||||
if (!valid)
|
||||
return this.$message.warning('请完善人员信息');
|
||||
|
||||
const url = this.title === '新增' ? this.url.save : this.url.update
|
||||
const method = this.title === '新增' ? '_postData' : '_putData'
|
||||
const form = Object.assign(this.form, { roleForm: this.roleForm })
|
||||
const config = {
|
||||
_this: this,
|
||||
loading: 'isSubmit',
|
||||
}
|
||||
this.$http[method](url, form, config).then(res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('操作成功')
|
||||
this.$emit('ok')
|
||||
this.showDrawer = false
|
||||
} else {
|
||||
this.$message.error(res.message)
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.drawer-content {
|
||||
padding: 0 19px;
|
||||
overflow-y: auto;
|
||||
flex: auto;
|
||||
/deep/ .el-form-item{
|
||||
margin-bottom: 0;
|
||||
color: #666;
|
||||
.el-form-item__label {
|
||||
line-height: 50px;
|
||||
}
|
||||
.el-form-item__content{
|
||||
line-height: 50px;
|
||||
}
|
||||
.el-input.is-disabled .el-input__inner {
|
||||
background-color: transparent;
|
||||
border-color: #E4E7ED;
|
||||
color: #666;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
}
|
||||
.form-item-first {
|
||||
/deep/ .el-input__inner{
|
||||
padding-left: 0;
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
.drawer-footer {
|
||||
width: 100%;
|
||||
padding: 0 20px;
|
||||
height: 70px;
|
||||
line-height: 69px;
|
||||
border-top: 1px solid #e8e8e8;
|
||||
text-align: right;
|
||||
background: #fff;
|
||||
z-index: 999;
|
||||
}
|
||||
</style>
|
||||
@@ -1,27 +1,495 @@
|
||||
<template>
|
||||
<div class="standardTrackingList">
|
||||
<listTracking></listTracking>
|
||||
<div class="root">
|
||||
<div class="search-area">
|
||||
<el-form :modal="searchForm" :inline="true" class="label-input-form">
|
||||
<el-form-item label="核查清单名称" class="search-item">
|
||||
<el-input
|
||||
v-model="searchForm.checkListName"
|
||||
placeholder="请输入"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准编号/政策文号" class="search-item">
|
||||
<el-input
|
||||
v-model="searchForm.lawCode"
|
||||
placeholder="请输入"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="标准名称/政策名称" class="search-item">
|
||||
<el-input
|
||||
v-model="searchForm.lawName"
|
||||
placeholder="请输入"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
v-btn-permission="'3686c281f765e4c0200471a98448c85c'"
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="small"
|
||||
@click="onSearch"
|
||||
>
|
||||
查询
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
v-btn-permission="'ec9ca45c7aed52012e5be50233ab9201'"
|
||||
class="common-button-default"
|
||||
size="small"
|
||||
@click="onClear"
|
||||
>
|
||||
清空
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<div class="action-bar">
|
||||
<el-button
|
||||
v-btn-permission="'3bdd090479f35afce3d83fc1656fe288'"
|
||||
type="primary"
|
||||
size="mini"
|
||||
@click="add"
|
||||
>
|
||||
<i class="el-icon-plus" />新增
|
||||
</el-button>
|
||||
<el-button
|
||||
v-btn-permission="'bae1221a7247bb13b6e13d46272febbe'"
|
||||
size="mini"
|
||||
@click="edit"
|
||||
>
|
||||
编辑
|
||||
</el-button>
|
||||
<el-button
|
||||
v-btn-permission="'7e573b9dce2ef670aa0ab9bc44c30f0d'"
|
||||
size="mini"
|
||||
@click="addImportModal"
|
||||
>
|
||||
导入
|
||||
</el-button>
|
||||
<el-button
|
||||
v-btn-permission="'9795ee9432cba2fb1a3774512f0c9c55'"
|
||||
size="mini"
|
||||
@click="exportData"
|
||||
>
|
||||
导出
|
||||
</el-button>
|
||||
<el-button
|
||||
v-btn-permission="'544653c56dc5d966d366766ea96dcf85'"
|
||||
size="mini"
|
||||
@click="onDelete"
|
||||
>
|
||||
批量删除
|
||||
</el-button>
|
||||
<el-button
|
||||
v-btn-permission="'e3004dae97503611c75c3efc6e3b9ac7'"
|
||||
size="mini"
|
||||
@click="processDistribution"
|
||||
>
|
||||
流程下发
|
||||
</el-button>
|
||||
</div>
|
||||
<div class="container">
|
||||
<el-table
|
||||
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="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
|
||||
prop="checkListName"
|
||||
label="核查清单名称"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
<template slot-scope="{row, column, $index}">
|
||||
<a class="table-jump" style="color: #2d8cf0" @click="detail(row.id)">{{ row.checkListName }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createUserId"
|
||||
label="创建人"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
<template slot-scope="{row}">
|
||||
{{ row.createUserName }}({{ row.createUserId }})
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="modifyTime"
|
||||
label="更新时间"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="processIssuanceTime"
|
||||
label="流程下发时间"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="processCompleteTime"
|
||||
label="流程完成时间"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="processNum"
|
||||
label="流程编号"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
<template slot-scope="{row, column, $index}">
|
||||
<a class="table-jump" style="color: #2d8cf0" @click="toProcessDetail(row.processNum)">{{ row.processNum }}</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="processStatus"
|
||||
label="流程状态"
|
||||
align="center"
|
||||
sortable="custom"
|
||||
>
|
||||
<template slot-scope="{row, column, $index}">
|
||||
<span v-if="row.processStatus === 0">未下发</span>
|
||||
<span v-if="row.processStatus === 1">进行中</span>
|
||||
<span v-if="row.processStatus === 2">已完成</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination :page="searchForm.page" :total="searchForm.total" @pageChange="pageChange" @pageSizeChange="pageSizeChange" />
|
||||
<loading :loading="loading">数据获取中...</loading>
|
||||
</div>
|
||||
<addModel ref="addModel" @ok="onClear" />
|
||||
<!-- 导入 -->
|
||||
<ImportZip :visible.sync="importModalShowFlag" :action="url.importExcelUrl" @onSuccess="getData" />
|
||||
<ImportModel ref="ImportModelRef" @ok="onClear" />
|
||||
<!-- 导出 -->
|
||||
<ExportDialog ref="exportDialogRef" @exportName="handleExport" />
|
||||
<el-dialog title="流程下发" :visible.sync="visible" width="600px" class="processDistributionForm">
|
||||
<el-form
|
||||
ref="processDistributionRef"
|
||||
:model="processDistributionForm"
|
||||
:rules="processDistributionRules"
|
||||
label-width="200px"
|
||||
label-position="left"
|
||||
>
|
||||
<DatePickerFormItem
|
||||
v-model="processDistributionForm.processDeadline"
|
||||
label="流程截止时间"
|
||||
prop="processDeadline"
|
||||
/>
|
||||
<DatePickerFormItem
|
||||
v-model="processDistributionForm.feedbackDeadline"
|
||||
label="责任单位意见反馈截止时间"
|
||||
prop="feedbackDeadline"
|
||||
/>
|
||||
</el-form>
|
||||
<div slot="footer">
|
||||
<el-button size="small" :loading="processDistributionLoading" @click="visible = false">取消</el-button>
|
||||
<el-button size="small" type="primary" :loading="processDistributionLoading" @click="handleProcessDistribution">确定</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import listTracking from "@/pages/regulatoryRepository/accessStandardsAndRegulations/page/listTracking";
|
||||
import addModel from './addModel'
|
||||
import ImportModel from './ImportModel'
|
||||
import ImportZip from '@/components/hzwlComponents/importZip'
|
||||
import ExportDialog from '@/components/hzwlComponents/exportDialog'
|
||||
import DatePickerFormItem from '@/components/hzwlComponents/DatePickerFormItem'
|
||||
|
||||
export default {
|
||||
name: 'StandardTrackingList',
|
||||
components: {
|
||||
listTracking
|
||||
addModel,
|
||||
ImportModel,
|
||||
ImportZip,
|
||||
ExportDialog,
|
||||
DatePickerFormItem,
|
||||
},
|
||||
data() {
|
||||
data () {
|
||||
const searchForm = {
|
||||
checkListName: '',
|
||||
lawCode: '',
|
||||
lawName: '',
|
||||
page: 1,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
total: 0,
|
||||
}
|
||||
const processDistributionForm = {
|
||||
trackingChecklistId: '',
|
||||
processDeadline: '',
|
||||
feedbackDeadline: '',
|
||||
}
|
||||
const processDistributionRules = {
|
||||
processDeadline: [
|
||||
{ required: true, message: '流程截止时间不能为空', trigger: 'change' }
|
||||
],
|
||||
feedbackDeadline: [
|
||||
{ required: true, message: '责任单位意见反馈截止时间不能为空', trigger: 'change' }
|
||||
],
|
||||
}
|
||||
return {
|
||||
searchForm,
|
||||
initSearchForm: JSON.parse(JSON.stringify(searchForm)),
|
||||
loading: false,
|
||||
url: {
|
||||
page: 'standardTrackingCheckList/page',
|
||||
save: 'standardTrackingCheckList/save',
|
||||
delete: 'standardTrackingCheckList/remove',
|
||||
getById: 'standardTrackingCheckList/getById',
|
||||
update: 'standardTrackingCheckList/update',
|
||||
exportTemplateFile: 'api/standardTrackingCheckList/exportTemplateFile',
|
||||
importExcelUrl: 'api/standardTrackingCheckList/importTrackingChecklist',
|
||||
exportTrackingChecklist: 'api/standardTrackingCheckList/exportTrackingChecklist',
|
||||
processDistribution: 'standardTrackingCheckList/processDistribution'
|
||||
},
|
||||
data: [],
|
||||
selectedList: [],
|
||||
// 导入
|
||||
importModalShowFlag: false,
|
||||
visible: false,
|
||||
processDistributionForm,
|
||||
processDistributionRules,
|
||||
processDistributionLoading: false,
|
||||
selectedListDel: []
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
getData () {
|
||||
const config = {
|
||||
_this: this,
|
||||
loading: 'loading'
|
||||
}
|
||||
this.$http._getData(this.url.page, this.searchForm, config).then(res => {
|
||||
if(res.ok) {
|
||||
this.data = res.data.list
|
||||
this.searchForm.total = res.data.count
|
||||
}
|
||||
})
|
||||
},
|
||||
pageChange (page) {
|
||||
this.searchForm.page = page
|
||||
this.getData()
|
||||
},
|
||||
pageSizeChange (pageSize) {
|
||||
this.searchForm.pageSize = pageSize
|
||||
this.getData()
|
||||
},
|
||||
onSearch () {
|
||||
this.getData()
|
||||
},
|
||||
onClear () {
|
||||
this.searchForm = JSON.parse(JSON.stringify(this.initSearchForm))
|
||||
this.getData()
|
||||
},
|
||||
selectionChange (data) {
|
||||
this.selectedList = []
|
||||
this.selectedListDel = []
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
this.selectedList.push(data[i].id)
|
||||
this.selectedListDel.push( { id: data[i].id, processStatus: data[i].processStatus } )
|
||||
}
|
||||
},
|
||||
sortChange ({ column, prop, order }) {
|
||||
this.searchForm.sortField = prop
|
||||
this.searchForm.sortMode = 'asc'
|
||||
if (order === 'descending') {
|
||||
this.searchForm.sortMode = 'desc'
|
||||
}
|
||||
if (!order) {
|
||||
this.searchForm.sortField = ''
|
||||
this.searchForm.sortMode = ''
|
||||
}
|
||||
this.getData()
|
||||
},
|
||||
add () {
|
||||
this.$refs.addModel.add()
|
||||
},
|
||||
edit () {
|
||||
if(this.selectedList.length === 0) {
|
||||
return this.$message.warning('请选择要编辑的数据')
|
||||
}
|
||||
if (this.selectedList.length > 1) {
|
||||
return this.$message.warning('仅能选择一条数据进行编辑')
|
||||
}
|
||||
this.$refs.addModel.edit(this.selectedList[0])
|
||||
},
|
||||
detail (id) {
|
||||
this.$refs.addModel.edit(id, 'detail')
|
||||
},
|
||||
downTemplate () {
|
||||
window.open(`${this.url.exportTemplateFile}?fileName=标准跟踪清单导入模板`)
|
||||
},
|
||||
addImportModal () {
|
||||
// this.importModalShowFlag = true
|
||||
this.$refs.ImportModelRef.openModel()
|
||||
},
|
||||
// 导出
|
||||
exportData () {
|
||||
this.$refs.exportDialogRef.openModel()
|
||||
},
|
||||
handleExport (exportName) {
|
||||
const params = {
|
||||
...this.searchForm,
|
||||
exportName: exportName,
|
||||
exportIds: this.selectedList.join(',')
|
||||
}
|
||||
let query = '?'
|
||||
for(const i in params) {
|
||||
if (params[i] && params[i] !== '') {
|
||||
query = query + i + '=' + params[i] + '&'
|
||||
}
|
||||
}
|
||||
query = query.slice(0, -1)
|
||||
window.open(this.url.exportTrackingChecklist + query)
|
||||
this.$refs.exportDialogRef.cancel()
|
||||
this.$message.success('导出信息成功')
|
||||
},
|
||||
onDelete () {
|
||||
if (this.selectedList.length === 0) {
|
||||
this.$message.warning('请选择要删除的数据')
|
||||
return
|
||||
}
|
||||
let ids = []
|
||||
let underWayFlag = false
|
||||
this.selectedListDel.forEach(item => {
|
||||
if (item.processStatus === 1) {
|
||||
underWayFlag = true
|
||||
}
|
||||
ids.push(item.id)
|
||||
})
|
||||
if (underWayFlag) {
|
||||
this.$message.warning('进行中的数据不能删除,请重新选择')
|
||||
return
|
||||
}
|
||||
ids = ids.join(',')
|
||||
this.$confirm('确认删除这些数据?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: true
|
||||
}).then(() => {
|
||||
this.$http._deleteData(this.url.delete, { ids }).then(res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('删除成功')
|
||||
this.getData()
|
||||
}else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
processDistribution () {
|
||||
if (this.selectedList.length === 0) {
|
||||
return this.$message.warning('请选择要下发的数据')
|
||||
}
|
||||
this.visible = true
|
||||
Object.keys(this.processDistributionForm).forEach(key => {
|
||||
this.processDistributionForm[key] = ''
|
||||
})
|
||||
this.$nextTick(() => {
|
||||
// this.$refs.processDistributionRef.resetFields()
|
||||
this.$refs.processDistributionRef.clearValidate()
|
||||
})
|
||||
},
|
||||
handleProcessDistribution () {
|
||||
this.$refs.processDistributionRef.validate(valid => {
|
||||
if (valid) {
|
||||
this.processDistributionForm.trackingChecklistId = this.selectedList.join(',')
|
||||
const config = { _this: this, loading: 'processDistributionLoading' }
|
||||
this.$http._post(this.url.processDistribution, this.processDistributionForm, config).then(res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('操作成功')
|
||||
this.visible = false
|
||||
this.getData()
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
toProcessDetail (prcNum) {
|
||||
const routeUrl = this.$router.resolve({
|
||||
name: 'ProcessDetail',
|
||||
query: { prcNum }
|
||||
})
|
||||
window.open(routeUrl.href, '_blank')
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.standardTrackingList {
|
||||
height: 100%;
|
||||
}
|
||||
.root{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.search-area {
|
||||
.search-item /deep/ .el-button--small {
|
||||
padding: 8px 15px !important;
|
||||
height: 30px !important;
|
||||
}
|
||||
}
|
||||
.action-bar /deep/ .el-button{
|
||||
height: 32px !important;
|
||||
}
|
||||
.container {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.processDistributionForm {
|
||||
/deep/ .el-form-item{
|
||||
margin-bottom: 10px;
|
||||
color: #666;
|
||||
.el-form-item__label {
|
||||
line-height: 50px;
|
||||
}
|
||||
.el-form-item__content{
|
||||
line-height: 50px;
|
||||
}
|
||||
.el-input__inner{
|
||||
border: none;
|
||||
}
|
||||
.el-date-editor.el-input, .el-date-editor.el-input__inner {
|
||||
width: 100%;
|
||||
}
|
||||
.el-input__inner{
|
||||
color: #666 !important;
|
||||
}
|
||||
}
|
||||
.form-item-first {
|
||||
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -48,10 +48,10 @@ export default {
|
||||
label: "项目合规评估流程-项目",
|
||||
value: "6"
|
||||
},
|
||||
{
|
||||
/* {
|
||||
label: "政策征求意见流程",
|
||||
value: "laws2"
|
||||
},
|
||||
},*/
|
||||
{
|
||||
label: "未符合项整改流程",
|
||||
value: "8"
|
||||
@@ -84,10 +84,10 @@ export default {
|
||||
label: "参与外部标准制修订信息提报流程",
|
||||
value: "14"
|
||||
},
|
||||
{
|
||||
/* {
|
||||
label: "重点认证标准/政策合规性项目审查流程",
|
||||
value: "laws3"
|
||||
},
|
||||
},*/
|
||||
{
|
||||
label: '外部标准化协会入会流程',
|
||||
value: "20"
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
<!-- 流程信息公共标题 -->
|
||||
<template>
|
||||
<div class="contentTitle">
|
||||
<div class="titleIcon"></div>
|
||||
<div class="titleText"><slot name="title"></slot></div>
|
||||
</div>
|
||||
<div class="contentTitle">
|
||||
<div class="titleIcon" />
|
||||
<div class="titleText"><slot name="title" /></div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "ProcessTitle"
|
||||
}
|
||||
export default {
|
||||
name: 'ProcessTitle'
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
@@ -27,6 +27,7 @@
|
||||
margin-left: 10px;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -48,11 +48,14 @@
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getFile(fileList) {
|
||||
this.fileList = fileList || []
|
||||
this.fileMadel = true
|
||||
},
|
||||
beginImportFile(file) {
|
||||
getFile (fileList) {
|
||||
this.fileList = fileList || []
|
||||
this.fileList.forEach(item => {
|
||||
item.name = item.name || item.oldFileName
|
||||
});
|
||||
this.fileMadel = true
|
||||
},
|
||||
beginImportFile(file) {
|
||||
var filename = file.name
|
||||
var index1 = filename.lastIndexOf('.')
|
||||
var index2 = filename.length
|
||||
|
||||
+188
-150
@@ -1,159 +1,197 @@
|
||||
<template>
|
||||
<div style="margin-top: 10px">
|
||||
<el-table
|
||||
:data="infoTableDatas"
|
||||
ref="multipleTable"
|
||||
tooltip-effect="dark"
|
||||
border
|
||||
style="width: 100%;"
|
||||
height="500"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}">
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
type="index"
|
||||
width="55"
|
||||
label="序号"
|
||||
align="center">
|
||||
<template slot-scope="{scope, column, $index}">
|
||||
{{ ($index + 1) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="lawCode"
|
||||
label="标准编号/政策文号"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
width="180"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="lawName"
|
||||
label="标准名称/政策名称"
|
||||
min-width="180"
|
||||
align="center"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="productType"
|
||||
show-overflow-tooltip
|
||||
width="120"
|
||||
align="center"
|
||||
label="产品类型">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="implTime"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
width="170"
|
||||
label="实施日期">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="implRequire"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
width="180"
|
||||
label="实施要求">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="resourceAccordwithCircumstance"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
width="180"
|
||||
label="资源符合情况">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="devPlan"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
width="180"
|
||||
label="开发计划">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="sopDate"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
width="170"
|
||||
label="SOP时间">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="finishCircumstance"
|
||||
align="center"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
label="完成情况">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="sopDateSolutions"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
width="400"
|
||||
label="SOP时间超过法规时限的空档期的业务应对方案">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="showInput"
|
||||
align="center"
|
||||
fixed="right"
|
||||
width="80"
|
||||
label="操作">
|
||||
<template slot-scope="scope">
|
||||
<a class="scopeText" @click="editModel(scope.row,scope.$index)">
|
||||
编辑
|
||||
</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<businessDivisionEdit ref="businessDivisionEditRef" @businessDivisionEditForm="businessDivisionEditForm"/>
|
||||
</div>
|
||||
<div style="margin-top: 10px">
|
||||
<loading :loading="loading">数据获取中...</loading>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="infoTableDatas"
|
||||
tooltip-effect="dark"
|
||||
border
|
||||
style="width: 100%;"
|
||||
height="500"
|
||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
type="index"
|
||||
width="55"
|
||||
label="序号"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="{scope, column, $index}">
|
||||
{{ ($index + 1) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="lawCode"
|
||||
label="标准编号/政策文号"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
width="180"
|
||||
/>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="lawName"
|
||||
label="标准名称/政策名称"
|
||||
min-width="180"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="productType"
|
||||
show-overflow-tooltip
|
||||
width="120"
|
||||
align="center"
|
||||
label="产品类型"
|
||||
>
|
||||
<template slot-scope="{row}">
|
||||
<span>{{ trackingChecklistProductTypeMap[row.productType] || '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="implTime"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
width="170"
|
||||
label="实施日期"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="implRequire"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
width="180"
|
||||
label="实施要求"
|
||||
>
|
||||
<template slot-scope="{row}">
|
||||
<span>{{ trackingChecklistPutDemandMap[row.implRequire] || '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="resourceAccordwithCircumstance"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
width="180"
|
||||
label="资源符合情况"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="devPlan"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
width="180"
|
||||
label="开发计划"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="sopDate"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
width="170"
|
||||
label="SOP时间"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="finishCircumstance"
|
||||
align="center"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
label="完成情况"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="sopDateSolutions"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
width="400"
|
||||
label="SOP时间超过法规时限的空档期的业务应对方案"
|
||||
/>
|
||||
<el-table-column
|
||||
v-if="showInput"
|
||||
align="center"
|
||||
fixed="right"
|
||||
width="80"
|
||||
label="操作"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a class="scopeText" @click="editModel(scope.row,scope.$index)">
|
||||
编辑
|
||||
</a>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<businessDivisionEdit ref="businessDivisionEditRef" @businessDivisionEditForm="businessDivisionEditForm" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import businessDivisionEdit from "./businessDivisionEdit";
|
||||
import businessDivisionEdit from './businessDivisionEdit';
|
||||
|
||||
export default {
|
||||
name: "businessDivisionList",
|
||||
components: {
|
||||
businessDivisionEdit
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
infoTableDatas: [],
|
||||
taskKey: this.$route.query.taskDefinitionKey,
|
||||
selectNum: 0,
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
showInput() {
|
||||
if (this.taskKey == 'PolicyComplianceProgramReviewProcessKey8' ||
|
||||
this.taskKey == 'PolicyComplianceProgramReviewProcessKey9') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
getData(val) {
|
||||
this.infoTableDatas = val || []
|
||||
this.infoTableDatas = [...this.infoTableDatas]
|
||||
},
|
||||
submit(callback) {
|
||||
callback && callback(this.infoTableDatas)
|
||||
},
|
||||
businessDivisionEditForm(row) {
|
||||
this.infoTableDatas[this.selectNum] = row
|
||||
this.infoTableDatas = [...this.infoTableDatas]
|
||||
},
|
||||
editModel(row, index) {
|
||||
this.selectNum = index
|
||||
this.$refs.businessDivisionEditRef.edit(JSON.parse(JSON.stringify(row)))
|
||||
},
|
||||
}
|
||||
export default {
|
||||
name: 'BusinessDivisionList',
|
||||
components: {
|
||||
businessDivisionEdit
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
infoTableDatas: [],
|
||||
taskKey: this.$route.query.taskDefinitionKey,
|
||||
selectNum: 0,
|
||||
loading: false,
|
||||
dict: []
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getDicTypeListCode()
|
||||
},
|
||||
computed: {
|
||||
trackingChecklistProductTypeMap () {
|
||||
return this.dict.trackingChecklistProductType
|
||||
? this.dict.trackingChecklistProductType.reduce((obj, item) => {
|
||||
obj[item.value] = item.label
|
||||
return obj
|
||||
}, {})
|
||||
: []
|
||||
},
|
||||
trackingChecklistPutDemandMap () {
|
||||
return this.dict.trackingChecklistPutDemand
|
||||
? this.dict.trackingChecklistPutDemand.reduce((obj, item) => {
|
||||
obj[item.value] = item.label
|
||||
return obj
|
||||
}, {})
|
||||
: []
|
||||
},
|
||||
showInput () {
|
||||
if (this.taskKey == 'PolicyComplianceProgramReviewProcessKey8' ||
|
||||
this.taskKey == 'PolicyComplianceProgramReviewProcessKey9') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
getData (val) {
|
||||
this.infoTableDatas = val || []
|
||||
this.infoTableDatas = [ ...this.infoTableDatas ]
|
||||
},
|
||||
submit (callback) {
|
||||
callback && callback(this.infoTableDatas)
|
||||
},
|
||||
businessDivisionEditForm (row) {
|
||||
this.infoTableDatas[this.selectNum] = row
|
||||
this.infoTableDatas = [ ...this.infoTableDatas ]
|
||||
},
|
||||
editModel (row, index) {
|
||||
this.selectNum = index
|
||||
this.$refs.businessDivisionEditRef.edit(JSON.parse(JSON.stringify(row)))
|
||||
},
|
||||
getDicTypeListCode () {
|
||||
this.loading = true
|
||||
this.$http._getData('sys/dictype/getDicTypeListCode').then(res => {
|
||||
this.dict = { ...res.data }
|
||||
this.loading = false
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+302
-261
@@ -1,279 +1,320 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-drawer
|
||||
:title="modalshowtitle"
|
||||
:visible.sync="modalshowflag"
|
||||
:wrapperClosable="false"
|
||||
size="800px"
|
||||
@close="resetForm"
|
||||
ref="standard"
|
||||
append-to-body
|
||||
<div>
|
||||
<el-drawer
|
||||
ref="standard"
|
||||
:title="modalshowtitle"
|
||||
:visible.sync="modalshowflag"
|
||||
:wrapperClosable="false"
|
||||
size="800px"
|
||||
append-to-body
|
||||
@close="resetForm"
|
||||
>
|
||||
<!-- 新增样式 -->
|
||||
<div class="demo-drawer-content">
|
||||
<el-form
|
||||
ref="sarStandardsInfoForm"
|
||||
:model="sarStandardsInfoEO"
|
||||
:rules="sarStandardsInfoRules"
|
||||
class="label-input-form"
|
||||
>
|
||||
<!-- 新增样式 -->
|
||||
<div class="demo-drawer-content">
|
||||
<el-form
|
||||
ref="sarStandardsInfoForm"
|
||||
:model="sarStandardsInfoEO"
|
||||
:rules="sarStandardsInfoRules"
|
||||
class="label-input-form"
|
||||
>
|
||||
<el-form-item label="章节编号" prop="chapterNumber" label-width="150px" class="add-form-item">
|
||||
<el-input v-model.trim="sarStandardsInfoEO.chapterNumber"
|
||||
placeholder="请输入章节编号"
|
||||
clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="章节条目" prop="chapterEntries" label-width="150px" class="add-form-item">
|
||||
<el-input v-model.trim="sarStandardsInfoEO.chapterEntries"
|
||||
placeholder="请输入章节条目"
|
||||
clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="修改前" prop="modifyBefore" label-width="150px" class="add-form-item">
|
||||
<el-input v-model.trim="sarStandardsInfoEO.modifyBefore"
|
||||
placeholder="请输入修改前"
|
||||
clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="修改后" prop="modifyAfter" label-width="150px" class="add-form-item">
|
||||
<el-input v-model.trim="sarStandardsInfoEO.modifyAfter"
|
||||
placeholder="请输入修改后"
|
||||
clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="修改理由" prop="modifyReason" label-width="150px" class="add-form-item">
|
||||
<el-input v-model.trim="sarStandardsInfoEO.modifyReason"
|
||||
placeholder="请输入修改理由"
|
||||
clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="原因" prop="cause" label-width="150px" class="add-form-item">
|
||||
<el-input v-model.trim="sarStandardsInfoEO.cause"
|
||||
placeholder="请输入原因"
|
||||
clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="附件"
|
||||
label-width="150px"
|
||||
class="add-form-item">
|
||||
<el-input
|
||||
disabled
|
||||
style="display: none;"
|
||||
v-model="sarStandardsInfoEO.annexFileId"
|
||||
clearable
|
||||
></el-input>
|
||||
<div v-if="sarStandardsInfoEO.annexFileList && sarStandardsInfoEO.annexFileList.length > 0">
|
||||
<div v-for="(item, index) in sarStandardsInfoEO.annexFileList" :key="index"
|
||||
style="margin-right: 5px;padding-left: 10px">
|
||||
<div class="fileClass">
|
||||
<span @click="handlePreview(item)">{{ item.name }}</span>
|
||||
<el-button size="small"
|
||||
@click="clickButtonToUpload(item)"
|
||||
icon="el-icon-download"
|
||||
style="height: 32px; margin-left: 5px;"
|
||||
></el-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<el-button type="primary"
|
||||
class="common-button-primary"
|
||||
@click="fileUpload('annexFileList','annexFileId','.zip,.docx,.doc,.xls,.xlsx',200)"
|
||||
size="mini">
|
||||
点击上传
|
||||
</el-button>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="处理意见"
|
||||
v-if="isHandlingSuggestion"
|
||||
prop="handlingOpinions" label-width="150px" class="add-form-item">
|
||||
<el-input v-model.trim="sarStandardsInfoEO.handlingOpinions"
|
||||
placeholder="请输入处理意见"
|
||||
clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="处理原因" prop="handlingCause"
|
||||
v-if="isHandlingSuggestion"
|
||||
label-width="150px" class="add-form-item">
|
||||
<el-input v-model.trim="sarStandardsInfoEO.handlingCause"
|
||||
placeholder="请输入处理原因"
|
||||
clearable></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-form-item label="章节编号" prop="chapterNumber" label-width="150px" class="add-form-item">
|
||||
<el-input
|
||||
v-model.trim="sarStandardsInfoEO.chapterNumber"
|
||||
placeholder="请输入章节编号"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="章节条目" prop="chapterEntries" label-width="150px" class="add-form-item">
|
||||
<el-input
|
||||
v-model.trim="sarStandardsInfoEO.chapterEntries"
|
||||
placeholder="请输入章节条目"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="修改前" prop="modifyBefore" label-width="150px" class="add-form-item">
|
||||
<el-input
|
||||
v-model.trim="sarStandardsInfoEO.modifyBefore"
|
||||
placeholder="请输入修改前"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="修改后" prop="modifyAfter" label-width="150px" class="add-form-item">
|
||||
<el-input
|
||||
v-model.trim="sarStandardsInfoEO.modifyAfter"
|
||||
placeholder="请输入修改后"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="修改理由" prop="modifyReason" label-width="150px" class="add-form-item">
|
||||
<el-input
|
||||
v-model.trim="sarStandardsInfoEO.modifyReason"
|
||||
placeholder="请输入修改理由"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="原因" prop="cause" label-width="150px" class="add-form-item">
|
||||
<el-input
|
||||
v-model.trim="sarStandardsInfoEO.cause"
|
||||
placeholder="请输入原因"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
label="附件"
|
||||
label-width="150px"
|
||||
class="add-form-item"
|
||||
>
|
||||
<el-input
|
||||
v-model="sarStandardsInfoEO.annexFileId"
|
||||
disabled
|
||||
style="display: none;"
|
||||
clearable
|
||||
/>
|
||||
<div v-if="sarStandardsInfoEO.annexFileList && sarStandardsInfoEO.annexFileList.length > 0">
|
||||
<div
|
||||
v-for="(item, index) in sarStandardsInfoEO.annexFileList"
|
||||
:key="index"
|
||||
style="margin-right: 5px;padding-left: 10px"
|
||||
>
|
||||
<div class="fileClass">
|
||||
<span @click="handlePreview(item)">{{ item.name || item.oldFileName }}</span>
|
||||
<el-button
|
||||
size="small"
|
||||
icon="el-icon-download"
|
||||
style="height: 32px; margin-left: 5px;"
|
||||
@click="clickButtonToUpload(item)"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="demo-drawer-footer">
|
||||
<el-button size="mini" class="common-button-primary" icon="el-icon-check" type="primary"
|
||||
@click="saveOrUpdateStands" :loading="isSubmit">提交
|
||||
</el-button>
|
||||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="resetForm">取消
|
||||
</el-button>
|
||||
<div>
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="mini"
|
||||
@click="fileUpload('annexFileList','annexFileId','.zip,.docx,.doc,.xls,.xlsx',200)"
|
||||
>
|
||||
点击上传
|
||||
</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
<processFile
|
||||
ref="processFileRef"
|
||||
:accept="accept"
|
||||
:fileMax_M="fileMax_M"
|
||||
@uploadSuccess="uploadSuccess"/>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
v-if="isHandlingSuggestion"
|
||||
label="处理意见"
|
||||
prop="handlingOpinions"
|
||||
label-width="150px"
|
||||
class="add-form-item"
|
||||
>
|
||||
<el-input
|
||||
v-model.trim="sarStandardsInfoEO.handlingOpinions"
|
||||
placeholder="请输入处理意见"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
v-if="isHandlingSuggestion"
|
||||
label="处理原因"
|
||||
prop="handlingCause"
|
||||
label-width="150px"
|
||||
class="add-form-item"
|
||||
>
|
||||
<el-input
|
||||
v-model.trim="sarStandardsInfoEO.handlingCause"
|
||||
placeholder="请输入处理原因"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<div class="demo-drawer-footer">
|
||||
<el-button
|
||||
size="mini"
|
||||
class="common-button-primary"
|
||||
icon="el-icon-check"
|
||||
type="primary"
|
||||
:loading="isSubmit"
|
||||
@click="saveOrUpdateStands"
|
||||
>
|
||||
提交
|
||||
</el-button>
|
||||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="resetForm">
|
||||
取消
|
||||
</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
<processFile
|
||||
ref="processFileRef"
|
||||
:accept="accept"
|
||||
:fileMax_M="fileMax_M"
|
||||
@uploadSuccess="uploadSuccess"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import processFile from "../../../components/processFile";
|
||||
import processFile from '../../../components/processFile';
|
||||
|
||||
export default {
|
||||
name: "addModel",
|
||||
components: {
|
||||
processFile
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
modalshowflag: false,
|
||||
modalshowtitle: '添加',
|
||||
isSubmit: false,
|
||||
sarStandardsInfoEO: {},
|
||||
sarStandardsInfoRules: {
|
||||
chapterNumber: [
|
||||
{
|
||||
type: "string",
|
||||
max: 200,
|
||||
message: "章节编号不能超过200个字符",
|
||||
trigger: "blur"
|
||||
}
|
||||
],
|
||||
chapterEntries: [
|
||||
{
|
||||
type: "string",
|
||||
max: 200,
|
||||
message: "章节条目不能超过200个字符",
|
||||
trigger: "blur"
|
||||
}
|
||||
],
|
||||
modifyBefore: [
|
||||
{
|
||||
type: "string",
|
||||
max: 200,
|
||||
message: "修改前不能超过200个字符",
|
||||
trigger: "blur"
|
||||
}
|
||||
],
|
||||
modifyAfter: [
|
||||
{
|
||||
type: "string",
|
||||
max: 200,
|
||||
message: "修改后不能超过200个字符",
|
||||
trigger: "blur"
|
||||
}
|
||||
],
|
||||
modifyReason: [
|
||||
{
|
||||
type: "string",
|
||||
max: 200,
|
||||
message: "修改理由不能超过200个字符",
|
||||
trigger: "blur"
|
||||
}
|
||||
],
|
||||
handlingOpinions: [
|
||||
{
|
||||
type: "string",
|
||||
max: 200,
|
||||
message: "处理意见不能超过200个字符",
|
||||
trigger: "blur"
|
||||
}
|
||||
],
|
||||
handlingCause: [
|
||||
{
|
||||
type: "string",
|
||||
max: 200,
|
||||
message: "处理原因不能超过200个字符",
|
||||
trigger: "blur"
|
||||
}
|
||||
],
|
||||
cause: [
|
||||
{
|
||||
type: "string",
|
||||
max: 200,
|
||||
message: "原因不能超过200个字符",
|
||||
trigger: "blur"
|
||||
}
|
||||
],
|
||||
},
|
||||
fileListName: '',
|
||||
fileName: '',
|
||||
accept: '',
|
||||
fileMax_M: 0,
|
||||
taskKey: this.$route.query.taskDefinitionKey,
|
||||
}
|
||||
},
|
||||
export default {
|
||||
name: 'AddModel',
|
||||
components: {
|
||||
processFile
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
modalshowflag: false,
|
||||
modalshowtitle: '添加',
|
||||
isSubmit: false,
|
||||
sarStandardsInfoEO: {},
|
||||
sarStandardsInfoRules: {
|
||||
chapterNumber: [
|
||||
{
|
||||
type: 'string',
|
||||
max: 200,
|
||||
message: '章节编号不能超过200个字符',
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
chapterEntries: [
|
||||
{
|
||||
type: 'string',
|
||||
max: 200,
|
||||
message: '章节条目不能超过200个字符',
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
modifyBefore: [
|
||||
{
|
||||
type: 'string',
|
||||
max: 200,
|
||||
message: '修改前不能超过200个字符',
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
modifyAfter: [
|
||||
{
|
||||
type: 'string',
|
||||
max: 200,
|
||||
message: '修改后不能超过200个字符',
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
modifyReason: [
|
||||
{
|
||||
type: 'string',
|
||||
max: 200,
|
||||
message: '修改理由不能超过200个字符',
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
handlingOpinions: [
|
||||
{
|
||||
type: 'string',
|
||||
max: 200,
|
||||
message: '处理意见不能超过200个字符',
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
handlingCause: [
|
||||
{
|
||||
type: 'string',
|
||||
max: 200,
|
||||
message: '处理原因不能超过200个字符',
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
cause: [
|
||||
{
|
||||
type: 'string',
|
||||
max: 200,
|
||||
message: '原因不能超过200个字符',
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
},
|
||||
fileListName: '',
|
||||
fileName: '',
|
||||
accept: '',
|
||||
fileMax_M: 0,
|
||||
taskKey: this.$route.query.taskDefinitionKey,
|
||||
}
|
||||
},
|
||||
|
||||
computed: {
|
||||
isHandlingSuggestion() {
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey12') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
isHandlingSuggestion () {
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey11') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
},
|
||||
|
||||
methods: {
|
||||
handlePreview(file) {
|
||||
let attId = ""
|
||||
if (file && file.id) {
|
||||
attId = file.id
|
||||
} else {
|
||||
attId = file.response.data.id
|
||||
}
|
||||
this.$preview(attId)
|
||||
},
|
||||
clickButtonToUpload(file) {
|
||||
const attId = file.attId
|
||||
if (attId) {
|
||||
window.location.href = '/api/att/attFile/downloadFileForSarNew?fileId=' + attId
|
||||
} else {
|
||||
this.$message.warning('文件不存在,下载失败')
|
||||
}
|
||||
},
|
||||
fileUpload(fileListName, fileName, accept, fileMax_M) {
|
||||
this.fileListName = fileListName
|
||||
this.fileName = fileName
|
||||
this.accept = accept
|
||||
this.fileMax_M = fileMax_M
|
||||
this.$refs.processFileRef.getFile(this.sarStandardsInfoEO[this.fileListName])
|
||||
},
|
||||
uploadSuccess(fileList, fileId) {
|
||||
this.sarStandardsInfoEO[this.fileListName] = fileList
|
||||
this.sarStandardsInfoEO[this.fileName] = fileId
|
||||
this.sarStandardsInfoEO = {...this.sarStandardsInfoEO}
|
||||
},
|
||||
add() {
|
||||
this.modalshowflag = true
|
||||
this.sarStandardsInfoEO = {}
|
||||
},
|
||||
edit(row) {
|
||||
this.modalshowflag = true
|
||||
this.sarStandardsInfoEO = JSON.parse(JSON.stringify(row))
|
||||
},
|
||||
resetForm() {
|
||||
this.modalshowflag = false
|
||||
},
|
||||
saveOrUpdateStands() {
|
||||
this.$refs['sarStandardsInfoForm'].validate((valid) => {
|
||||
if (valid) {
|
||||
if (!this.sarStandardsInfoEO.chapterNumber && !this.sarStandardsInfoEO.chapterEntries
|
||||
methods: {
|
||||
handlePreview (file) {
|
||||
let attId = ''
|
||||
if (file && file.id) {
|
||||
attId = file.id
|
||||
} else {
|
||||
attId = file.response.data.id
|
||||
}
|
||||
this.$preview(attId)
|
||||
},
|
||||
clickButtonToUpload (file) {
|
||||
const attId = file.attId || file.id
|
||||
if (attId) {
|
||||
window.location.href = '/api/att/attFile/downloadFileForSarNew?fileId=' + attId
|
||||
} else {
|
||||
this.$message.warning('文件不存在,下载失败')
|
||||
}
|
||||
},
|
||||
fileUpload (fileListName, fileName, accept, fileMax_M) {
|
||||
this.fileListName = fileListName
|
||||
this.fileName = fileName
|
||||
this.accept = accept
|
||||
this.fileMax_M = fileMax_M
|
||||
this.$refs.processFileRef.getFile(this.sarStandardsInfoEO[this.fileListName])
|
||||
},
|
||||
uploadSuccess (fileList, fileId) {
|
||||
this.sarStandardsInfoEO[this.fileListName] = fileList
|
||||
this.sarStandardsInfoEO[this.fileName] = fileId
|
||||
this.sarStandardsInfoEO = { ...this.sarStandardsInfoEO }
|
||||
},
|
||||
add () {
|
||||
this.modalshowflag = true
|
||||
this.sarStandardsInfoEO = {}
|
||||
},
|
||||
edit (row) {
|
||||
this.modalshowflag = true
|
||||
this.sarStandardsInfoEO = JSON.parse(JSON.stringify(row))
|
||||
},
|
||||
resetForm () {
|
||||
this.modalshowflag = false
|
||||
},
|
||||
saveOrUpdateStands () {
|
||||
this.$refs['sarStandardsInfoForm'].validate((valid) => {
|
||||
if (valid) {
|
||||
if (!this.sarStandardsInfoEO.chapterNumber && !this.sarStandardsInfoEO.chapterEntries
|
||||
&& !this.sarStandardsInfoEO.modifyBefore && !this.sarStandardsInfoEO.modifyAfter
|
||||
&& !this.sarStandardsInfoEO.modifyReason && !this.sarStandardsInfoEO.annexFileId
|
||||
&& !this.sarStandardsInfoEO.cause && !this.sarStandardsInfoEO.handlingOpinions
|
||||
&& !this.sarStandardsInfoEO.handlingCause) {
|
||||
this.$message.warning('请至少填写一条数据,不能都为空')
|
||||
return
|
||||
}
|
||||
let timestamp = new Date().getTime();
|
||||
if (!this.sarStandardsInfoEO.dataId && !this.sarStandardsInfoEO.id) {
|
||||
this.sarStandardsInfoEO.dataId = timestamp
|
||||
}
|
||||
this.isSubmit = true
|
||||
this.$emit('addModelForm', this.sarStandardsInfoEO)
|
||||
this.modalshowflag = false
|
||||
this.$nextTick(() => {
|
||||
this.isSubmit = false
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
this.$message.warning('请至少填写一条数据,不能都为空')
|
||||
return
|
||||
}
|
||||
const timestamp = new Date().getTime();
|
||||
if (!this.sarStandardsInfoEO.dataId && !this.sarStandardsInfoEO.id) {
|
||||
this.sarStandardsInfoEO.dataId = timestamp
|
||||
}
|
||||
this.isSubmit = true
|
||||
this.$emit('addModelForm', this.sarStandardsInfoEO)
|
||||
this.modalshowflag = false
|
||||
this.$nextTick(() => {
|
||||
this.isSubmit = false
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
|
||||
+2
-2
@@ -46,8 +46,8 @@
|
||||
this.$preview(attId)
|
||||
},
|
||||
clickButtonToUpload(file) {
|
||||
const attId = file.attId
|
||||
if (attId) {
|
||||
const attId = file.attId || file.id
|
||||
if (attId) {
|
||||
window.location.href = '/api/att/attFile/downloadFileForSarNew?fileId=' + attId
|
||||
} else {
|
||||
this.$message.warning('文件不存在,下载失败')
|
||||
|
||||
+414
-381
@@ -1,398 +1,431 @@
|
||||
<template>
|
||||
<div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">征求意见列表</template>
|
||||
</ProcessTitle>
|
||||
<div class="action-bar">
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary add-button"
|
||||
@click="addModel"
|
||||
v-if="isNodeDisplay"
|
||||
><i class="el-icon-plus"></i>新增
|
||||
</el-button>
|
||||
<el-button
|
||||
class="common-button-primary add-button"
|
||||
@click="batchDeleteModel"
|
||||
v-if="isNodeDisplay"
|
||||
><i class="iconfont"></i>批量删除
|
||||
</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
v-if="isGenerateSummary"
|
||||
class="common-button-primary add-button"
|
||||
@click="generateSummary"
|
||||
>生成汇总单
|
||||
</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
v-if="isGenerateSummary"
|
||||
class="common-button-primary add-button"
|
||||
@click="generateReportComments"
|
||||
>生成上报意见
|
||||
</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
v-if="isExport"
|
||||
class="common-button-primary add-button"
|
||||
@click="exportModel"
|
||||
>导出
|
||||
</el-button>
|
||||
</div>
|
||||
<el-table
|
||||
height="500"
|
||||
ref="selection"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;margin-bottom: 20px"
|
||||
border
|
||||
row-key="id"
|
||||
@selection-change="selectChange"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
v-if="showSelection"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="80"
|
||||
align="center"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterNumber"
|
||||
label="章节编号"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="chapterEntries"
|
||||
label="章节条目"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="modifyBefore"
|
||||
label="修改前"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="modifyAfter"
|
||||
label="修改后"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="modifyReason"
|
||||
label="修改理由"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="cause"
|
||||
label="原因"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="附件"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<a v-if="scope.row.annexFileId" @click="fileClick(scope.row.annexFileList)"
|
||||
class="textClass">查看文件</a>
|
||||
<span v-else>--</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column
|
||||
v-if="isPersonInCharge"
|
||||
prop="createUserName"
|
||||
label="责任人"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="isCompleteFlag"
|
||||
prop="createUserDeptName"
|
||||
label="提出部门"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="isCompleteFlag"
|
||||
prop="createUserName"
|
||||
label="提出人"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="isCompleteFlag"
|
||||
prop="handlingOpinions"
|
||||
label="处理意见"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="handlingCause"
|
||||
label="处理原因"
|
||||
v-if="isCompleteFlag"
|
||||
show-overflow-tooltip
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="操作"
|
||||
width="70"
|
||||
v-if="isOperate"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div @click.stop style="display: inline-block">
|
||||
<el-dropdown trigger="click" @command="handleCommand">
|
||||
<i class="iconfont"></i>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item :command="[scope.row, scope.$index, '编辑']">编辑
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item v-if="taskKey != 'PolicySolicitOpinionProcessKey12'"
|
||||
:command="[scope.row, scope.$index,'删除']">删除
|
||||
</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<addModel ref="addModelRef" @addModelForm="addModelForm"/>
|
||||
<fileViewModel ref="fileViewModelRef"/>
|
||||
<div>
|
||||
<ProcessTitle>
|
||||
<template slot="title">征求意见列表</template>
|
||||
</ProcessTitle>
|
||||
<div class="action-bar">
|
||||
<el-button
|
||||
v-if="isNodeDisplay"
|
||||
type="primary"
|
||||
class="common-button-primary add-button"
|
||||
@click="addModel"
|
||||
>
|
||||
<i class="el-icon-plus" />新增
|
||||
</el-button>
|
||||
<el-button
|
||||
v-if="isNodeDisplay"
|
||||
class="common-button-primary add-button"
|
||||
@click="batchDeleteModel"
|
||||
>
|
||||
<i class="iconfont"></i>批量删除
|
||||
</el-button>
|
||||
<el-button
|
||||
v-if="isGenerateSummary"
|
||||
type="primary"
|
||||
class="common-button-primary add-button"
|
||||
@click="generateSummary"
|
||||
>
|
||||
生成汇总单
|
||||
</el-button>
|
||||
<el-button
|
||||
v-if="isGenerateSummary"
|
||||
type="primary"
|
||||
class="common-button-primary add-button"
|
||||
@click="generateReportComments"
|
||||
>
|
||||
生成上报意见
|
||||
</el-button>
|
||||
<el-button
|
||||
v-if="isExport"
|
||||
type="primary"
|
||||
class="common-button-primary add-button"
|
||||
@click="exportModel"
|
||||
>
|
||||
导出
|
||||
</el-button>
|
||||
</div>
|
||||
<el-table
|
||||
ref="selection"
|
||||
height="500"
|
||||
:data="histortData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;margin-bottom: 20px"
|
||||
border
|
||||
row-key="id"
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||
@selection-change="selectChange"
|
||||
>
|
||||
<el-table-column
|
||||
v-if="showSelection"
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
type="index"
|
||||
label="序号"
|
||||
width="80"
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="chapterNumber"
|
||||
label="章节编号"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="chapterEntries"
|
||||
label="章节条目"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="modifyBefore"
|
||||
label="修改前"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="modifyAfter"
|
||||
label="修改后"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="modifyReason"
|
||||
label="修改理由"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="cause"
|
||||
label="原因"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="completeFlag"
|
||||
label="附件"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<a
|
||||
v-if="scope.row.annexFileId"
|
||||
class="textClass"
|
||||
@click="fileClick(scope.row.annexFileList)"
|
||||
>查看文件</a>
|
||||
<span v-else>--</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column
|
||||
v-if="isPersonInCharge"
|
||||
prop="createUserName"
|
||||
label="责任人"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
v-if="isCompleteFlag"
|
||||
prop="createUserDeptName"
|
||||
label="提出部门"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
v-if="isCompleteFlag"
|
||||
prop="createUserName"
|
||||
label="提出人"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
v-if="isCompleteFlag"
|
||||
prop="handlingOpinions"
|
||||
label="处理意见"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
v-if="isCompleteFlag"
|
||||
prop="handlingCause"
|
||||
label="处理原因"
|
||||
show-overflow-tooltip
|
||||
align="center"
|
||||
/>
|
||||
<el-table-column
|
||||
v-if="isOperate"
|
||||
label="操作"
|
||||
width="70"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<div style="display: inline-block" @click.stop>
|
||||
<el-dropdown trigger="click" @command="handleCommand">
|
||||
<i class="iconfont"></i>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item :command="[scope.row, scope.$index, '编辑']">
|
||||
编辑
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
v-if="taskKey != 'PolicySolicitOpinionProcessKey12'"
|
||||
:command="[scope.row, scope.$index,'删除']"
|
||||
>
|
||||
删除
|
||||
</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<addModel ref="addModelRef" @addModelForm="addModelForm" />
|
||||
<fileViewModel ref="fileViewModelRef" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessTitle from "../../../components/ProcessTitle";
|
||||
import fileViewModel from "./fileViewModel";
|
||||
import addModel from "./addModel";
|
||||
import ProcessTitle from '../../../components/ProcessTitle';
|
||||
import fileViewModel from './fileViewModel';
|
||||
import addModel from './addModel';
|
||||
|
||||
export default {
|
||||
name: "solicitationList",
|
||||
components: {
|
||||
ProcessTitle,
|
||||
addModel,
|
||||
fileViewModel
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
histortData: [],
|
||||
addOrEdit: 'add',
|
||||
editNum: 0,
|
||||
selectList: [],
|
||||
deleteList: [],
|
||||
taskKey: this.$route.query.taskDefinitionKey,//流程节点key
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
isNodeDisplay() {//是否展示新增和批量删除
|
||||
if (this.$route.query.operate && this.$route.query.operate == 'view') {
|
||||
return false
|
||||
}
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey8' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey9') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
isGenerateSummary() {//是否展示生成汇总单和生成上报意见
|
||||
if (this.$route.query.operate && this.$route.query.operate == 'view') {
|
||||
return false
|
||||
}
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey13' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey14' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey15') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
isExport() {//是否展示导出
|
||||
if (this.$route.query.operate && this.$route.query.operate == 'view') {
|
||||
return false
|
||||
}
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey12') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
isPersonInCharge() {
|
||||
//是否展示责任人
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey9' ||
|
||||
export default {
|
||||
name: 'SolicitationList',
|
||||
components: {
|
||||
ProcessTitle,
|
||||
addModel,
|
||||
fileViewModel
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
histortData: [],
|
||||
addOrEdit: 'add',
|
||||
editNum: 0,
|
||||
selectList: [],
|
||||
deleteList: [],
|
||||
taskKey: this.$route.query.taskDefinitionKey, // 流程节点key
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
isNodeDisplay () {// 是否展示新增和批量删除
|
||||
if (this.$route.query.operate && this.$route.query.operate == 'view') {
|
||||
return false
|
||||
}
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey8' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey9' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey11') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
isGenerateSummary () {// 是否展示生成汇总单和生成上报意见
|
||||
if (this.$route.query.operate && this.$route.query.operate == 'view') {
|
||||
return false
|
||||
}
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey15' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey16') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
isExport () {// 是否展示导出
|
||||
if (this.$route.query.operate && this.$route.query.operate == 'view') {
|
||||
return false
|
||||
}
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey11') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
isPersonInCharge () {
|
||||
// 是否展示责任人
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey9' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey10' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey11') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
isCompleteFlag() {//是否展示提出部门、提出人、处理意见、原因
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey12' ||
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
isCompleteFlag () {// 是否展示提出部门、提出人、处理意见、原因
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey11' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey12' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey13' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey14' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey15' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey16') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
isOperate() {//是否展示操作列
|
||||
if (this.$route.query.operate && this.$route.query.operate == 'view') {
|
||||
return false
|
||||
}
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey8' ||
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
isOperate () {// 是否展示操作列
|
||||
if (this.$route.query.operate && this.$route.query.operate == 'view') {
|
||||
return false
|
||||
}
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey8' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey9' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey12') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
showSelection() {//是否展示选择
|
||||
if (this.$route.query.operate && this.$route.query.operate == 'view') {
|
||||
return false
|
||||
}
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey8' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey9') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey11') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
showSelection () {// 是否展示选择
|
||||
if (this.$route.query.operate && this.$route.query.operate == 'view') {
|
||||
return false
|
||||
}
|
||||
if (this.taskKey == 'PolicySolicitOpinionProcessKey8' ||
|
||||
this.taskKey == 'PolicySolicitOpinionProcessKey9' || this.taskKey == 'PolicySolicitOpinionProcessKey11') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
},
|
||||
mounted () {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
getData () {
|
||||
const query = {
|
||||
taskDefinitionKey: this.$route.query.taskDefinitionKey,
|
||||
prcId: this.$route.query.prcId
|
||||
}
|
||||
this.$http.get('/lawss/activiti/queryPolicitOpinionEOList', query, { _this: this }, res => {
|
||||
if (res.ok) {
|
||||
this.histortData = res.data || []
|
||||
} else {
|
||||
this.histortData = []
|
||||
}
|
||||
})
|
||||
},
|
||||
generateSummary () {
|
||||
window.location.href = 'api/lawss/activiti/exportPolicitOpinionEOListExcel?taskDefinitionKey='
|
||||
+ this.$route.query.taskDefinitionKey + '&prcId=' + this.$route.query.prcId + '¤tUserId=' +
|
||||
this.$store.getters.userInfo.userId
|
||||
},
|
||||
generateReportComments () {
|
||||
window.location.href = 'api/lawss/activiti/exportPolicitOpinionEOListExcel?taskDefinitionKey='
|
||||
+ this.$route.query.taskDefinitionKey + '&prcId=' + this.$route.query.prcId + '¤tUserId=' +
|
||||
this.$store.getters.userInfo.userId
|
||||
},
|
||||
exportModel () {
|
||||
window.location.href = 'api/lawss/activiti/exportPolicitOpinionEOListExcel?taskDefinitionKey='
|
||||
+ this.$route.query.taskDefinitionKey + '&prcId=' + this.$route.query.prcId + '¤tUserId=' +
|
||||
this.$store.getters.userInfo.userId
|
||||
},
|
||||
addModel () {
|
||||
this.addOrEdit = 'add'
|
||||
this.$refs.addModelRef.add()
|
||||
},
|
||||
selectChange (row) {
|
||||
this.selectList = row
|
||||
},
|
||||
batchDeleteModel () {
|
||||
if (this.selectList && this.selectList.length > 0) {
|
||||
this.$confirm('确认删除这些数据?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
roundButton: false
|
||||
}).then(() => {
|
||||
let deleteIds = this.selectList.map(val => val.id)
|
||||
deleteIds = deleteIds.join(',')
|
||||
this.$http.delete('lawss/activiti/deletePolicitOpinionEOList', { ids: deleteIds }, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
this.getData()
|
||||
this.$refs.selection.clearSelection()
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
}).catch(() => {
|
||||
// 取消删除,清空选择
|
||||
this.$refs.selection.clearSelection()
|
||||
});
|
||||
} else {
|
||||
this.$message.warning('请选择至少一条数据');
|
||||
}
|
||||
},
|
||||
handleCommand (command) {
|
||||
switch (command[2]) {
|
||||
case '编辑':
|
||||
this.addOrEdit = 'edit'
|
||||
this.editNum = command[1]
|
||||
this.$refs.addModelRef.edit(command[0])
|
||||
break;
|
||||
case '删除':
|
||||
this.deleteSarAccess(command[1], command[0]);
|
||||
break;
|
||||
}
|
||||
},
|
||||
deleteSarAccess (num, row) {
|
||||
this.$confirm('确认删除数据?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
roundButton: false
|
||||
}).then(() => {
|
||||
this.$http.delete('lawss/activiti/deletePolicitOpinionEOList', { ids: row.id }, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
getData() {
|
||||
let query = {
|
||||
taskDefinitionKey: this.$route.query.taskDefinitionKey,
|
||||
prcId: this.$route.query.prcId
|
||||
}
|
||||
this.$http.get('/lawss/activiti/queryPolicitOpinionEOList', query, {_this: this}, res => {
|
||||
if (res.ok) {
|
||||
this.histortData = res.data || []
|
||||
} else {
|
||||
this.histortData = []
|
||||
}
|
||||
})
|
||||
},
|
||||
generateSummary() {
|
||||
window.location.href = 'api/lawss/activiti/exportPolicitOpinionEOListExcel?taskDefinitionKey='
|
||||
+ this.$route.query.taskDefinitionKey + '&prcId=' + this.$route.query.prcId + '¤tUserId=' +
|
||||
this.$store.getters.userInfo.userId
|
||||
},
|
||||
generateReportComments() {
|
||||
window.location.href = 'api/lawss/activiti/exportPolicitOpinionEOListExcel?taskDefinitionKey='
|
||||
+ this.$route.query.taskDefinitionKey + '&prcId=' + this.$route.query.prcId + '¤tUserId=' +
|
||||
this.$store.getters.userInfo.userId
|
||||
},
|
||||
exportModel() {
|
||||
window.location.href = 'api/lawss/activiti/exportPolicitOpinionEOListExcel?taskDefinitionKey='
|
||||
+ this.$route.query.taskDefinitionKey + '&prcId=' + this.$route.query.prcId + '¤tUserId=' +
|
||||
this.$store.getters.userInfo.userId
|
||||
},
|
||||
addModel() {
|
||||
this.addOrEdit = 'add'
|
||||
this.$refs.addModelRef.add()
|
||||
},
|
||||
selectChange(row) {
|
||||
this.selectList = row
|
||||
},
|
||||
batchDeleteModel() {
|
||||
if (this.selectList && this.selectList.length > 0) {
|
||||
this.$confirm('确认删除这些数据?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
roundButton: false
|
||||
}).then(() => {
|
||||
this.selectList.forEach(val => {
|
||||
if (val.id) {
|
||||
this.deleteList.push(val.id)
|
||||
}
|
||||
this.histortData = this.histortData.filter(res => {
|
||||
if (res.id) {
|
||||
return res.id != val.id
|
||||
} else {
|
||||
return res.dataId != val.dataId
|
||||
}
|
||||
})
|
||||
})
|
||||
this.histortData = [...this.histortData]
|
||||
}).catch(() => {
|
||||
// 取消删除,清空选择
|
||||
this.$refs.selection.clearSelection()
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请选择至少一条数据')
|
||||
}
|
||||
|
||||
},
|
||||
handleCommand(command) {
|
||||
switch (command[2]) {
|
||||
case "编辑":
|
||||
this.addOrEdit = 'edit'
|
||||
this.editNum = command[1]
|
||||
this.$refs.addModelRef.edit(command[0])
|
||||
break;
|
||||
case "删除":
|
||||
this.deleteSarAccess(command[1], command[0]);
|
||||
break;
|
||||
}
|
||||
},
|
||||
deleteSarAccess(num, row) {
|
||||
this.$confirm('确认删除数据?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
roundButton: false
|
||||
}).then(() => {
|
||||
if (row.id) {
|
||||
this.deleteList.push(row.id)
|
||||
}
|
||||
this.histortData.splice(num, 1)
|
||||
this.histortData = [...this.histortData]
|
||||
}).catch(() => {
|
||||
// 取消删除,清空选择
|
||||
// this.$refs.multipleTable.clearSelection()
|
||||
})
|
||||
},
|
||||
addModelForm(row) {
|
||||
if (this.addOrEdit == 'add') {
|
||||
this.histortData.push(row)
|
||||
} else if (this.addOrEdit == 'edit') {
|
||||
this.histortData[this.editNum] = row
|
||||
this.histortData = [...this.histortData]
|
||||
}
|
||||
},
|
||||
fileClick(list) {
|
||||
if (list && list.length > 0) {
|
||||
this.$refs.fileViewModelRef.getData(list)
|
||||
} else {
|
||||
this.$message.warning('没有可查看的文件')
|
||||
}
|
||||
},
|
||||
submit(callback) {
|
||||
if (this.histortData && this.histortData.length > 0) {
|
||||
callback && callback(this.histortData, this.deleteList.join(','))
|
||||
} else {
|
||||
this.$message.warning('请至少添加一条数据')
|
||||
}
|
||||
},
|
||||
save(callback) {
|
||||
callback && callback(this.histortData, this.deleteList.join(','))
|
||||
},
|
||||
},
|
||||
}
|
||||
this.$refs.selection.clearSelection()
|
||||
}else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
}).catch(() => {
|
||||
// 取消删除,清空选择
|
||||
// this.$refs.multipleTable.clearSelection()
|
||||
})
|
||||
},
|
||||
addModelForm (row) {
|
||||
if (this.addOrEdit == 'add') {
|
||||
this.$http.postData('lawss/activiti/insertPolicitOpinionEOList', { ...row, prcId: this.$route.query.prcId, sarLawsInfoId: this.$parent.dataForm.lawsId }, { _this: this }, res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('操作成功')
|
||||
this.getData()
|
||||
}else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
}, e => {
|
||||
})
|
||||
} else if (this.addOrEdit == 'edit') {
|
||||
this.$http.putData('lawss/activiti/updatePolicitOpinionEOList', { ...row, prcId: this.$route.query.prcId, sarLawsInfoId: this.$parent.dataForm.lawsId }, { _this: this }, res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('操作成功')
|
||||
this.getData()
|
||||
}else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
}, e => {
|
||||
})
|
||||
}
|
||||
this.getData()
|
||||
},
|
||||
fileClick (list) {
|
||||
if (list && list.length > 0) {
|
||||
this.$refs.fileViewModelRef.getData(list)
|
||||
} else {
|
||||
this.$message.warning('没有可查看的文件')
|
||||
}
|
||||
},
|
||||
submit (callback) {
|
||||
if (this.histortData && this.histortData.length > 0) {
|
||||
callback && callback(this.histortData, this.deleteList.join(','))
|
||||
} else {
|
||||
this.$message.warning('请至少添加一条数据')
|
||||
}
|
||||
},
|
||||
save (callback) {
|
||||
callback && callback(this.histortData, this.deleteList.join(','))
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -10,52 +10,81 @@
|
||||
<div v-else class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
|
||||
</div>
|
||||
<div class="content">
|
||||
<el-form v-if="reloadForm"
|
||||
ref="form"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
<el-form
|
||||
v-if="reloadForm"
|
||||
ref="form"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<div v-show="active === '1'">
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<Basic :form="form" :dict="dict" :disabled="disabled"></Basic>
|
||||
<Basic :form="form" :dict="dict" :disabled="disabled" />
|
||||
<ProcessTitle>
|
||||
<template slot="title">会议分类</template>
|
||||
</ProcessTitle>
|
||||
<Classification :form="form" :dict="dict" :disabled="disabled"></Classification>
|
||||
<Classification :form="form" :dict="dict" :disabled="disabled" />
|
||||
<div v-for="(item, index) in form.meetingTopicList">
|
||||
<ProcessTitle>
|
||||
<template slot="title">
|
||||
会议议题
|
||||
<el-button type="primary" size="mini" icon="el-icon-plus" @click="addMeetingTopic" :disabled="disabled"
|
||||
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'visible' : 'collapse'}"></el-button>
|
||||
<el-button type="primary" size="mini" icon="el-icon-minus" @click="removeMeetingTopic(index)" :disabled="disabled"
|
||||
:style="{visibility: (form.meetingTopicList.length < 2 && index === 0) ? 'collapse' : 'visible'}"></el-button>
|
||||
<div style="display: flex;align-items: center;justify-content: space-between">
|
||||
<div>
|
||||
会议议题{{ index + 1 }}
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
icon="el-icon-plus"
|
||||
:disabled="disabled"
|
||||
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'visible' : 'collapse'}"
|
||||
@click="addMeetingTopic"
|
||||
/>
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
icon="el-icon-minus"
|
||||
:disabled="disabled"
|
||||
:style="{visibility: (form.meetingTopicList.length < 2 && index === 0) ? 'collapse' : 'visible'}"
|
||||
@click="removeMeetingTopic(index)"
|
||||
/>
|
||||
</div>
|
||||
<div style="display: flex;align-items: center">
|
||||
<i
|
||||
class="el-icon-bottom move-icon"
|
||||
style="transform: rotate(180deg)"
|
||||
:style="{visibility: (index === 0) ? 'collapse' : 'visible'}"
|
||||
@click="moveOrder(index, 'top')"
|
||||
/>
|
||||
<i
|
||||
class="el-icon-bottom move-icon"
|
||||
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'collapse' : 'visible'}"
|
||||
@click="moveOrder(index, 'bottom')"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</ProcessTitle>
|
||||
<Topics :item="item" :index="index" :rules="rules" :disabled="disabled"></Topics>
|
||||
<Topics :item="item" :index="index" :rules="rules" :disabled="disabled" />
|
||||
</div>
|
||||
<ReceiptDescription isItem v-model="form.commentText" title="回执说明" :disabled="disabled"></ReceiptDescription>
|
||||
<ReceiptDescription v-model="form.commentText" isItem title="回执说明" :disabled="disabled" />
|
||||
</div>
|
||||
<div class="block" style="padding-top: 20px;" v-show="active === '2'">
|
||||
<PersonInfo ref="roleForm" :roleForm="roleForm" :roleRules="roleRules" :disabled="disabled"></PersonInfo>
|
||||
<div v-show="active === '2'" class="block" style="padding-top: 20px;">
|
||||
<PersonInfo ref="roleForm" :roleForm="roleForm" :roleRules="roleRules" :disabled="disabled" />
|
||||
</div>
|
||||
<ApprovalHistory v-if="active === '3'"></ApprovalHistory>
|
||||
<ApprovalHistory v-if="active === '3'" />
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
v-show="!disabled"
|
||||
show-save
|
||||
show-submit
|
||||
:submitLoading="footerLoading"
|
||||
:saveLoading="footerLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
v-show="!disabled"
|
||||
show-save
|
||||
show-submit
|
||||
:submitLoading="footerLoading"
|
||||
:saveLoading="footerLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
/>
|
||||
<loading :loading="loading">数据获取中</loading>
|
||||
</div>
|
||||
</template>
|
||||
@@ -64,17 +93,17 @@
|
||||
import ProcessTitle from '@/pages/processCenter/pages/components/ProcessTitle'
|
||||
import ProcessHeader from '@/pages/processCenter/pages/components//ProcessHeader'
|
||||
import ProcessFooter from '@/pages/processCenter/pages/components//ProcessFooter'
|
||||
import Basic from "./components/Basic";
|
||||
import Classification from "./components/Classification";
|
||||
import Topics from "./components/Topics";
|
||||
import PersonInfo from "./components/PersonInfo";
|
||||
import ReceiptDescription from "@/components/hzwlComponents/ReceiptDescription";
|
||||
import ApprovalHistory from "@/components/hzwlComponents/ApprovalHistory";
|
||||
import Basic from './components/Basic';
|
||||
import Classification from './components/Classification';
|
||||
import Topics from './components/Topics';
|
||||
import PersonInfo from './components/PersonInfo';
|
||||
import ReceiptDescription from '@/components/hzwlComponents/ReceiptDescription';
|
||||
import ApprovalHistory from '@/components/hzwlComponents/ApprovalHistory';
|
||||
|
||||
import { getDicTypeListCode, saveTaskFirst, queryTaskFirst, inboundLiaisonDetail, taskDel, saveTaskForPub } from 'api/process'
|
||||
|
||||
export default {
|
||||
name: "policyMeetings1",
|
||||
name: 'PolicyMeetings1',
|
||||
components: {
|
||||
ProcessTitle,
|
||||
ProcessHeader,
|
||||
@@ -112,49 +141,49 @@ export default {
|
||||
}
|
||||
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 roleForm = {
|
||||
@@ -165,10 +194,10 @@ export default {
|
||||
}
|
||||
const roleRules = {
|
||||
applyUserName: [
|
||||
{required: true, message: '流程发起人不能为空', trigger: ['blur', 'change']}
|
||||
{ required: true, message: '流程发起人不能为空', trigger: [ 'blur', 'change' ] }
|
||||
],
|
||||
jlUserName: [
|
||||
{required: true, message: '审批人不能为空', trigger: ['blur', 'change']}
|
||||
{ required: true, message: '审批人不能为空', trigger: [ 'blur', 'change' ] }
|
||||
]
|
||||
}
|
||||
return {
|
||||
@@ -187,12 +216,12 @@ export default {
|
||||
loading: false
|
||||
}
|
||||
},
|
||||
created() {
|
||||
created () {
|
||||
this.getDicTypeListCode()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
handleTabs(tab) {
|
||||
handleTabs (tab) {
|
||||
this.active = tab
|
||||
},
|
||||
addMeetingTopic () {
|
||||
@@ -204,10 +233,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)
|
||||
@@ -262,7 +291,7 @@ export default {
|
||||
this.reloadForm = false
|
||||
if (mes.form) {
|
||||
// 驳回
|
||||
let mes = JSON.parse(res.mes)
|
||||
const mes = JSON.parse(res.mes)
|
||||
this.$set(this, 'form', mes.form)
|
||||
} else {
|
||||
// 撤回
|
||||
@@ -283,10 +312,10 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
//保存
|
||||
handleSave() {
|
||||
// 保存
|
||||
handleSave () {
|
||||
this.footerLoading = true
|
||||
let _formData = new FormData()
|
||||
const _formData = new FormData()
|
||||
_formData.append('prcType', '29')
|
||||
|
||||
if (this.$route.query.taskIds) {
|
||||
@@ -326,13 +355,17 @@ export default {
|
||||
async submit () {
|
||||
this.footerLoading = true
|
||||
|
||||
this.form.meetingTopicList.forEach((item, index) => {
|
||||
item.sort = index
|
||||
})
|
||||
|
||||
const json = Object.assign(this.form, this.roleForm);
|
||||
let completeTaskQuery = {}
|
||||
if (this.$route.query.taskIds) {
|
||||
// 重新起草
|
||||
completeTaskQuery = {
|
||||
taskIds: this.$route.query.taskIds,
|
||||
userId : this.$store.getters.userInfo.userId,
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
json: JSON.stringify(json)
|
||||
}
|
||||
} else {
|
||||
@@ -351,7 +384,7 @@ export default {
|
||||
|
||||
completeTaskQuery = {
|
||||
taskIds: res.data,
|
||||
userId : this.$store.getters.userInfo.userId,
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
json: JSON.stringify(json)
|
||||
}
|
||||
}
|
||||
@@ -369,9 +402,9 @@ export default {
|
||||
taskDel({ id: this.$route.query.bpnId })
|
||||
}
|
||||
// 流程提交之后,应该流转至待办任务页面
|
||||
await this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
await this.$router.push({ path: '/processCenter?tabsName=ProcessCenter' })
|
||||
},
|
||||
handleSubmit() {
|
||||
handleSubmit () {
|
||||
this.$refs['form'].validate((valid) => {
|
||||
if (valid) {
|
||||
this.$refs['roleForm'].$refs['userForm'].validate((valid) => {
|
||||
@@ -391,7 +424,21 @@ export default {
|
||||
if (res.ok) {
|
||||
this.dict = res.data
|
||||
}
|
||||
}
|
||||
},
|
||||
moveOrder (index, type) {
|
||||
if (type === 'top') {
|
||||
const obj1 = this.form.meetingTopicList[index]
|
||||
const obj2 = this.form.meetingTopicList[index - 1]
|
||||
this.$set(this.form.meetingTopicList, index - 1, obj1)
|
||||
this.$set(this.form.meetingTopicList, index, obj2)
|
||||
}
|
||||
if (type === 'bottom') {
|
||||
const obj1 = this.form.meetingTopicList[index]
|
||||
const obj2 = this.form.meetingTopicList[index + 1]
|
||||
this.$set(this.form.meetingTopicList, index + 1, obj1)
|
||||
this.$set(this.form.meetingTopicList, index, obj2)
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -432,4 +479,11 @@ export default {
|
||||
min-height: 100%;
|
||||
}
|
||||
}
|
||||
.move-icon {
|
||||
font-size: 32px;
|
||||
cursor: pointer
|
||||
}
|
||||
.move-icon:hover {
|
||||
color: #409EFF;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -9,57 +9,70 @@
|
||||
<div class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
|
||||
</div>
|
||||
<div class="content">
|
||||
<el-form v-if="reloadForm"
|
||||
ref="form"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
<el-form
|
||||
v-if="reloadForm"
|
||||
ref="form"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<div v-show="active === '1'">
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<Basic :form="form" :dict="dict" :disabled="disabled"></Basic>
|
||||
<Basic :form="form" :dict="dict" :disabled="disabled" />
|
||||
<ProcessTitle>
|
||||
<template slot="title">会议分类</template>
|
||||
</ProcessTitle>
|
||||
<Classification :form="form" :dict="dict" :disabled="disabled"></Classification>
|
||||
<Classification :form="form" :dict="dict" :disabled="disabled" />
|
||||
<div v-for="(item, index) in form.meetingTopicList">
|
||||
<ProcessTitle>
|
||||
<template slot="title">
|
||||
会议议题
|
||||
<el-button type="primary" size="mini" icon="el-icon-plus" @click="addMeetingTopic" :disabled="disabled"
|
||||
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'visible' : 'collapse'}"></el-button>
|
||||
<el-button type="primary" size="mini" icon="el-icon-minus" @click="removeMeetingTopic(index)" :disabled="disabled"
|
||||
:style="{visibility: (form.meetingTopicList.length < 2 && index === 0) ? 'collapse' : 'visible'}"></el-button>
|
||||
会议议题{{ index + 1 }}
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
icon="el-icon-plus"
|
||||
:disabled="disabled"
|
||||
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'visible' : 'collapse'}"
|
||||
@click="addMeetingTopic"
|
||||
/>
|
||||
<el-button
|
||||
type="primary"
|
||||
size="mini"
|
||||
icon="el-icon-minus"
|
||||
:disabled="disabled"
|
||||
:style="{visibility: (form.meetingTopicList.length < 2 && index === 0) ? 'collapse' : 'visible'}"
|
||||
@click="removeMeetingTopic(index)"
|
||||
/>
|
||||
</template>
|
||||
</ProcessTitle>
|
||||
<Topics :item="item" :index="index" :rules="rules" :disabled="disabled"></Topics>
|
||||
<Topics :item="item" :index="index" :rules="rules" :disabled="disabled" />
|
||||
</div>
|
||||
<ReceiptDescription isItem v-model="form.commentText" prop="commentText" title="审批意见"></ReceiptDescription>
|
||||
<ReceiptDescription v-model="form.commentText" isItem prop="commentText" title="审批意见" />
|
||||
</div>
|
||||
<ApprovalHistory v-if="active === '3'"></ApprovalHistory>
|
||||
<ApprovalHistory v-if="active === '3'" />
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
show-over2
|
||||
show-transfer
|
||||
:submitLoading="footerLoading"
|
||||
:saveLoading="footerLoading"
|
||||
@transfer="handleTransfer"
|
||||
@submit="handleApprove"
|
||||
@over2="handleOver"
|
||||
></ProcessFooter>
|
||||
show-submit
|
||||
show-over2
|
||||
show-transfer
|
||||
:submitLoading="footerLoading"
|
||||
:saveLoading="footerLoading"
|
||||
@transfer="handleTransfer"
|
||||
@submit="handleApprove"
|
||||
@over2="handleOver"
|
||||
/>
|
||||
<!-- 福田全公司选人解决方案 -->
|
||||
<Role-tree
|
||||
check-box
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedRole"
|
||||
:nodeList="nodeList"
|
||||
></Role-tree>
|
||||
check-box
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="drawerModal"
|
||||
:nodeList="nodeList"
|
||||
@checkedRole="checkedRole"
|
||||
/>
|
||||
<loading :loading="loading">数据获取中</loading>
|
||||
</div>
|
||||
</template>
|
||||
@@ -68,16 +81,16 @@
|
||||
ProcessTitle from '@/pages/processCenter/pages/components/ProcessTitle'
|
||||
import ProcessHeader from '@/pages/processCenter/pages/components//ProcessHeader'
|
||||
import ProcessFooter from '@/pages/processCenter/pages/components//ProcessFooter'
|
||||
import Basic from "./components/Basic";
|
||||
import Classification from "./components/Classification";
|
||||
import Topics from "./components/Topics";
|
||||
import PersonInfo from "./components/PersonInfo";
|
||||
import ApprovalHistory from "@/components/hzwlComponents/ApprovalHistory";
|
||||
import ReceiptDescription from "@/components/hzwlComponents/ReceiptDescription";
|
||||
import Basic from './components/Basic';
|
||||
import Classification from './components/Classification';
|
||||
import Topics from './components/Topics';
|
||||
import PersonInfo from './components/PersonInfo';
|
||||
import ApprovalHistory from '@/components/hzwlComponents/ApprovalHistory';
|
||||
import ReceiptDescription from '@/components/hzwlComponents/ReceiptDescription';
|
||||
|
||||
import { getDicTypeListCode, inboundLiaisonDetail, changeAssigneeNew, processCreateMeeting, completeTask } from 'api/process'
|
||||
export default {
|
||||
name: "policyMeetings2",
|
||||
name: 'PolicyMeetings2',
|
||||
components: {
|
||||
ProcessTitle,
|
||||
ProcessHeader,
|
||||
@@ -115,49 +128,49 @@ export default {
|
||||
}
|
||||
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 roleForm = {
|
||||
@@ -168,10 +181,10 @@ export default {
|
||||
}
|
||||
const roleRules = {
|
||||
applyUserName: [
|
||||
{required: true, message: '流程发起人不能为空', trigger: ['blur', 'change']}
|
||||
{ required: true, message: '流程发起人不能为空', trigger: [ 'blur', 'change' ] }
|
||||
],
|
||||
jlUserName: [
|
||||
{required: true, message: '审批人不能为空', trigger: ['blur', 'change']}
|
||||
{ required: true, message: '审批人不能为空', trigger: [ 'blur', 'change' ] }
|
||||
]
|
||||
}
|
||||
return {
|
||||
@@ -193,12 +206,12 @@ export default {
|
||||
loading: false
|
||||
}
|
||||
},
|
||||
created() {
|
||||
created () {
|
||||
this.getDicTypeListCode()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
handleTabs(tab) {
|
||||
handleTabs (tab) {
|
||||
this.active = tab
|
||||
},
|
||||
addMeetingTopic () {
|
||||
@@ -210,10 +223,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)
|
||||
@@ -221,7 +234,7 @@ export default {
|
||||
})
|
||||
this.form.meetingTopicList = [ ...res ]
|
||||
},
|
||||
getData() {
|
||||
getData () {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.loading = true
|
||||
inboundLiaisonDetail({
|
||||
@@ -242,7 +255,7 @@ export default {
|
||||
})
|
||||
})
|
||||
},
|
||||
handleTransfer() {
|
||||
handleTransfer () {
|
||||
this.drawerModal = true
|
||||
this.drawerTitle = '转办处理人'
|
||||
},
|
||||
@@ -250,25 +263,25 @@ export default {
|
||||
checkedRole (data) {
|
||||
changeAssigneeNew({
|
||||
taskId: this.$route.query.taskIds, // 任务id
|
||||
userId:this.$store.getters.userInfo.userId, // 委托人
|
||||
userId: this.$store.getters.userInfo.userId, // 委托人
|
||||
assignee: data[0].id, // 被委托人
|
||||
pId: this.$route.query.prcId, // 流程实例
|
||||
}).then(res => {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
this.$router.push({ path: '/processCenter?tabsName=ProcessCenter' })
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
handleOver(){
|
||||
handleOver () {
|
||||
// 驳回
|
||||
this.form.approvalOpinion = 1
|
||||
this.handleSubmit()
|
||||
},
|
||||
handleApprove(){
|
||||
handleApprove () {
|
||||
// 通过
|
||||
this.form.approvalOpinion = 0
|
||||
this.handleSubmit()
|
||||
@@ -287,7 +300,7 @@ export default {
|
||||
this.rules = { ...this.rules }
|
||||
},
|
||||
// 提交
|
||||
handleSubmit() {
|
||||
handleSubmit () {
|
||||
this.addRule()
|
||||
this.$refs['form'].validate((valid) => {
|
||||
if (valid) {
|
||||
@@ -295,16 +308,16 @@ export default {
|
||||
const json = JSON.stringify(this.form);
|
||||
const query = {
|
||||
taskId: this.$route.query.taskIds,
|
||||
userId:this.$store.getters.userInfo.userId,
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
json: json
|
||||
}
|
||||
this.$http._post('lawss/activiti/completeTask', query).then(res => {
|
||||
if (res.success) {
|
||||
if(this.form.approvalOpinion === 1){
|
||||
this.$message.warning("驳回成功")
|
||||
if(this.form.approvalOpinion === 1) {
|
||||
this.$message.warning('驳回成功')
|
||||
this.footerLoading = false
|
||||
// 流程提交之后,应该流转至待办任务页面
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
this.$router.push({ path: '/processCenter?tabsName=ProcessCenter' })
|
||||
}else{
|
||||
this.processCreate(json)
|
||||
}
|
||||
@@ -315,7 +328,8 @@ export default {
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请检查基础信息表单是否填写完整')
|
||||
}})
|
||||
}
|
||||
})
|
||||
},
|
||||
// 流程入库
|
||||
processCreate (json) {
|
||||
@@ -325,7 +339,7 @@ export default {
|
||||
if (res.result === '操作成功' || res.data === '入库成功') {
|
||||
this.$message.success(res.data)
|
||||
setTimeout(() => {
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
this.$router.push({ path: '/processCenter?tabsName=ProcessCenter' })
|
||||
}, 100)
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
|
||||
+202
-122
@@ -6,159 +6,221 @@
|
||||
<div class="prc-content-border">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="12">
|
||||
|
||||
<SelectMultipleFormItem label="1级政策分类"
|
||||
prop="lawsTypeFirstLevel"
|
||||
v-model="form.lawsTypeFirstLevel"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsTypeFirstLevelOptions || []">
|
||||
</SelectMultipleFormItem>
|
||||
<SelectMultipleFormItem
|
||||
v-model="form.lawsTypeFirstLevel"
|
||||
label="1级政策分类"
|
||||
prop="lawsTypeFirstLevel"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsTypeFirstLevelOptions || []"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<SelectMultipleFormItem label="2级政策分类"
|
||||
prop="lawsTypeSecondLevel"
|
||||
v-model="form.lawsTypeSecondLevel"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsTypeSecondLevelOptions || []">
|
||||
</SelectMultipleFormItem>
|
||||
<SelectMultipleFormItem
|
||||
v-model="form.lawsTypeSecondLevel"
|
||||
label="2级政策分类"
|
||||
prop="lawsTypeSecondLevel"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsTypeSecondLevelOptions || []"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<SelectMultipleFormItem label="3级政策分类"
|
||||
prop="lawsTypeThirdLevel"
|
||||
v-model="form.lawsTypeThirdLevel"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsTypeThirdLevelOptions || []">
|
||||
</SelectMultipleFormItem>
|
||||
<SelectMultipleFormItem
|
||||
v-model="form.lawsTypeThirdLevel"
|
||||
label="3级政策分类"
|
||||
prop="lawsTypeThirdLevel"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsTypeThirdLevelOptions || []"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<SelectMultipleFormItem label="4级政策分类"
|
||||
prop="lawsTypeFourthLevel"
|
||||
v-model="form.lawsTypeFourthLevel"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsTypeFourthLevelOptions || []">
|
||||
</SelectMultipleFormItem>
|
||||
<SelectMultipleFormItem
|
||||
v-model="form.lawsTypeFourthLevel"
|
||||
label="4级政策分类"
|
||||
prop="lawsTypeFourthLevel"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsTypeFourthLevelOptions || []"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<InputFormItem label="政策名称"
|
||||
prop="lawsName"
|
||||
v-model="form.lawsName"
|
||||
:disabled="disabled">
|
||||
</InputFormItem>
|
||||
<InputFormItem
|
||||
v-model="form.lawsName"
|
||||
label="政策名称"
|
||||
prop="lawsName"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<InputFormItem label="英文名称"
|
||||
prop="lawsEnName"
|
||||
v-model="form.lawsEnName"
|
||||
:disabled="disabled">
|
||||
<el-button :disabled="disabled"
|
||||
type="primary"
|
||||
style="height: 40px;margin-top: 5px;"
|
||||
@click="handleSearch">
|
||||
<InputFormItem
|
||||
v-model="form.lawsEnName"
|
||||
label="英文名称"
|
||||
prop="lawsEnName"
|
||||
:disabled="disabled"
|
||||
>
|
||||
<el-button
|
||||
:disabled="disabled"
|
||||
type="primary"
|
||||
style="height: 40px;margin-top: 5px;"
|
||||
@click="handleSearch"
|
||||
>
|
||||
根据编号、名称、标准状态查询
|
||||
</el-button>
|
||||
</InputFormItem>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<InputFormItem label="政策文号"
|
||||
prop="lawsNo"
|
||||
v-model="form.lawsNo"
|
||||
:disabled="disabled">
|
||||
</InputFormItem>
|
||||
<InputFormItem
|
||||
v-model="form.lawsNo"
|
||||
label="政策文号"
|
||||
prop="lawsNo"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<DatePickerFormItem label="发文日期"
|
||||
prop="issueTime"
|
||||
<DatePickerFormItem
|
||||
v-model="form.issueTime"
|
||||
label="发文日期"
|
||||
prop="issueTime"
|
||||
:disabled="disabled"
|
||||
@input="issueTimeChange">
|
||||
</DatePickerFormItem>
|
||||
@input="issueTimeChange"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<InputFormItem label="发文单位"
|
||||
prop="issueCompany"
|
||||
v-model="form.issueCompany"
|
||||
:disabled="disabled">
|
||||
</InputFormItem>
|
||||
<InputFormItem
|
||||
v-model="form.issueCompany"
|
||||
label="发文单位"
|
||||
prop="issueCompany"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<DataRangePickerFormItem label="征集意见周期"
|
||||
prop="commentCycleDate"
|
||||
:startTime.sync="form.commentCycleStart"
|
||||
:endTime.sync="form.commentCycleEnd"
|
||||
:disabled="disabled">
|
||||
</DataRangePickerFormItem>
|
||||
<DataRangePickerFormItem
|
||||
label="征集意见周期"
|
||||
prop="commentCycleDate"
|
||||
:startTime.sync="form.commentCycleStart"
|
||||
:endTime.sync="form.commentCycleEnd"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<SelectFormItem label="标准状态"
|
||||
prop="lawsTextState"
|
||||
v-model="form.lawsTextState"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsTextStateOptions || []">
|
||||
</SelectFormItem>
|
||||
<SelectFormItem
|
||||
v-model="form.lawsTextState"
|
||||
label="政策状态"
|
||||
prop="lawsTextState"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsTextStateOptions || []"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<SelectMultipleFormItem label="适用车型"
|
||||
prop="lawsSycx"
|
||||
<SelectMultipleFormItem
|
||||
v-model="form.lawsSycx"
|
||||
label="适用车型"
|
||||
prop="lawsSycx"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsSycxOptions || []">
|
||||
</SelectMultipleFormItem>
|
||||
:options="dict.lawsSycxOptions || []"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<SelectFormItem label="是否纳入认证清单"
|
||||
prop="isRelateAccess"
|
||||
v-model="form.isRelateAccess"
|
||||
:disabled="disabled"
|
||||
:options="isRelateAccessOptions || []">
|
||||
</SelectFormItem>
|
||||
<SelectFormItem
|
||||
v-model="form.isRelateAccess"
|
||||
label="是否纳入认证清单"
|
||||
prop="isRelateAccess"
|
||||
:disabled="disabled"
|
||||
:options="isRelateAccessOptions || []"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<SelectFormItem label="年度"
|
||||
prop="lawsYear"
|
||||
v-model="form.lawsYear"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsYearOptions || []">
|
||||
</SelectFormItem>
|
||||
<SelectFormItem
|
||||
v-model="form.lawsYear"
|
||||
label="年度"
|
||||
prop="lawsYear"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsYearOptions || []"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<InputFormItem label="福田转发通知文号"
|
||||
prop="lawsNotisyncNum"
|
||||
v-model="form.lawsNotisyncNum"
|
||||
:disabled="disabled">
|
||||
</InputFormItem>
|
||||
<InputFormItem
|
||||
v-model="form.lawsNotisyncNum"
|
||||
label="福田转发通知文号"
|
||||
prop="lawsNotisyncNum"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<InputFormItem label="通知文号链接"
|
||||
prop="notisyncNumLink"
|
||||
v-model="form.notisyncNumLink"
|
||||
:disabled="disabled">
|
||||
</InputFormItem>
|
||||
<InputFormItem
|
||||
v-model="form.notisyncNumLink"
|
||||
label="通知文号链接"
|
||||
prop="notisyncNumLink"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<InputFormItem label="信息简报"
|
||||
prop="lawsBulletin"
|
||||
v-model="form.lawsBulletin"
|
||||
:disabled="disabled">
|
||||
</InputFormItem>
|
||||
<InputFormItem
|
||||
v-model="form.lawsBulletin"
|
||||
label="信息月报"
|
||||
prop="lawsBulletin"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<SelectMultipleFormItem label="标签"
|
||||
prop="lawsLabel"
|
||||
v-model="form.lawsLabel"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsLabelOptions || []">
|
||||
</SelectMultipleFormItem>
|
||||
<InputFormItem
|
||||
v-model="form.referenceNews"
|
||||
label="参考消息"
|
||||
prop="referenceNews"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<InputFormItem label="备注(最终政策发布)"
|
||||
prop="lawsRemark"
|
||||
v-model="form.lawsRemark"
|
||||
:disabled="disabled">
|
||||
</InputFormItem>
|
||||
<SelectMultipleFormItem
|
||||
v-model="form.lawsLabel"
|
||||
label="标签"
|
||||
prop="lawsLabel"
|
||||
:disabled="disabled"
|
||||
:options="dict.lawsLabelOptions || []"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<TextareaFormItem
|
||||
v-model="form.lawsKeyPoint"
|
||||
label="政策要点"
|
||||
prop="lawsKeyPoint"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<TextareaFormItem
|
||||
v-model="form.lawsRemark"
|
||||
label="备注"
|
||||
prop="lawsRemark"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<InputFormItem
|
||||
v-model="form.lawsOriginalLink"
|
||||
label="政策原文链接"
|
||||
prop="lawsOriginalLink"
|
||||
:disabled="disabled"
|
||||
/>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="政策体系" prop="menuName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
:value="form.menuName"
|
||||
placeholder="请选择政策体系"
|
||||
clearable
|
||||
:disabled="disabled"
|
||||
@click.native="openChoose"
|
||||
@clear="handleClear"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<SearchResult ref="SearchResultRef" :dict="dict" @dragIn="dragIn"></SearchResult>
|
||||
<SearchResult ref="SearchResultRef" :dict="dict" @dragIn="dragIn" />
|
||||
<PolicyTree ref="PolicyTree" @choose="handleChoose" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -171,9 +233,11 @@ import InputFormItem from '@/components/hzwlComponents/InputFormItem'
|
||||
import DatePickerFormItem from '@/components/hzwlComponents/DatePickerFormItem'
|
||||
import DataRangePickerFormItem from '@/components/hzwlComponents/DataRangePickerFormItem'
|
||||
import SelectMultipleFormItem from '@/components/hzwlComponents/SelectMultipleFormItem'
|
||||
import TextareaFormItem from '@/components/hzwlComponents/TextareaFormItem';
|
||||
import PolicyTree from '@/components/hzwlComponents/policy/PolicyTree'
|
||||
import SearchResult from './SearchResult'
|
||||
export default {
|
||||
name: "Basic",
|
||||
name: 'Basic',
|
||||
components: {
|
||||
ProcessTitle,
|
||||
SelectFormItem,
|
||||
@@ -181,22 +245,10 @@ export default {
|
||||
DatePickerFormItem,
|
||||
DataRangePickerFormItem,
|
||||
SelectMultipleFormItem,
|
||||
TextareaFormItem,
|
||||
PolicyTree,
|
||||
SearchResult
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
isRelateAccessOptions: [
|
||||
{
|
||||
label: '是',
|
||||
value: '1'
|
||||
},
|
||||
{
|
||||
label: '否',
|
||||
value: '2'
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
props: {
|
||||
form: {
|
||||
type: Object,
|
||||
@@ -211,6 +263,20 @@ export default {
|
||||
required: true
|
||||
}
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
isRelateAccessOptions: [
|
||||
{
|
||||
label: '是',
|
||||
value: '1'
|
||||
},
|
||||
{
|
||||
label: '否',
|
||||
value: '2'
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
issueTimeChange (val) {
|
||||
const year = moment(val).format('YYYY')
|
||||
@@ -221,6 +287,20 @@ export default {
|
||||
},
|
||||
dragIn (form) {
|
||||
this.$emit('dragIn', form)
|
||||
},
|
||||
openChoose (e) {
|
||||
if (e.target.className === 'el-input__icon el-icon-circle-close el-input__clear') {
|
||||
return;
|
||||
}
|
||||
this.$refs.PolicyTree.open(this.form.menuId)
|
||||
},
|
||||
handleChoose (data) {
|
||||
this.$set(this.form, 'menuName', data.menuName)
|
||||
this.$set(this.form, 'menuId', data.id)
|
||||
},
|
||||
handleClear () {
|
||||
this.$set(this.form, 'menuName', '')
|
||||
this.$set(this.form, 'menuId', '')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,7 +10,8 @@
|
||||
<div v-else class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
|
||||
</div>
|
||||
<div class="content">
|
||||
<el-form v-if="reloadForm"
|
||||
<el-form
|
||||
v-if="reloadForm"
|
||||
ref="form"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
@@ -18,17 +19,17 @@
|
||||
label-width="210px"
|
||||
>
|
||||
<div v-show="active === '1'">
|
||||
<Basic :form="form" :dict="dict" @dragIn="dragIn" :disabled="disabled"></Basic>
|
||||
<EffectiveDate :form="form" :dict="dict" :disabled="disabled"></EffectiveDate>
|
||||
<TextInfo :form="form" :dict="dict" :disabled="disabled"></TextInfo>
|
||||
<Range :form="form" :dict="dict" :disabled="disabled"></Range>
|
||||
<RelatesInfo :form="form" :dict="dict" :disabled="disabled"></RelatesInfo>
|
||||
<ReceiptDescription isItem v-model="form.commentText" title="回执说明" :disabled="disabled"></ReceiptDescription>
|
||||
<Basic :form="form" :dict="dict" :disabled="disabled" @dragIn="dragIn" />
|
||||
<EffectiveDate :form="form" :dict="dict" :disabled="disabled" />
|
||||
<TextInfo :form="form" :dict="dict" :disabled="disabled" />
|
||||
<Range :form="form" :dict="dict" :disabled="disabled" />
|
||||
<RelatesInfo :form="form" :dict="dict" :disabled="disabled" />
|
||||
<ReceiptDescription v-model="form.commentText" isItem title="回执说明" :disabled="disabled" />
|
||||
</div>
|
||||
<div class="block" style="padding-top: 20px;" v-show="active === '2'">
|
||||
<PersonInfo ref="roleForm" :roleForm="roleForm" :roleRules="roleRules" :disabled="disabled"></PersonInfo>
|
||||
<div v-show="active === '2'" class="block" style="padding-top: 20px;">
|
||||
<PersonInfo ref="roleForm" :roleForm="roleForm" :roleRules="roleRules" :disabled="disabled" />
|
||||
</div>
|
||||
<ApprovalHistory v-if="active === '3'"></ApprovalHistory>
|
||||
<ApprovalHistory v-if="active === '3'" />
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
@@ -39,8 +40,7 @@
|
||||
:saveLoading="footerLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
/>
|
||||
<loading :loading="loading">数据获取中</loading>
|
||||
</div>
|
||||
</template>
|
||||
@@ -49,19 +49,19 @@
|
||||
import ProcessHeader from '@/pages/processCenter/pages/components/ProcessHeader'
|
||||
import ProcessFooter from '@/pages/processCenter/pages/components/ProcessFooter'
|
||||
|
||||
import Basic from "./components/Basic";
|
||||
import EffectiveDate from "./components/EffectiveDate";
|
||||
import TextInfo from "./components/TextInfo";
|
||||
import Range from "./components/Range";
|
||||
import RelatesInfo from "./components/RelatesInfo";
|
||||
import ReceiptDescription from "@/components/hzwlComponents/ReceiptDescription";
|
||||
import PersonInfo from "./components/PersonInfo";
|
||||
import Basic from './components/Basic';
|
||||
import EffectiveDate from './components/EffectiveDate';
|
||||
import TextInfo from './components/TextInfo';
|
||||
import Range from './components/Range';
|
||||
import RelatesInfo from './components/RelatesInfo';
|
||||
import ReceiptDescription from '@/components/hzwlComponents/ReceiptDescription';
|
||||
import PersonInfo from './components/PersonInfo';
|
||||
|
||||
import {saveTaskFirst, queryTaskFirst, taskDel, inboundLiaisonDetail, saveTaskForPub} from "api/process";
|
||||
import ApprovalHistory from "@/components/hzwlComponents/ApprovalHistory";
|
||||
import { saveTaskFirst, queryTaskFirst, taskDel, inboundLiaisonDetail, saveTaskForPub } from 'api/process';
|
||||
import ApprovalHistory from '@/components/hzwlComponents/ApprovalHistory';
|
||||
|
||||
export default {
|
||||
name: "zrckStep1",
|
||||
name: 'ZrckStep1',
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
@@ -86,8 +86,8 @@ export default {
|
||||
lawsNo: '',
|
||||
issueTime: '',
|
||||
issueCompany: '',
|
||||
commentCycleStart: '',// 征集意见周期
|
||||
commentCycleEnd: '',// 征集意见周期
|
||||
commentCycleStart: '', // 征集意见周期
|
||||
commentCycleEnd: '', // 征集意见周期
|
||||
lawsTextState: '',
|
||||
lawsSycx: '',
|
||||
isRelateAccess: '2',
|
||||
@@ -95,8 +95,13 @@ export default {
|
||||
lawsNotisyncNum: '',
|
||||
NotisyncNumLink: '',
|
||||
lawsBulletin: '',
|
||||
referenceNews: '',
|
||||
lawsLabel: '',
|
||||
lawsRemark: '',
|
||||
lawsKeyPoint: '',
|
||||
lawsOriginalLink: '',
|
||||
menuId: '',
|
||||
menuName: '',
|
||||
// 实施日期
|
||||
SSRQLAWS: '',
|
||||
XRZSSRQLAWS: '',
|
||||
@@ -125,7 +130,7 @@ export default {
|
||||
GLWJLAWSName: '',
|
||||
YYBZZCLAWS: '',
|
||||
// 回执说明
|
||||
commentText:''
|
||||
commentText: ''
|
||||
}
|
||||
const roleForm = {
|
||||
jlUserId: '',
|
||||
@@ -136,103 +141,130 @@ export default {
|
||||
// 完整校验
|
||||
const moreSarLawsStandRules = {
|
||||
lawsTypeFirstLevel: [
|
||||
{required: true, message: '1级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '1级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeSecondLevel: [
|
||||
{required: true, message: '2级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '2级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeThirdLevel: [
|
||||
{required: true, message: '3级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '3级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeFourthLevel: [
|
||||
{required: true, message: '4级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '4级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsName: [
|
||||
{required: true, message: '政策名称不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '政策名称不能超过500个字符', trigger: 'change'},
|
||||
{validator: this.verify.checkSpecialCharacterOftags, trigger: 'change'}
|
||||
{ required: true, message: '政策名称不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '政策名称不能超过500个字符', trigger: 'change' },
|
||||
{ validator: this.verify.checkSpecialCharacterOftags, trigger: 'change' }
|
||||
],
|
||||
lawsEnName: [
|
||||
{type: 'string', max: 500, message: '英文名称不能超过500个字符', trigger: 'change'},
|
||||
{validator: this.verify.valiateEnName, trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '英文名称不能超过500个字符', trigger: 'change' },
|
||||
{ validator: this.verify.valiateEnName, trigger: 'change' }
|
||||
],
|
||||
lawsNo: [
|
||||
{type: 'string', max: 100, message: '政策文号不能超过100个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 100, message: '政策文号不能超过100个字符', trigger: 'change' }
|
||||
],
|
||||
issueTime: [
|
||||
{required: true, message: '发文日期不能为空', trigger: 'change'},
|
||||
{ required: true, message: '发文日期不能为空', trigger: 'change' },
|
||||
],
|
||||
issueCompany: [
|
||||
{required: true, type: 'string', message: '发文单位不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 100, message: '发文单位不能超过100个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '发文单位不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 100, message: '发文单位不能超过100个字符', trigger: 'change' }
|
||||
],
|
||||
lawsTextState: [
|
||||
{required: true, message: '标准状态不能为空', trigger: 'change'}
|
||||
{ required: true, message: '标准状态不能为空', trigger: 'change' }
|
||||
],
|
||||
isRelateAccess: [
|
||||
{required: true, message: '是否纳入认证清单不能为空', trigger: 'change'}
|
||||
{ required: true, message: '是否纳入认证清单不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsYear: [
|
||||
{required: true, message: '年度不能为空', trigger: 'change'}
|
||||
{ required: true, message: '年度不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsNotisyncNum: [
|
||||
{type: 'string', max: 500, message: '福田转发通知文号不能超过500个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '福田转发通知文号不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
lawsRemark: [
|
||||
{type: 'string', max: 500, message: '备注不能超过500个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '备注不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
SSRQLAWS: [
|
||||
{required: true, message: '实施日期不能为空', trigger: 'change'}
|
||||
{ required: true, message: '实施日期不能为空', trigger: 'change' }
|
||||
],
|
||||
CYSDLAWS: [
|
||||
{required: true, message: '我司参与深度不能为空', trigger: 'change'}
|
||||
{ required: true, message: '我司参与深度不能为空', trigger: 'change' }
|
||||
],
|
||||
referenceNews: [
|
||||
{ type: 'string', max: 500, message: '参考消息不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
lawsKeyPoint: [
|
||||
{ type: 'string', max: 500, message: '政策要点不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
lawsOriginalLink: [
|
||||
{ type: 'string', max: 500, message: '政策原文链接不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
menuName: [
|
||||
{ required: true, message: '政策体系不能为空', trigger: 'change' }
|
||||
],
|
||||
}
|
||||
// 认证清单为否 的校验
|
||||
const littleSarLawsStandRules = {
|
||||
lawsTypeFirstLevel: [
|
||||
{required: true, message: '1级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '1级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeSecondLevel: [
|
||||
{required: true, message: '2级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '2级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeThirdLevel: [
|
||||
{required: true, message: '3级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '3级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeFourthLevel: [
|
||||
{required: true, message: '4级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '4级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsName: [
|
||||
{required: true, message: '政策名称不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '政策名称不能超过500个字符', trigger: 'change'},
|
||||
{validator: this.verify.checkSpecialCharacterOftags, trigger: 'change'}
|
||||
{ required: true, message: '政策名称不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '政策名称不能超过500个字符', trigger: 'change' },
|
||||
{ validator: this.verify.checkSpecialCharacterOftags, trigger: 'change' }
|
||||
],
|
||||
lawsEnName: [
|
||||
{type: 'string', max: 500, message: '英文名称不能超过500个字符', trigger: 'change'},
|
||||
{validator: this.verify.valiateEnName, trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '英文名称不能超过500个字符', trigger: 'change' },
|
||||
{ validator: this.verify.valiateEnName, trigger: 'change' }
|
||||
],
|
||||
lawsNo: [
|
||||
{type: 'string', max: 100, message: '政策文号不能超过100个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 100, message: '政策文号不能超过100个字符', trigger: 'change' }
|
||||
],
|
||||
issueCompany: [
|
||||
{type: 'string', max: 100, message: '发文单位不能超过100个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 100, message: '发文单位不能超过100个字符', trigger: 'change' }
|
||||
],
|
||||
lawsNotisyncNum: [
|
||||
{type: 'string', max: 500, message: '福田转发通知文号不能超过500个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '福田转发通知文号不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
lawsRemark: [
|
||||
{type: 'string', max: 500, message: '备注不能超过500个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '备注不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
lawsBulletin: [
|
||||
{ type: 'string', max: 500, message: '信息月报不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
isRelateAccess: [
|
||||
{required: true, message: '是否纳入认证清单不能为空', trigger: 'change'}
|
||||
{ required: true, message: '是否纳入认证清单不能为空', trigger: 'change' }
|
||||
],
|
||||
referenceNews: [
|
||||
{ type: 'string', max: 500, message: '参考消息不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
lawsKeyPoint: [
|
||||
{ type: 'string', max: 500, message: '政策要点不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
lawsOriginalLink: [
|
||||
{ type: 'string', max: 500, message: '政策原文链接不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
menuName: [
|
||||
{ required: true, message: '政策体系不能为空', trigger: 'change' }
|
||||
],
|
||||
}
|
||||
const roleRules = {
|
||||
prcCreateUserName: [
|
||||
{required: true, message: '流程发起人不能为空', trigger: ['blur', 'change']}
|
||||
{ required: true, message: '流程发起人不能为空', trigger: [ 'blur', 'change' ] }
|
||||
],
|
||||
jlUserName: [
|
||||
{required: true, message: '政策业务经理不能为空', trigger: ['blur', 'change']}
|
||||
{ required: true, message: '政策业务经理不能为空', trigger: [ 'blur', 'change' ] }
|
||||
]
|
||||
}
|
||||
return {
|
||||
@@ -254,19 +286,19 @@ export default {
|
||||
loading: false,
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getDicTypeListCode()
|
||||
this.resolveRules()
|
||||
this.getData()
|
||||
},
|
||||
watch: {
|
||||
'form.isRelateAccess' () {
|
||||
// 移除校验结果重新生成校验
|
||||
this.resolveRules()
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getDicTypeListCode()
|
||||
this.resolveRules()
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
handleTabs(tab) {
|
||||
handleTabs (tab) {
|
||||
this.active = tab
|
||||
},
|
||||
resolveRules () {
|
||||
@@ -325,13 +357,13 @@ export default {
|
||||
}
|
||||
|
||||
// 根据草稿查询流程详情
|
||||
if(this.$route.query.bpnId){
|
||||
if(this.$route.query.bpnId) {
|
||||
this.loading = true
|
||||
queryTaskFirst({
|
||||
bpnId: this.$route.query.bpnId
|
||||
}).then(res => {
|
||||
this.reloadForm = false
|
||||
let mes = JSON.parse(res.mes)
|
||||
const mes = JSON.parse(res.mes)
|
||||
if (mes.form) {
|
||||
// 驳回
|
||||
this.$set(this, 'form', mes.form)
|
||||
@@ -362,10 +394,10 @@ export default {
|
||||
this.reloadForm = true
|
||||
})
|
||||
},
|
||||
//保存
|
||||
handleSave() {
|
||||
// 保存
|
||||
handleSave () {
|
||||
this.footerLoading = true
|
||||
let _formData = new FormData()
|
||||
const _formData = new FormData()
|
||||
_formData.append('prcType', 'laws1')
|
||||
if (this.$route.query.taskIds) {
|
||||
// 重新起草保存
|
||||
@@ -411,7 +443,7 @@ export default {
|
||||
// 重新起草
|
||||
completeTaskQuery = {
|
||||
taskIds: this.$route.query.taskIds,
|
||||
userId : this.$store.getters.userInfo.userId,
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
json: JSON.stringify(json)
|
||||
}
|
||||
} else {
|
||||
@@ -431,7 +463,7 @@ export default {
|
||||
|
||||
completeTaskQuery = {
|
||||
taskIds: res.data,
|
||||
userId : this.$store.getters.userInfo.userId,
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
json: JSON.stringify(json)
|
||||
}
|
||||
}
|
||||
@@ -449,9 +481,9 @@ export default {
|
||||
taskDel({ id: this.$route.query.bpnId })
|
||||
}
|
||||
// 流程提交之后,应该流转至待办任务页面
|
||||
await this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
await this.$router.push({ path: '/processCenter?tabsName=ProcessCenter' })
|
||||
},
|
||||
handleSubmit() {
|
||||
handleSubmit () {
|
||||
this.$refs['form'].validate((valid) => {
|
||||
if (valid) {
|
||||
this.$refs['roleForm'].$refs['userForm'].validate((valid) => {
|
||||
|
||||
@@ -9,43 +9,43 @@
|
||||
<div class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
|
||||
</div>
|
||||
<div class="content">
|
||||
<el-form v-if="reloadForm"
|
||||
ref="form"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
<el-form
|
||||
v-if="reloadForm"
|
||||
ref="form"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<div v-show="active === '1'">
|
||||
<Basic :form="form" :dict="dict" :disabled="disabled"></Basic>
|
||||
<EffectiveDate :form="form" :dict="dict" :disabled="disabled"></EffectiveDate>
|
||||
<TextInfo :form="form" :dict="dict" :disabled="disabled"></TextInfo>
|
||||
<Range :form="form" :dict="dict" :disabled="disabled"></Range>
|
||||
<RelatesInfo :form="form" :dict="dict" :disabled="disabled"></RelatesInfo>
|
||||
<ReceiptDescription isItem v-model="form.commentText" prop="commentText" title="审批意见"></ReceiptDescription>
|
||||
<Basic :form="form" :dict="dict" :disabled="disabled" />
|
||||
<EffectiveDate :form="form" :dict="dict" :disabled="disabled" />
|
||||
<TextInfo :form="form" :dict="dict" :disabled="disabled" />
|
||||
<Range :form="form" :dict="dict" :disabled="disabled" />
|
||||
<RelatesInfo :form="form" :dict="dict" :disabled="disabled" />
|
||||
<ReceiptDescription v-model="form.commentText" isItem prop="commentText" title="审批意见" />
|
||||
</div>
|
||||
<ApprovalHistory v-if="active === '3'"></ApprovalHistory>
|
||||
<ApprovalHistory v-if="active === '3'" />
|
||||
</el-form>
|
||||
</div>
|
||||
<ProcessFooter
|
||||
show-submit
|
||||
show-over2
|
||||
show-transfer
|
||||
:submitLoading="footerLoading"
|
||||
:saveLoading="footerLoading"
|
||||
@transfer="handleTransfer"
|
||||
@submit="handleApprove"
|
||||
@over2="handleOver"
|
||||
>
|
||||
</ProcessFooter>
|
||||
show-submit
|
||||
show-over2
|
||||
show-transfer
|
||||
:submitLoading="footerLoading"
|
||||
:saveLoading="footerLoading"
|
||||
@transfer="handleTransfer"
|
||||
@submit="handleApprove"
|
||||
@over2="handleOver"
|
||||
/>
|
||||
<!-- 福田全公司选人解决方案 -->
|
||||
<Role-tree
|
||||
check-box
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="drawerModal"
|
||||
@checkedRole="checkedRole"
|
||||
:nodeList="nodeList"
|
||||
></Role-tree>
|
||||
check-box
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="drawerModal"
|
||||
:nodeList="nodeList"
|
||||
@checkedRole="checkedRole"
|
||||
/>
|
||||
<loading :loading="loading">数据获取中</loading>
|
||||
</div>
|
||||
</template>
|
||||
@@ -54,19 +54,19 @@
|
||||
import ProcessHeader from '@/pages/processCenter/pages/components//ProcessHeader'
|
||||
import ProcessFooter from '@/pages/processCenter/pages/components//ProcessFooter'
|
||||
|
||||
import Basic from "./components/Basic";
|
||||
import EffectiveDate from "./components/EffectiveDate";
|
||||
import TextInfo from "./components/TextInfo";
|
||||
import Range from "./components/Range";
|
||||
import RelatesInfo from "./components/RelatesInfo";
|
||||
import ReceiptDescription from "@/components/hzwlComponents/ReceiptDescription";
|
||||
import PersonInfo from "./components/PersonInfo";
|
||||
import ApprovalHistory from "@/components/hzwlComponents/ApprovalHistory";
|
||||
import Basic from './components/Basic';
|
||||
import EffectiveDate from './components/EffectiveDate';
|
||||
import TextInfo from './components/TextInfo';
|
||||
import Range from './components/Range';
|
||||
import RelatesInfo from './components/RelatesInfo';
|
||||
import ReceiptDescription from '@/components/hzwlComponents/ReceiptDescription';
|
||||
import PersonInfo from './components/PersonInfo';
|
||||
import ApprovalHistory from '@/components/hzwlComponents/ApprovalHistory';
|
||||
|
||||
import {inboundLiaisonDetail, processCreateLaws, changeAssigneeNew, completeTask} from 'api/process'
|
||||
import { inboundLiaisonDetail, processCreateLaws, changeAssigneeNew, completeTask } from 'api/process'
|
||||
|
||||
export default {
|
||||
name: "zrckStep2",
|
||||
name: 'ZrckStep2',
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
@@ -91,8 +91,8 @@ export default {
|
||||
lawsNo: '',
|
||||
issueTime: '',
|
||||
issueCompany: '',
|
||||
commentCycleStart: '',// 征集意见周期
|
||||
commentCycleEnd: '',// 征集意见周期
|
||||
commentCycleStart: '', // 征集意见周期
|
||||
commentCycleEnd: '', // 征集意见周期
|
||||
lawsTextState: '',
|
||||
lawsSycx: '',
|
||||
isRelateAccess: '2',
|
||||
@@ -100,8 +100,13 @@ export default {
|
||||
lawsNotisyncNum: '',
|
||||
NotisyncNumLink: '',
|
||||
lawsBulletin: '',
|
||||
referenceNews: '',
|
||||
lawsLabel: '',
|
||||
lawsRemark: '',
|
||||
lawsKeyPoint: '',
|
||||
lawsOriginalLink: '',
|
||||
menuId: '',
|
||||
menuName: '',
|
||||
// 实施日期
|
||||
SSRQLAWS: '',
|
||||
XRZSSRQLAWS: '',
|
||||
@@ -130,7 +135,7 @@ export default {
|
||||
GLWJLAWSName: '',
|
||||
YYBZZCLAWS: '',
|
||||
// 回执说明
|
||||
commentText:''
|
||||
commentText: ''
|
||||
}
|
||||
const roleForm = {
|
||||
jlUserId: '',
|
||||
@@ -141,105 +146,114 @@ export default {
|
||||
// 完整校验
|
||||
const moreSarLawsStandRules = {
|
||||
lawsTypeFirstLevel: [
|
||||
{required: true, message: '1级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '1级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeSecondLevel: [
|
||||
{required: true, message: '2级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '2级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeThirdLevel: [
|
||||
{required: true, message: '3级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '3级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeFourthLevel: [
|
||||
{required: true, message: '4级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '4级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsName: [
|
||||
{required: true, message: '政策名称不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '政策名称不能超过500个字符', trigger: 'change'},
|
||||
{validator: this.verify.checkSpecialCharacterOftags, trigger: 'change'}
|
||||
{ required: true, message: '政策名称不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '政策名称不能超过500个字符', trigger: 'change' },
|
||||
{ validator: this.verify.checkSpecialCharacterOftags, trigger: 'change' }
|
||||
],
|
||||
lawsEnName: [
|
||||
{type: 'string', max: 500, message: '英文名称不能超过500个字符', trigger: 'change'},
|
||||
{validator: this.verify.valiateEnName, trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '英文名称不能超过500个字符', trigger: 'change' },
|
||||
{ validator: this.verify.valiateEnName, trigger: 'change' }
|
||||
],
|
||||
lawsNo: [
|
||||
// {required: true, type: 'string', message: '政策文号不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 100, message: '政策文号不能超过100个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 100, message: '政策文号不能超过100个字符', trigger: 'change' }
|
||||
],
|
||||
issueTime: [
|
||||
{required: true, message: '发文日期不能为空', trigger: 'change'},
|
||||
{ required: true, message: '发文日期不能为空', trigger: 'change' },
|
||||
],
|
||||
issueCompany: [
|
||||
{required: true, type: 'string', message: '发文单位不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 100, message: '发文单位不能超过100个字符', trigger: 'change'}
|
||||
{ required: true, type: 'string', message: '发文单位不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 100, message: '发文单位不能超过100个字符', trigger: 'change' }
|
||||
],
|
||||
lawsTextState: [
|
||||
{required: true, message: '标准状态不能为空', trigger: 'change'}
|
||||
{ required: true, message: '标准状态不能为空', trigger: 'change' }
|
||||
],
|
||||
isRelateAccess: [
|
||||
{required: true, message: '是否纳入认证清单不能为空', trigger: 'change'}
|
||||
{ required: true, message: '是否纳入认证清单不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsYear: [
|
||||
{required: true, message: '年度不能为空', trigger: 'change'}
|
||||
{ required: true, message: '年度不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsNotisyncNum: [
|
||||
{type: 'string', max: 500, message: '福田转发通知文号不能超过500个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '福田转发通知文号不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
lawsRemark: [
|
||||
{type: 'string', max: 500, message: '备注不能超过500个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '备注不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
lawsBulletin: [
|
||||
{ type: 'string', max: 500, message: '信息月报不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
SSRQLAWS: [
|
||||
{required: true, message: '实施日期不能为空', trigger: 'change'}
|
||||
{ required: true, message: '实施日期不能为空', trigger: 'change' }
|
||||
],
|
||||
CYSDLAWS: [
|
||||
{required: true, message: '我司参与深度不能为空', trigger: 'change'}
|
||||
{ required: true, message: '我司参与深度不能为空', trigger: 'change' }
|
||||
],
|
||||
menuName: [
|
||||
{ required: true, message: '政策体系不能为空', trigger: 'change' }
|
||||
],
|
||||
}
|
||||
// 认证清单为否 的校验
|
||||
const littleSarLawsStandRules = {
|
||||
lawsTypeFirstLevel: [
|
||||
{required: true, message: '1级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '1级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeSecondLevel: [
|
||||
{required: true, message: '2级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '2级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeThirdLevel: [
|
||||
{required: true, message: '3级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '3级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsTypeFourthLevel: [
|
||||
{required: true, message: '4级政策分类不能为空', trigger: 'change'}
|
||||
{ required: true, message: '4级政策分类不能为空', trigger: 'change' }
|
||||
],
|
||||
lawsName: [
|
||||
{required: true, message: '政策名称不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 500, message: '政策名称不能超过500个字符', trigger: 'change'},
|
||||
{validator: this.verify.checkSpecialCharacterOftags, trigger: 'change'}
|
||||
{ required: true, message: '政策名称不能为空', trigger: 'change' },
|
||||
{ type: 'string', max: 500, message: '政策名称不能超过500个字符', trigger: 'change' },
|
||||
{ validator: this.verify.checkSpecialCharacterOftags, trigger: 'change' }
|
||||
],
|
||||
lawsEnName: [
|
||||
{type: 'string', max: 500, message: '英文名称不能超过500个字符', trigger: 'change'},
|
||||
{validator: this.verify.valiateEnName, trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '英文名称不能超过500个字符', trigger: 'change' },
|
||||
{ validator: this.verify.valiateEnName, trigger: 'change' }
|
||||
],
|
||||
lawsNo: [
|
||||
// {required: true, type: 'string', message: '政策文号不能为空', trigger: 'change'},
|
||||
{type: 'string', max: 100, message: '政策文号不能超过100个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 100, message: '政策文号不能超过100个字符', trigger: 'change' }
|
||||
],
|
||||
issueCompany: [
|
||||
{type: 'string', max: 100, message: '发文单位不能超过100个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 100, message: '发文单位不能超过100个字符', trigger: 'change' }
|
||||
],
|
||||
lawsNotisyncNum: [
|
||||
{type: 'string', max: 500, message: '福田转发通知文号不能超过500个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '福田转发通知文号不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
lawsRemark: [
|
||||
{type: 'string', max: 500, message: '备注不能超过500个字符', trigger: 'change'}
|
||||
{ type: 'string', max: 500, message: '备注不能超过500个字符', trigger: 'change' }
|
||||
],
|
||||
isRelateAccess: [
|
||||
{required: true, message: '是否纳入认证清单不能为空', trigger: 'change'}
|
||||
{ required: true, message: '是否纳入认证清单不能为空', trigger: 'change' }
|
||||
],
|
||||
menuName: [
|
||||
{ required: true, message: '政策体系不能为空', trigger: 'change' }
|
||||
],
|
||||
}
|
||||
const roleRules = {
|
||||
prcCreateUserName: [
|
||||
{required: true, message: '政策业务经理不能为空', trigger: ['blur', 'change']}
|
||||
{ required: true, message: '政策业务经理不能为空', trigger: [ 'blur', 'change' ] }
|
||||
],
|
||||
jlUserName: [
|
||||
{required: true, message: '政策业务经理不能为空', trigger: ['blur', 'change']}
|
||||
{ required: true, message: '政策业务经理不能为空', trigger: [ 'blur', 'change' ] }
|
||||
]
|
||||
}
|
||||
return {
|
||||
@@ -255,7 +269,7 @@ export default {
|
||||
footerLoading: false,
|
||||
reloadForm: true, // 重新渲染表单
|
||||
|
||||
userId:this.$store.getters.userInfo.userId,
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
taskIds: this.$route.query.taskIds,
|
||||
pId: this.$route.query.prcId,
|
||||
|
||||
@@ -267,22 +281,22 @@ export default {
|
||||
loading: false,
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getDicTypeListCode()
|
||||
this.getData()
|
||||
this.resolveRules()
|
||||
},
|
||||
watch: {
|
||||
'form.isRelateAccess' () {
|
||||
// 移除校验结果重新生成校验
|
||||
this.resolveRules()
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getDicTypeListCode()
|
||||
this.getData()
|
||||
this.resolveRules()
|
||||
},
|
||||
methods: {
|
||||
handleTabs(tab) {
|
||||
handleTabs (tab) {
|
||||
this.active = tab
|
||||
},
|
||||
getData() {
|
||||
getData () {
|
||||
return new Promise((resolve, reject) => {
|
||||
this.loading = true
|
||||
inboundLiaisonDetail({
|
||||
@@ -318,7 +332,7 @@ export default {
|
||||
this.reloadForm = true
|
||||
})
|
||||
},
|
||||
handleTransfer() {
|
||||
handleTransfer () {
|
||||
this.drawerModal = true
|
||||
this.drawerTitle = '转办处理人'
|
||||
},
|
||||
@@ -333,18 +347,18 @@ export default {
|
||||
if (res.success) {
|
||||
this.drawerModal = false
|
||||
this.$message.success('调整成功')
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
this.$router.push({ path: '/processCenter?tabsName=ProcessCenter' })
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
handleOver(){
|
||||
handleOver () {
|
||||
// 驳回
|
||||
this.form.approvalOpinion = 1
|
||||
this.handleSubmit()
|
||||
},
|
||||
handleApprove(){
|
||||
handleApprove () {
|
||||
// 通过
|
||||
this.form.approvalOpinion = 0
|
||||
this.handleSubmit()
|
||||
@@ -363,7 +377,7 @@ export default {
|
||||
this.rules = { ...this.rules }
|
||||
},
|
||||
// 提交
|
||||
handleSubmit() {
|
||||
handleSubmit () {
|
||||
this.addRule()
|
||||
this.$refs['form'].validate((valid) => {
|
||||
if (valid) {
|
||||
@@ -371,16 +385,16 @@ export default {
|
||||
const json = JSON.stringify(this.form);
|
||||
const query = {
|
||||
taskIds: this.$route.query.taskIds,
|
||||
userId : this.$store.getters.userInfo.userId,
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
json: json
|
||||
}
|
||||
this.$http._post('lawss/activiti/completeTask', query).then(res => {
|
||||
if (res.success) {
|
||||
if(this.form.approvalOpinion === 1){
|
||||
this.$message.warning("驳回成功")
|
||||
if(this.form.approvalOpinion === 1) {
|
||||
this.$message.warning('驳回成功')
|
||||
this.footerLoading = false
|
||||
// 流程提交之后,应该流转至待办任务页面
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
this.$router.push({ path: '/processCenter?tabsName=ProcessCenter' })
|
||||
}else{
|
||||
this.processCreateLaws(json)
|
||||
}
|
||||
@@ -391,17 +405,18 @@ export default {
|
||||
})
|
||||
} else {
|
||||
this.$message.warning('请检查基础信息表单是否填写完整')
|
||||
}})
|
||||
}
|
||||
})
|
||||
},
|
||||
// 流程入库
|
||||
processCreateLaws(json) {
|
||||
processCreateLaws (json) {
|
||||
const _formData = new FormData()
|
||||
_formData.append('infoJson', json)
|
||||
processCreateLaws(_formData).then(res => {
|
||||
if (res.result === '操作成功' || res.data === '入库成功') {
|
||||
this.$message.success(res.data)
|
||||
setTimeout(() => {
|
||||
this.$router.push({path:'/processCenter?tabsName=ProcessCenter'})
|
||||
this.$router.push({ path: '/processCenter?tabsName=ProcessCenter' })
|
||||
}, 100)
|
||||
this.footerLoading = false
|
||||
} else {
|
||||
|
||||
@@ -312,7 +312,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<el-divider content-position="left"><h2>标准化活动相关流程</h2></el-divider>
|
||||
<el-divider content-position="left"><h2>标准化活动/政策课题相关流程</h2></el-divider>
|
||||
<div class="process-box">
|
||||
<div class="process-name">
|
||||
<el-card v-btn-permission="'b196ef0253cebd1adfc3a8432a28e377'" shadow="hover">
|
||||
|
||||
Reference in New Issue
Block a user