7 changed files with 329 additions and 274 deletions
-
53src/views/archivesManage/archivesList/archivesAnjuan/index.vue
-
24src/views/archivesManage/archivesList/archivesJuannei/index.vue
-
508src/views/archivesManage/archivesList/archivesProject/index.vue
-
5src/views/archivesManage/archivesSearch/index.vue
-
5src/views/archivesManage/caseManage/caseList/index.vue
-
4src/views/archivesManage/fileImport/importLog/index.vue
-
4src/views/archivesManage/fileImport/module/detail.vue
@ -1,254 +1,254 @@ |
|||
<template> |
|||
<div class="archives-warp"> |
|||
<!--工具栏--> |
|||
<div class="head-container head-archives clearfix"> |
|||
<div v-if="!recycleMain.isRecycle" class="archives-crud"> |
|||
<!-- 新增 --> |
|||
<el-button size="mini" icon="el-icon-plus" @click="handleForm('add','项目', null)">新增</el-button> |
|||
<!-- 修改 --> |
|||
<el-button size="mini" icon="el-icon-edit" :disabled="selections .length !== 1" @click="handleForm('edit','项目', null)">修改</el-button> |
|||
<!-- 删除btn 多选 --> |
|||
<el-button icon="el-icon-delete" size="mini" :loading="crud.delAllLoading" :disabled="selections.length === 0" @click="toDelete(selections)">删除</el-button> |
|||
</div> |
|||
<div v-else class="archives-recycle"> |
|||
<el-button icon="el-icon-delete" size="mini" :disabled="selections.length === 0" @click="toDelete(selections)">彻底删除</el-button> |
|||
<el-button size="mini" class="iconfont icon-huanyuan-fanbai" :disabled="selections.length === 0" @click="handleRestore">还原 |
|||
</el-button> |
|||
</div> |
|||
<div class="head-search"> |
|||
<!-- @keyup.enter.native="crud.toQuery" --> |
|||
<el-input v-model="projectQuery[projectInputSelect]" clearable size="small" placeholder="请输入关键词" style="width: 206px;" class="input-prepend filter-item" @clear="getTableList()" @keyup.enter.native="getTableList"> |
|||
<el-select slot="prepend" v-model="projectInputSelect" style="width: 100px" @change="querySelect(projectInputSelect)"> |
|||
<el-option |
|||
v-for="item in queryOption" |
|||
:key="item.value" |
|||
:label="item.label" |
|||
:value="item.value" |
|||
/> |
|||
</el-select> |
|||
</el-input> |
|||
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="getTableList()">搜索</el-button> |
|||
</div> |
|||
</div> |
|||
|
|||
<!--新增 / 编辑 表单组件--> |
|||
<el-dialog class="preview-dialog" :modal-append-to-body="false" :close-on-click-modal="false" :before-close="handleClose" :visible="formVisible" :title="formTitle"> |
|||
<span class="dialog-right-top" /> |
|||
<span class="dialog-left-bottom" /> |
|||
<div class="setting-dialog"> |
|||
<!-- form --> |
|||
<PreviewForm v-if="formPreviewData.length" ref="previewForm" :is-has-code="true" :is-disabled="false" :form-preview-data.sync="formPreviewData" :selected-category="selectedCategory" :parents-id="parentsId" :arc-id="arcId" :is-des-form-type="isDesFormType" @emitTableList="getTableList" /> |
|||
<div slot="footer" class="dialog-footer"> |
|||
<!-- :loading="crud.status.cu === 2" --> |
|||
<el-button type="primary" @click="handlerArchivesSubmit">保存</el-button> |
|||
</div> |
|||
</div> |
|||
</el-dialog> |
|||
|
|||
<!-- table表格渲染 --> |
|||
<!-- height="calc(100vh - 350px)" --> |
|||
<el-card class="box-card" shadow="never"> |
|||
<span class="right-top-line" /> |
|||
<span class="left-bottom-line" /> |
|||
<el-table |
|||
ref="table" |
|||
v-loading="crud.loading || getTableDisplayFieldsLoading" |
|||
class="archives-table" |
|||
:data="projectData" |
|||
highlight-current-row |
|||
style="width: 100%;" |
|||
:height="projectTableHeight" |
|||
:row-key="rowKey" |
|||
:row-class-name="tableRowClassName" |
|||
@select-all="selectAll" |
|||
@selection-change="crud.selectionChangeHandler" |
|||
@row-click="clickRowHandler" |
|||
@cell-dblclick="tableDoubleClick" |
|||
@select="handleCurrentChange" |
|||
> |
|||
<el-table-column type="selection" :reserve-selection="true" width="55" align="center" /> |
|||
<el-table-column type="index" label="序号" width="55" align="center" /> |
|||
<el-table-column label="案卷" prop="children_num" width="55" align="center" /> |
|||
<el-table-column v-for="field in tableDisplayFields" :key="field.id" :label="field.fieldCnName" :align="field.displayformatType" :width="field.displayLength" show-overflow-tooltip> |
|||
<template slot="header"> |
|||
<el-tooltip |
|||
class="item" |
|||
effect="dark" |
|||
:content="field.fieldCnName" |
|||
placement="top-start" |
|||
> |
|||
<span>{{ field.fieldCnName }}</span> |
|||
</el-tooltip> |
|||
</template> |
|||
<template slot-scope="scope"> |
|||
{{ scope.row[field.fieldName] }} |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<!--分页组件--> |
|||
<el-pagination |
|||
:current-page="page.page" |
|||
:total="page.total" |
|||
:page-size="page.size" |
|||
:pager-count="5" |
|||
layout="total, prev, pager, next, sizes" |
|||
@size-change="handleSizeChange" |
|||
@current-change="handleCurrentPage" |
|||
/> |
|||
</el-card> |
|||
|
|||
<!-- 档案详情 --> |
|||
<ArchivesInfo ref="archivesInfo" :category-id="categoryId" :arc-id="arcId" /> |
|||
<!-- 还原 --> |
|||
<RestoreArchives ref="restore" :selections="selections" :category-id="categoryId" /> |
|||
<!-- 删除档案 --> |
|||
<DeltArchives ref="deltArchives" :selections="selections" :category-id="categoryId" :total-sum-all="totalSumAll" :is-delt-type="1" /> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import { header, form } from '@crud/crud' |
|||
import { archivesCrud } from '../mixins/archives' |
|||
import PreviewForm from '@/views/components/category/PreviewForm' |
|||
import ArchivesInfo from '../module/archivesInfo/index' |
|||
import RestoreArchives from '../module/restoreArchives/index' |
|||
import DeltArchives from '../module/deltArchives/index' |
|||
|
|||
export default { |
|||
name: 'ArchivesProject', |
|||
components: { PreviewForm, ArchivesInfo, RestoreArchives, DeltArchives }, |
|||
mixins: [ |
|||
header(), |
|||
form({}), |
|||
archivesCrud |
|||
], |
|||
inject: ['recycleMain'], |
|||
props: { |
|||
selectedCategory: { |
|||
type: Object, |
|||
default: function() { |
|||
return {} |
|||
} |
|||
}, |
|||
smartQuery: { |
|||
type: Object, |
|||
default: function() { |
|||
return {} |
|||
} |
|||
} |
|||
}, |
|||
data() { |
|||
return { |
|||
projectData: [], |
|||
projectQuery: {}, |
|||
queryOption: [ |
|||
{ value: 'queryTitle', label: '题名' }, |
|||
{ value: 'itemNo', label: '项目代号' } |
|||
], |
|||
projectInputSelect: '', |
|||
isProject: true // 用于判断案卷-新增/导出按钮 |
|||
} |
|||
}, |
|||
watch: { |
|||
selectedCategory: function(newValue, oldValue) { |
|||
}, |
|||
tableDisplayFields(val) { |
|||
this.doLayout() |
|||
}, |
|||
smartQuery: { |
|||
handler(n, o) { |
|||
}, |
|||
deep: true |
|||
} |
|||
}, |
|||
created() { |
|||
// 初始化带select的输入框的 - 搜索 |
|||
this.projectInputSelect = this.queryOption[0].value |
|||
this.query.queryType = null |
|||
this.selections = [] |
|||
}, |
|||
mounted() { |
|||
}, |
|||
methods: { |
|||
// 档案列表获取显示列 - 项 |
|||
getTableDisplayFields(type) { |
|||
this.getTableItemCommon(type) |
|||
}, |
|||
handleSizeChange(size) { |
|||
this.page.size = size |
|||
this.page.page = 1 |
|||
this.getListCommon('projectData', 'projectTableHeight', 0) |
|||
this.$nextTick(() => { |
|||
this.selections = this.$refs.table.selection |
|||
}) |
|||
}, |
|||
// table - list |
|||
getTableList(page) { |
|||
this.query.queryTitle = '' |
|||
this.query.itemNo = '' |
|||
switch (this.projectInputSelect) { |
|||
case 'queryTitle': // 题名 |
|||
this.query.queryTitle = this.projectQuery[this.projectInputSelect] |
|||
break |
|||
case 'itemNo': // 项目代号 - 未定 |
|||
this.query.itemNo = this.projectQuery[this.projectInputSelect] |
|||
break |
|||
} |
|||
this.getListCommon('projectData', 'projectTableHeight', 0) |
|||
}, |
|||
// table - 全选 |
|||
selectAll(val) { |
|||
this.selections = val |
|||
this.isProject = val.length !== 1 |
|||
this.$emit('getAjInProjectBtnState', this.isProject) |
|||
console.log('pr', this.selections) |
|||
this.$emit('getProjectSelections', val, this.selections) |
|||
}, |
|||
// table - 双击查看详情 |
|||
tableDoubleClick(row) { |
|||
this.$refs.archivesInfo.isHasFile = false |
|||
this.$refs.archivesInfo.isDetailsInfo = false |
|||
this.$refs.archivesInfo.isTidOrBorrow = false |
|||
this.arcId = row.id |
|||
this.$refs.archivesInfo.detailTitle = '项目详情' |
|||
this.$refs.archivesInfo.archivesInfoVisible = true |
|||
this.$refs.archivesInfo.archivesTabIndex = 0 |
|||
this.$refs.archivesInfo.getDetial(row.id) |
|||
}, |
|||
// table - 当前选中得row |
|||
clickRowHandler(row) { |
|||
this.$refs.table.clearSelection() |
|||
this.$refs.table.toggleRowSelection(row) |
|||
this.selections = this.crud.selections |
|||
this.isProject = this.crud.selections.length !== 1 |
|||
this.$emit('getAjInProjectBtnState', this.isProject) |
|||
this.$emit('getProjectSelections', row, null) |
|||
}, |
|||
// 触发单选 |
|||
handleCurrentChange(selection, row) { |
|||
this.selections = selection |
|||
// 判断项目内案卷-新增btn-状态 |
|||
this.isProject = selection.length !== 1 |
|||
this.$emit('getAjInProjectBtnState', this.isProject) |
|||
this.$emit('getProjectSelections', row, selection) |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style rel="stylesheet/scss" lang="scss" scoped> |
|||
@import "~@/assets/styles/archives-manage.scss"; |
|||
::v-deep .input-prepend{ |
|||
.el-select .el-input__inner{ |
|||
padding-left: 15px !important; |
|||
} |
|||
.el-input__inner { |
|||
padding-left: 94px !important; |
|||
} |
|||
} |
|||
::v-deep .el-table__fixed-right-patch{ |
|||
background-color:#02255f; |
|||
border-bottom: none; |
|||
} |
|||
</style> |
|||
|
|||
<template> |
|||
<div class="archives-warp"> |
|||
<!--工具栏--> |
|||
<div class="head-container head-archives clearfix"> |
|||
<div v-if="!recycleMain.isRecycle" class="archives-crud"> |
|||
<!-- 新增 --> |
|||
<el-button size="mini" icon="el-icon-plus" @click="handleForm('add','项目', null)">新增</el-button> |
|||
<!-- 修改 --> |
|||
<el-button size="mini" icon="el-icon-edit" :disabled="selections .length !== 1" @click="handleForm('edit','项目', null)">修改</el-button> |
|||
<!-- 删除btn 多选 --> |
|||
<el-button icon="el-icon-delete" size="mini" :loading="crud.delAllLoading" :disabled="selections.length === 0" @click="toDelete(selections)">删除</el-button> |
|||
</div> |
|||
<div v-else class="archives-recycle"> |
|||
<el-button icon="el-icon-delete" size="mini" :disabled="selections.length === 0" @click="toDelete(selections)">彻底删除</el-button> |
|||
<el-button size="mini" class="iconfont icon-huanyuan-fanbai" :disabled="selections.length === 0" @click="handleRestore">还原 |
|||
</el-button> |
|||
</div> |
|||
<div class="head-search"> |
|||
<!-- @keyup.enter.native="crud.toQuery" --> |
|||
<el-input v-model="projectQuery[projectInputSelect]" clearable size="small" placeholder="请输入关键词" style="width: 206px;" class="input-prepend filter-item" @clear="getTableList()" @keyup.enter.native="getTableList"> |
|||
<el-select slot="prepend" v-model="projectInputSelect" style="width: 100px" @change="querySelect(projectInputSelect)"> |
|||
<el-option |
|||
v-for="item in queryOption" |
|||
:key="item.value" |
|||
:label="item.label" |
|||
:value="item.value" |
|||
/> |
|||
</el-select> |
|||
</el-input> |
|||
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="getTableList()">搜索</el-button> |
|||
</div> |
|||
</div> |
|||
|
|||
<!--新增 / 编辑 表单组件--> |
|||
<el-dialog class="preview-dialog" :modal-append-to-body="false" :close-on-click-modal="false" :before-close="handleClose" :visible="formVisible" :title="formTitle"> |
|||
<span class="dialog-right-top" /> |
|||
<span class="dialog-left-bottom" /> |
|||
<div class="setting-dialog"> |
|||
<!-- form --> |
|||
<PreviewForm v-if="formPreviewData.length" ref="previewForm" :is-has-code="true" :is-disabled="false" :form-preview-data.sync="formPreviewData" :selected-category="selectedCategory" :parents-id="parentsId" :arc-id="arcId" :is-des-form-type="isDesFormType" @emitTableList="getTableList" /> |
|||
<div slot="footer" class="dialog-footer"> |
|||
<!-- :loading="crud.status.cu === 2" --> |
|||
<el-button type="primary" @click="handlerArchivesSubmit">保存</el-button> |
|||
</div> |
|||
</div> |
|||
</el-dialog> |
|||
|
|||
<!-- table表格渲染 --> |
|||
<!-- height="calc(100vh - 350px)" --> |
|||
<el-card class="box-card" shadow="never"> |
|||
<span class="right-top-line" /> |
|||
<span class="left-bottom-line" /> |
|||
<el-table |
|||
ref="table" |
|||
v-loading="crud.loading || getTableDisplayFieldsLoading" |
|||
class="archives-table" |
|||
:data="projectData" |
|||
highlight-current-row |
|||
style="width: 100%;" |
|||
:height="projectTableHeight" |
|||
:row-key="rowKey" |
|||
:row-class-name="tableRowClassName" |
|||
@select-all="selectAll" |
|||
@selection-change="crud.selectionChangeHandler" |
|||
@row-click="clickRowHandler" |
|||
@cell-dblclick="tableDoubleClick" |
|||
@select="handleCurrentChange" |
|||
> |
|||
<el-table-column type="selection" :reserve-selection="true" width="55" align="center" /> |
|||
<el-table-column type="index" label="序号" width="55" align="center" /> |
|||
<el-table-column label="案卷" prop="children_num" width="55" align="center" /> |
|||
<el-table-column v-for="field in tableDisplayFields" :key="field.id" :label="field.fieldCnName" :align="field.displayformatType" :width="field.displayLength" show-overflow-tooltip> |
|||
<template slot="header"> |
|||
<el-tooltip |
|||
class="item" |
|||
effect="dark" |
|||
:content="field.fieldCnName" |
|||
placement="top-start" |
|||
> |
|||
<span>{{ field.fieldCnName }}</span> |
|||
</el-tooltip> |
|||
</template> |
|||
<template slot-scope="scope"> |
|||
{{ scope.row[field.fieldName] }} |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<!--分页组件--> |
|||
<el-pagination |
|||
:current-page="page.page" |
|||
:total="page.total" |
|||
:page-size="page.size" |
|||
:pager-count="5" |
|||
layout="total, prev, pager, next, sizes" |
|||
@size-change="handleSizeChange" |
|||
@current-change="handleCurrentPage" |
|||
/> |
|||
</el-card> |
|||
|
|||
<!-- 档案详情 --> |
|||
<ArchivesInfo ref="archivesInfo" :category-id="categoryId" :arc-id="arcId" /> |
|||
<!-- 还原 --> |
|||
<RestoreArchives ref="restore" :selections="selections" :category-id="categoryId" /> |
|||
<!-- 删除档案 --> |
|||
<DeltArchives ref="deltArchives" :selections="selections" :category-id="categoryId" :total-sum-all="totalSumAll" :is-delt-type="1" /> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import { header, form } from '@crud/crud' |
|||
import { archivesCrud } from '../mixins/archives' |
|||
import PreviewForm from '@/views/components/category/PreviewForm' |
|||
import ArchivesInfo from '../module/archivesInfo/index' |
|||
import RestoreArchives from '../module/restoreArchives/index' |
|||
import DeltArchives from '../module/deltArchives/index' |
|||
|
|||
export default { |
|||
name: 'ArchivesProject', |
|||
components: { PreviewForm, ArchivesInfo, RestoreArchives, DeltArchives }, |
|||
mixins: [ |
|||
header(), |
|||
form({}), |
|||
archivesCrud |
|||
], |
|||
inject: ['recycleMain'], |
|||
props: { |
|||
selectedCategory: { |
|||
type: Object, |
|||
default: function() { |
|||
return {} |
|||
} |
|||
}, |
|||
smartQuery: { |
|||
type: Object, |
|||
default: function() { |
|||
return {} |
|||
} |
|||
} |
|||
}, |
|||
data() { |
|||
return { |
|||
projectData: [], |
|||
projectQuery: {}, |
|||
queryOption: [ |
|||
{ value: 'queryTitle', label: '题名' }, |
|||
{ value: 'itemNo', label: '项目代号' } |
|||
], |
|||
projectInputSelect: '', |
|||
isProject: true // 用于判断案卷-新增/导出按钮 |
|||
} |
|||
}, |
|||
watch: { |
|||
selectedCategory: function(newValue, oldValue) { |
|||
}, |
|||
tableDisplayFields(val) { |
|||
this.doLayout() |
|||
}, |
|||
smartQuery: { |
|||
handler(n, o) { |
|||
}, |
|||
deep: true |
|||
} |
|||
}, |
|||
created() { |
|||
// 初始化带select的输入框的 - 搜索 |
|||
this.projectInputSelect = this.queryOption[0].value |
|||
this.query.queryType = null |
|||
this.selections = [] |
|||
}, |
|||
mounted() { |
|||
}, |
|||
methods: { |
|||
// 档案列表获取显示列 - 项 |
|||
getTableDisplayFields(type) { |
|||
this.getTableItemCommon(type) |
|||
}, |
|||
handleSizeChange(size) { |
|||
this.page.size = size |
|||
this.page.page = 1 |
|||
this.getListCommon('projectData', 'projectTableHeight', 0) |
|||
this.$nextTick(() => { |
|||
this.selections = this.$refs.table.selection |
|||
}) |
|||
}, |
|||
// table - list |
|||
getTableList(page) { |
|||
this.query.queryTitle = '' |
|||
this.query.itemNo = '' |
|||
switch (this.projectInputSelect) { |
|||
case 'queryTitle': // 题名 |
|||
this.query.queryTitle = this.projectQuery[this.projectInputSelect] |
|||
break |
|||
case 'itemNo': // 项目代号 - 未定 |
|||
this.query.itemNo = this.projectQuery[this.projectInputSelect] |
|||
break |
|||
} |
|||
this.getListCommon('projectData', 'projectTableHeight', 0) |
|||
}, |
|||
// table - 全选 |
|||
selectAll(val) { |
|||
this.selections = val |
|||
this.isProject = val.length !== 1 |
|||
this.$emit('getAjInProjectBtnState', this.isProject) |
|||
console.log('pr', this.selections) |
|||
this.$emit('getProjectSelections', val, this.selections) |
|||
}, |
|||
// table - 双击查看详情 |
|||
tableDoubleClick(row) { |
|||
this.$refs.archivesInfo.isHasFile = false |
|||
this.$refs.archivesInfo.isDetailsInfo = false |
|||
this.$refs.archivesInfo.isTidOrBorrow = true |
|||
this.arcId = row.id |
|||
this.$refs.archivesInfo.detailTitle = '项目详情' |
|||
this.$refs.archivesInfo.archivesInfoVisible = true |
|||
this.$refs.archivesInfo.archivesTabIndex = 0 |
|||
this.$refs.archivesInfo.getDetial(row.id) |
|||
}, |
|||
// table - 当前选中得row |
|||
clickRowHandler(row) { |
|||
this.$refs.table.clearSelection() |
|||
this.$refs.table.toggleRowSelection(row) |
|||
this.selections = this.crud.selections |
|||
this.isProject = this.crud.selections.length !== 1 |
|||
this.$emit('getAjInProjectBtnState', this.isProject) |
|||
this.$emit('getProjectSelections', row, null) |
|||
}, |
|||
// 触发单选 |
|||
handleCurrentChange(selection, row) { |
|||
this.selections = selection |
|||
// 判断项目内案卷-新增btn-状态 |
|||
this.isProject = selection.length !== 1 |
|||
this.$emit('getAjInProjectBtnState', this.isProject) |
|||
this.$emit('getProjectSelections', row, selection) |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style rel="stylesheet/scss" lang="scss" scoped> |
|||
@import "~@/assets/styles/archives-manage.scss"; |
|||
::v-deep .input-prepend{ |
|||
.el-select .el-input__inner{ |
|||
padding-left: 15px !important; |
|||
} |
|||
.el-input__inner { |
|||
padding-left: 94px !important; |
|||
} |
|||
} |
|||
::v-deep .el-table__fixed-right-patch{ |
|||
background-color:#02255f; |
|||
border-bottom: none; |
|||
} |
|||
</style> |
|||
|
Write
Preview
Loading…
Cancel
Save
Reference in new issue