|
|
@ -1,47 +1,38 @@ |
|
|
|
<template> |
|
|
|
<div class="app-container"> |
|
|
|
<div v-show="viewState == 1"> |
|
|
|
<div class="tab-header webtop"> |
|
|
|
<div>合同模板管理</div> |
|
|
|
<div> |
|
|
|
<el-button type="primary" size="small" @click="handleCreate()">新增</el-button> |
|
|
|
<el-button type="primary" size="small" @click="handleUpdate()">编辑</el-button> |
|
|
|
<el-button type="danger" size="small" @click="handleDelete()">删除</el-button> |
|
|
|
<!-- <el-button type="success" size="small" @click="handleDaoRu()">导入</el-button>--> |
|
|
|
<!-- <el-button type="success" size="small" @click="handleDaoChu()">导出</el-button>--> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="webcon"> |
|
|
|
<button-bar view-title="合同模板管理" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/> |
|
|
|
<div class="main-content"> |
|
|
|
<div class="searchcon"> |
|
|
|
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button> |
|
|
|
<div v-show="isSearchShow" class="search"> |
|
|
|
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header"> |
|
|
|
<el-form-item label="合同类型" class="searchlist"> |
|
|
|
<el-select v-model="listQuery.params.contractTypeKey" placeholder="请选择" class="filter-item"> |
|
|
|
<el-form-item label="合同类型"> |
|
|
|
<el-select v-model="listQuery.params.contractTypeKey" placeholder="请选择"> |
|
|
|
<el-option v-for="item in typeList" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="人员类型" class="searchlist"> |
|
|
|
<el-select v-model="listQuery.params.objectTypeKey" placeholder="请选择" class="filter-item"> |
|
|
|
<el-form-item label="人员类型"> |
|
|
|
<el-select v-model="listQuery.params.objectTypeKey" placeholder="请选择"> |
|
|
|
<el-option v-for="items in personnelTypeList" :key="items.dictKey" :label="items.dictValue" :value="items.dictKey"/> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="项目类型" class="searchlist"> |
|
|
|
<el-select v-model="listQuery.params.projectTypeKey" placeholder="请选择" class="filter-item"> |
|
|
|
<el-form-item label="项目类型"> |
|
|
|
<el-select v-model="listQuery.params.projectTypeKey" placeholder="请选择"> |
|
|
|
<el-option v-for="ite in projectTypeList" :key="ite.dictKey" :label="ite.dictValue" :value="ite.dictKey"/> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="文件名称" class="searchlist"> |
|
|
|
<el-input v-model="listQuery.params.fileName" placeholder="" clearable class="filter-item"/> |
|
|
|
<el-form-item label="文件名称"> |
|
|
|
<el-input v-model="listQuery.params.fileName" placeholder="" clearable/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="版本" class="searchlist"> |
|
|
|
<el-input v-model="listQuery.params.ver" placeholder="" clearable class="filter-item"/> |
|
|
|
<el-form-item label="版本"> |
|
|
|
<el-input v-model="listQuery.params.ver" placeholder="" clearable/> |
|
|
|
</el-form-item> |
|
|
|
<div class="searchbtns"> |
|
|
|
<el-button type="primary" @click="handleFilter">查询</el-button> |
|
|
|
<el-button type="primary" @click="handleReset">重置</el-button> |
|
|
|
</div> |
|
|
|
</el-form> |
|
|
|
<div class="btn" style="text-align: center;"> |
|
|
|
<el-button size="small" icon="el-icon-search" type="primary" @click="handleFilter">查询</el-button> |
|
|
|
<el-button size="small" icon="el-icon-refresh" type="primary" @click="handleReset">重置</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="listtop"> |
|
|
@ -50,8 +41,13 @@ |
|
|
|
</div> |
|
|
|
<div class=""> |
|
|
|
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange"> |
|
|
|
<el-table-column width="50px" type="selection" align="center"/> |
|
|
|
<el-table-column width="80px" label="编号" type="index" :index="indexMethod" align="center"/> |
|
|
|
<el-table-column width="50" type="selection" align="center"/> |
|
|
|
<el-table-column width="60" label="编号" type="index" :index="indexMethod" align="center"/> |
|
|
|
<el-table-column width="80" label="操作" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-button type="primary" size="mini" @click="toEdit(scope.row)">编辑</el-button> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="合同类型" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<span class="bluezi" @click="lookDetails(scope.row)">{{ scope.row.contractType }}</span> |
|
|
@ -62,12 +58,12 @@ |
|
|
|
<span>{{ scope.row.fileName }}</span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="文件类型" align="center"> |
|
|
|
<el-table-column label="文件类型" align="center" width="110"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<span>{{ scope.row.fileType }}</span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="人员类型" align="center"> |
|
|
|
<el-table-column label="人员类型" align="center" width="110"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<span>{{ scope.row.objectType }}</span> |
|
|
|
</template> |
|
|
@ -77,12 +73,12 @@ |
|
|
|
<span>{{ scope.row.projectType }}</span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="版本" align="center"> |
|
|
|
<el-table-column label="版本" align="center" width="60"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<span>{{ scope.row.ver }}</span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="更新时间" align="center"> |
|
|
|
<el-table-column label="更新时间" align="center" width="110"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<span>{{ scope.row.modifyTime }}</span> |
|
|
|
</template> |
|
|
@ -101,33 +97,55 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<hetongmobanguanli-add v-show="viewState == 2 || viewState == 3" ref="divAdd" @doback="restState"/> |
|
|
|
<hetongmobanguanli-add v-show="viewState == 2 || viewState == 3" ref="divAdd" @doback="restState" @reloadlist="getList"/> |
|
|
|
<hetongmobanguanli-info v-show="viewState == 4" ref="divInfo" @doback="restState"/> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
<script> |
|
|
|
import { |
|
|
|
getTemplatePageList, |
|
|
|
deleteTemplateByids, |
|
|
|
basefinbankTemplateExportExcel |
|
|
|
} from '@/api/jichuxinxi/contract' |
|
|
|
import { dictType } from '@/api/salesManagement/orderManagement' |
|
|
|
import { getTemplatePageList, deleteTemplateByids, basefinbankTemplateExportExcel } from '@/api/jichuxinxi/contract' |
|
|
|
import { typeValues } from '@/api/dictcommons/dictcommons' |
|
|
|
import Pagination from '@/components/pagination' |
|
|
|
import pageye from '@/components/pagination/pageye' |
|
|
|
import ButtonBar from '@/components/ButtonBar' |
|
|
|
import hetongmobanguanliAdd from './hetongmobanguanliAdd.vue' |
|
|
|
import hetongmobanguanliInfo from './hetongmobanguanliInfo.vue' |
|
|
|
|
|
|
|
export default { |
|
|
|
name: 'Hetongdanganguanli', |
|
|
|
name: 'HeTongMoBanGuanLi', |
|
|
|
components: { |
|
|
|
Pagination, |
|
|
|
pageye, |
|
|
|
ButtonBar, |
|
|
|
hetongmobanguanliAdd, |
|
|
|
hetongmobanguanliInfo |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
btndisabled: false, |
|
|
|
btnList: [ |
|
|
|
{ |
|
|
|
type: 'primary', |
|
|
|
size: 'small', |
|
|
|
icon: 'plus', |
|
|
|
btnKey: 'toAdd', |
|
|
|
btnLabel: '新增' |
|
|
|
}, |
|
|
|
{ |
|
|
|
type: 'danger', |
|
|
|
size: 'small', |
|
|
|
icon: 'del', |
|
|
|
btnKey: 'doDel', |
|
|
|
btnLabel: '删除' |
|
|
|
}, |
|
|
|
{ |
|
|
|
type: 'info', |
|
|
|
size: 'small', |
|
|
|
icon: 'cross', |
|
|
|
btnKey: 'doClose', |
|
|
|
btnLabel: '关闭' |
|
|
|
} |
|
|
|
], |
|
|
|
projectTypeList: [], |
|
|
|
typeList: [], |
|
|
|
personnelTypeList: [], |
|
|
@ -141,7 +159,7 @@ export default { |
|
|
|
listLoading: false, |
|
|
|
listQuery: { |
|
|
|
current: 1, |
|
|
|
size: 20, |
|
|
|
size: 10, |
|
|
|
params: { |
|
|
|
contractType: '', |
|
|
|
objectType: '', |
|
|
@ -153,6 +171,9 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
mounted() { |
|
|
|
this.$refs['btnbar'].setButtonList(this.btnList) |
|
|
|
}, |
|
|
|
created() { |
|
|
|
// 加载列表 |
|
|
|
this.getList() |
|
|
@ -160,24 +181,40 @@ export default { |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
DictType() { |
|
|
|
dictType({ type: 'contractType' }).then((response) => { |
|
|
|
if (response.code === '200' && response.data) { |
|
|
|
typeValues({ type: 'contractType' }).then((response) => { |
|
|
|
if (response.success) { |
|
|
|
this.typeList = response.data |
|
|
|
} |
|
|
|
}) |
|
|
|
// 获取人员类型 |
|
|
|
dictType({ type: 'personnelType' }).then((response) => { |
|
|
|
if (response.code === '200' && response.data) { |
|
|
|
typeValues({ type: 'personnelType' }).then((response) => { |
|
|
|
if (response.success) { |
|
|
|
this.personnelTypeList = response.data |
|
|
|
} |
|
|
|
}) |
|
|
|
// 获取项目类型 |
|
|
|
dictType({ type: 'projectType' }).then((response) => { |
|
|
|
if (response.code === '200' && response.data) { |
|
|
|
typeValues({ type: 'projectType' }).then((response) => { |
|
|
|
if (response.success) { |
|
|
|
this.projectTypeList = response.data |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
btnHandle(btnKey) { |
|
|
|
console.log('XXXXXXXXXXXXXXX ' + btnKey) |
|
|
|
switch (btnKey) { |
|
|
|
case 'toAdd': |
|
|
|
this.toAdd() |
|
|
|
break |
|
|
|
case 'doDel': |
|
|
|
this.doDel() |
|
|
|
break |
|
|
|
case 'doClose': |
|
|
|
this.doClose() |
|
|
|
break |
|
|
|
default: |
|
|
|
break |
|
|
|
} |
|
|
|
}, |
|
|
|
// 搜索条件效果 |
|
|
|
clicksearchShow() { |
|
|
|
this.isSearchShow = !this.isSearchShow |
|
|
@ -212,12 +249,11 @@ export default { |
|
|
|
this.listQuery.current = 1 |
|
|
|
this.getList() |
|
|
|
}, |
|
|
|
|
|
|
|
// 重置 |
|
|
|
handleReset() { |
|
|
|
this.listQuery = { |
|
|
|
current: 1, |
|
|
|
size: 20, |
|
|
|
size: 10, |
|
|
|
params: { |
|
|
|
contractType: '', |
|
|
|
objectType: '', |
|
|
@ -237,57 +273,29 @@ export default { |
|
|
|
this.sids = aa |
|
|
|
}, |
|
|
|
// 打开添加 |
|
|
|
handleCreate() { |
|
|
|
toAdd() { |
|
|
|
this.viewState = 2 |
|
|
|
this.$refs['divAdd'].showAdd() |
|
|
|
}, |
|
|
|
// 打开修改 |
|
|
|
handleUpdate() { |
|
|
|
if (this.sids.length === 1) { |
|
|
|
this.viewState = 3 |
|
|
|
this.$refs['divAdd'].showEdit(this.sids) |
|
|
|
} else if (this.sids.length > 1) { |
|
|
|
this.$notify({ |
|
|
|
title: '提示', |
|
|
|
message: '不能选中多个修改!', |
|
|
|
type: 'info', |
|
|
|
duration: 2000 |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$notify({ |
|
|
|
title: '提示', |
|
|
|
message: '没有选择!', |
|
|
|
type: 'error', |
|
|
|
duration: 2000 |
|
|
|
}) |
|
|
|
return |
|
|
|
} |
|
|
|
toEdit(row) { |
|
|
|
this.viewState = 3 |
|
|
|
this.$refs['divAdd'].showEdit(row.sid) |
|
|
|
}, |
|
|
|
|
|
|
|
// 打开查看 |
|
|
|
lookDetails(row) { |
|
|
|
this.viewState = 4 |
|
|
|
this.$refs['divInfo'].showInfo(row) |
|
|
|
}, |
|
|
|
// 根据本行ID删除数据 |
|
|
|
handleDelete() { |
|
|
|
doDel() { |
|
|
|
if (this.sids.length === 0) { |
|
|
|
this.$notify({ |
|
|
|
title: '提示', |
|
|
|
message: '没有选择!!', |
|
|
|
type: 'warning', |
|
|
|
duration: 2000 |
|
|
|
}) |
|
|
|
this.$message({ showClose: true, type: 'error', message: '请至少选择一条记录进行删除操作' }) |
|
|
|
return |
|
|
|
} |
|
|
|
deleteTemplateByids(this.sids).then((response) => { |
|
|
|
if (response.code === '200') { |
|
|
|
this.$notify({ |
|
|
|
title: '提示', |
|
|
|
message: '删除成功', |
|
|
|
type: 'success', |
|
|
|
duration: 2000 |
|
|
|
}) |
|
|
|
if (response.success) { |
|
|
|
this.$message({ showClose: true, type: 'success', message: '删除成功' }) |
|
|
|
this.getList() |
|
|
|
} else { |
|
|
|
this.$notify({ |
|
|
@ -300,7 +308,6 @@ export default { |
|
|
|
}, |
|
|
|
restState() { |
|
|
|
this.viewState = 1 |
|
|
|
this.handleReset() |
|
|
|
}, |
|
|
|
// 导出 |
|
|
|
handleDaoChu() { |
|
|
@ -321,6 +328,10 @@ export default { |
|
|
|
duration: 2000 |
|
|
|
}) |
|
|
|
}) |
|
|
|
}, |
|
|
|
doClose() { |
|
|
|
this.$store.dispatch('tagsView/delView', this.$route) |
|
|
|
this.$router.go(-1) |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|