Browse Source

管理库-导出任务/档案盒/bug修复

master
xuhuajiao 1 year ago
parent
commit
36e7f020be
  1. 6
      src/views/archiveKeeping/caseManage/caseList/index.vue
  2. 68
      src/views/archiveKeeping/caseManage/caseList/module/detailDialog.vue
  3. 158
      src/views/archivesManage/exportTask/index.vue
  4. 76
      src/views/archivesManage/exportTask/module/detail.vue
  5. 4
      src/views/archivesManage/managementLibrary/anjuan/content.vue
  6. 39
      src/views/archivesManage/managementLibrary/index.vue
  7. 1
      src/views/archivesManage/managementLibrary/mixins/index.js
  8. 7
      src/views/archivesManage/managementLibrary/module/collectHeader.vue
  9. 84
      src/views/archivesManage/openInventory/index.vue
  10. 30
      src/views/collectReorganizi/collectionLibrary/index.vue
  11. 32
      src/views/collectReorganizi/collectionLibrary/module/collectHeader.vue

6
src/views/archiveKeeping/caseManage/caseList/index.vue

@ -316,8 +316,10 @@ export default {
this.crud.crudMethod.findInCase(params).then(res => { this.crud.crudMethod.findInCase(params).then(res => {
console.log(res) console.log(res)
if (res) { if (res) {
this.$refs.detailDom.tableData = res.archives
this.$refs.detailDom.collectLevel = parseInt(res.archives[0].categoryLevel)
this.$refs.detailDom.tableData = res.archives_o
this.$refs.detailDom.queryFields = res.field_o
this.$refs.detailDom.queryCnFields = res.cnField_o
this.$refs.detailDom.collectLevel = parseInt(res.archives_o[0].categoryLevel)
} else { } else {
this.$refs.detailDom.tableData = [] this.$refs.detailDom.tableData = []
} }

68
src/views/archiveKeeping/caseManage/caseList/module/detailDialog.vue

@ -98,26 +98,25 @@
:selections="tableData" :selections="tableData"
:is-case="true" :is-case="true"
/> --> /> -->
<el-table v-show="caseTabIndex===1" style="width: 100%;" :data="tableData" height="342px">
<el-table-column prop="categoryName" label="所属门类" align="center" min-width="80" :show-overflow-tooltip="true">
<template>
{{ selectedItem && selectedItem.cnName }}
</template>
</el-table-column>
<el-table-column prop="categoryLevel" label="门类级别" align="center" width="80">
<template slot-scope="scope">
<span v-if="scope.row.categoryLevel === '3'" style="width:56px">文件</span>
<span v-if="scope.row.categoryLevel === '2'" style="width:56px">卷内</span>
</template>
</el-table-column>
<el-table-column prop="fondsNo" label="全宗号" align="center" width="180" />
<el-table-column prop="archiveYear" label="年度" align="center" />
<el-table-column prop="archiveNo" label="档号" align="center" width="220" :show-overflow-tooltip="true" />
<el-table-column prop="maintitle" label="题名" align="center" width="180" :show-overflow-tooltip="true" />
<el-table-column prop="docNo" label="发文字号" align="center" />
<el-table-column prop="securityClass" label="密级" align="center" />
<el-table-column prop="secrecyPeriod" label="保密期限" align="center" />
<el-table-column prop="retention" label="保管期限" align="center" />
<el-table
v-show="caseTabIndex===1"
ref="table"
:data="tableData"
style="width: 100%;"
row-key="id"
height="342px"
>
<el-table-column type="index" label="序号" width="55" align="center" />
<template v-for="(field, index) in queryFields">
<el-table-column
v-if="field !== 'id'"
:key="index"
:prop="field"
:label="queryCnFields[index]"
:show-overflow-tooltip="true"
:width="field === 'archive_no' ? '260px' : '120px'"
/>
</template>
</el-table> </el-table>
</div> </div>
</div> </div>
@ -126,7 +125,6 @@
</template> </template>
<script> <script>
import { FetchCategoryMenu } from '@/api/system/category/category'
export default { export default {
data() { data() {
return { return {
@ -135,14 +133,15 @@ export default {
rowData: {}, rowData: {},
tableData: [], tableData: [],
collectLevel: null, collectLevel: null,
selectedItem: null
selectedItem: null,
queryCnFields: null,
queryFields: null
} }
}, },
methods: { methods: {
changeActiveTab(data) { changeActiveTab(data) {
this.caseTabIndex = data this.caseTabIndex = data
if (this.caseTabIndex === 1) { if (this.caseTabIndex === 1) {
this.getCategoryDataTree()
// if (this.tableData.length !== 0) { // if (this.tableData.length !== 0) {
// this.$refs.archivesListModuleRef.caseCategoryId = this.tableData[0].categoryPid // this.$refs.archivesListModuleRef.caseCategoryId = this.tableData[0].categoryPid
// this.$refs.archivesListModuleRef.getViewTable() // this.$refs.archivesListModuleRef.getViewTable()
@ -151,29 +150,6 @@ export default {
// this.$refs.archivesListModuleRef.tableData = [] // this.$refs.archivesListModuleRef.tableData = []
// } // }
} }
},
getCategoryDataTree() {
FetchCategoryMenu().then(res => {
console.log(res)
this.selectedItem = this.findItemById(this.tableData[0].categoryPid, res)
console.log(this.selectedItem.cnName)
// this.categoryOptions = this.filterData(res)
// this.classifyOptions = this.filterArchivesClasses(res)
})
},
findItemById(id, data) {
for (const item of data) {
if (item.id === id) {
return item
}
if (item.children && item.children.length > 0) {
const foundChildItem = this.findItemById(id, item.children)
if (foundChildItem) {
return foundChildItem
}
}
}
return null
} }
} }
} }

158
src/views/archivesManage/exportTask/index.vue

@ -4,7 +4,7 @@
<div class="connection-header collect-header" style="margin-bottom: 20px;"> <div class="connection-header collect-header" style="margin-bottom: 20px;">
<div class="head-search" style="margin-bottom: 0;"> <div class="head-search" style="margin-bottom: 0;">
<el-select <el-select
v-model="selectStatus"
v-model="status"
style="margin-right: 10px; width: 100px;" style="margin-right: 10px; width: 100px;"
placeholder="请选择" placeholder="请选择"
> >
@ -15,8 +15,8 @@
:value="item.value" :value="item.value"
/> />
</el-select> </el-select>
<el-input v-model="query.search" clearable size="small" placeholder="输入关键字可模糊搜索" prefix-icon="el-icon-search" style="width: 200px;" class="filter-item" @keyup.enter.native="handleSearch()" @clear="handleSearch()" />
<el-button class="filter-item filter-search" size="mini" type="success" icon="el-icon-search" @click="handleSearch()">搜索</el-button>
<el-input v-model="search" clearable size="small" placeholder="输入关键字可模糊搜索" prefix-icon="el-icon-search" style="width: 200px;" class="filter-item" @keyup.enter.native="getBusinessFlowHistory()" @clear="getBusinessFlowHistory()" />
<el-button class="filter-item filter-search" size="mini" type="success" icon="el-icon-search" @click="getBusinessFlowHistory()">搜索</el-button>
<el-button class="filter-item filter-refresh" size="mini" type="warning" icon="el-icon-refresh-left" @click="resetQuery">重置</el-button> <el-button class="filter-item filter-refresh" size="mini" type="warning" icon="el-icon-refresh-left" @click="resetQuery">重置</el-button>
</div> </div>
<el-button size="mini" :disabled="selections.length === 0" @click="doExport(selections)"> <el-button size="mini" :disabled="selections.length === 0" @click="doExport(selections)">
@ -24,64 +24,60 @@
导出 导出
</el-button> </el-button>
</div> </div>
<el-table ref="table" :data="tableData" style="width: 100%;" height="calc(100vh - 330px)" @select="handleCurrentChange" @selection-change="selectionChangeHandler" @row-dblclick="handleDetail">
<el-table-column type="selection" align="center" width="55" />
<el-table-column prop="title" label="导出类型" />
<el-table-column prop="title" label="包名" />
<el-table-column prop="reason" label="任务条数" />
<el-table-column prop="reason" label="操作人" />
<el-table-column prop="dept" label="任务状态">
<template>
<span class="row-state ing-state">导出中</span>
<span class="row-state end-state">导出成功</span>
<span class="row-state cancel-state">导出失败</span>
</template>
</el-table-column>
<el-table-column prop="create_time" label="操作时间">
<template slot-scope="scope">
<div>{{ scope.row.create_time | parseTime }}</div>
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
v-if="tableData.length !== 0"
: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"
/>
<div style="height: calc(100vh - 232px);">
<el-table ref="table" :data="tableData" style="width: 100%;" height="calc(100vh - 330px)" @select="handleCurrentChange" @selection-change="selectionChangeHandler" @row-dblclick="handleDetail">
<el-table-column type="selection" align="center" width="55" />
<el-table-column prop="business_type" label="类型">
<template>
<div>离线移交</div>
</template>
</el-table-column>
<el-table-column prop="title" label="包名" min-width="180" />
<el-table-column prop="number" label="任务条数">
<template>
<!-- 目前只有1条默认 -->
<span>1</span>
</template>
</el-table-column>
<el-table-column prop="applicant" label="操作人" />
<el-table-column prop="dept" label="任务状态">
<template>
<!-- 目前只有导出成功后续看需求再更改 -->
<!-- <span class="row-state ing-state">导出中</span> -->
<span class="row-state end-state">导出成功</span>
<!-- <span class="row-state cancel-state">导出失败</span> -->
</template>
</el-table-column>
<el-table-column prop="createTime" label="操作时间">
<template slot-scope="scope">
<div>{{ scope.row.createTime | parseTime }}</div>
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
v-if="tableData.length !== 0"
: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"
/>
</div>
<Detail ref="mDetail" /> <Detail ref="mDetail" />
</div> </div>
</template> </template>
<script> <script>
import { FetchBusinessFlowHistory } from '@/api/archivesManage/library'
import Detail from './module/detail' import Detail from './module/detail'
import qs from 'qs'
import { exportFile } from '@/utils/index'
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
const data = [
{
'id': '005E76FEC5A2AAB368CA1F',
'code': '230c4a438fa84b2c9a0405c99e7f5cb1',
'status': 1,
'remark': null,
'create_by': 'admin',
'create_time': 1687330805000
},
{
'id': '005E76FEC5A2AAB368CA1F',
'code': '230c4a438fa84b2c9a0405c99e7f5cb2',
'status': 0,
'remark': '请检查zip包格式是否正确',
'create_by': 'admin',
'create_time': 1687330805000
}
]
export default { export default {
name: 'ExportTask', name: 'ExportTask',
components: { Detail }, components: { Detail },
@ -90,32 +86,31 @@ export default {
statusOptions: [ statusOptions: [
{ {
label: '全部', label: '全部',
value: '全部'
value: 0
}, },
{ {
label: '导出中', label: '导出中',
value: '导出中'
value: 1
}, },
{ {
label: '导出成功', label: '导出成功',
value: '导出成功'
value: 2
}, },
{ {
label: '导出失败', label: '导出失败',
value: '导出失败'
value: 3
} }
], ],
selectStatus: '全部',
query: {
search: ''
},
status: '',
tableData: [], tableData: [],
selections: [], selections: [],
page: { page: {
page: 1,
page: 0,
size: 10, size: 10,
total: 0 total: 0
}
},
businessType: 7,
search: ''
} }
}, },
computed: { computed: {
@ -124,23 +119,41 @@ export default {
]) ])
}, },
created() { created() {
this.tableData = data
}, },
mounted() { mounted() {
this.getBusinessFlowHistory()
}, },
methods: { methods: {
resetQuery() { resetQuery() {
this.query = {}
this.search = ''
this.status = null
this.getBusinessFlowHistory()
}, },
handleSearch() {
getBusinessFlowHistory() {
const params = {
'status': this.status,
'search': this.search,
'businessType': this.businessType,
'page': this.page.page,
'size': this.page.size
}
FetchBusinessFlowHistory(params).then((res) => {
if (res.code !== 500) {
this.tableData = res.content
this.page.total = res.totalElements
} else {
this.$message.error('获取数据失败')
}
}).catch(err => {
console.log(err)
})
}, },
handleDetail() {
handleDetail(row) {
this.$refs.mDetail.rowCurrent = row
this.$refs.mDetail.detialVisible = true this.$refs.mDetail.detialVisible = true
}, },
// //
handleCurrentChange(selection, row) { handleCurrentChange(selection, row) {
console.log('触发单选', row)
this.selections = selection this.selections = selection
}, },
handleSizeChange(size) { handleSizeChange(size) {
@ -164,10 +177,11 @@ export default {
data.forEach(val => { data.forEach(val => {
ids.push(val.id) ids.push(val.id)
}) })
// const params = {
// 'roleIds': ids
// }
// exportFile(this.baseApi + '/api/role/exportRole?' + qs.stringify(params, { indices: false }))
const params = {
'businessIds': ids,
'businessType': this.businessType
}
exportFile(this.baseApi + '/api/control/exportBusinessFlow?' + qs.stringify(params, { indices: false }))
}).catch(() => { }).catch(() => {
}) })
} }

76
src/views/archivesManage/exportTask/module/detail.vue

@ -1,28 +1,37 @@
<template> <template>
<!-- 详情 --> <!-- 详情 -->
<el-dialog title="导出任务详情" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="detialVisible">
<el-dialog title="导出任务详情" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="detialVisible" @opened="opened">
<div class="setting-dialog"> <div class="setting-dialog">
<ul class="hitch-info"> <ul class="hitch-info">
<li><span>包名</span>离线移交包001</li>
<li><span>操作时间</span>2016-09-21 08:50:08</li>
<li><span>操作人</span>admin</li>
<li><span>包名</span>{{ rowCurrent && rowCurrent.title }}</li>
<li><span>操作时间</span>{{ rowCurrent && rowCurrent.createTime }}</li>
<li><span>操作人</span>{{ rowCurrent && rowCurrent.applicant }}</li>
<li><span>导出方式</span>离线移交</li> <li><span>导出方式</span>离线移交</li>
<li><span>任务状态</span><i class="row-state end-state">导出成功</i></li>
<!-- <li><span>任务状态</span><i class="row-state end-state">导出成功</i></li> -->
<li><span>完成时间</span>{{ rowCurrent && rowCurrent.completeTime }}</li>
<li><span>审批意见</span>{{ rowCurrent && rowCurrent.opinion }}</li>
<li class="state-list">
<span class="row-state end-state">导出成功</span>
</li>
</ul> </ul>
<div style="display: flex; justify-content: flex-end; margin-bottom: 12px;"> <div style="display: flex; justify-content: flex-end; margin-bottom: 12px;">
<el-button class="task-btn"><i class="iconfont icon-xiazai" />下载文件</el-button>
<el-button class="task-btn" @click="downloadFile"><i class="iconfont icon-xiazai" />下载文件</el-button>
</div> </div>
<el-table ref="table" :data="tableData" style="width: 100%;"> <el-table ref="table" :data="tableData" style="width: 100%;">
<el-table-column type="index" align="center" width="55" label="序号" /> <el-table-column type="index" align="center" width="55" label="序号" />
<el-table-column prop="name" label="所属全宗" />
<el-table-column prop="reason2" label="门类名称" />
<el-table-column prop="reason2" label="整理方式" />
<el-table-column prop="reason2" label="项目号/档号" />
<el-table-column prop="reason2" label="题名" />
<el-table-column prop="fondsName" label="所属全宗" />
<el-table-column prop="categoryName" label="门类名称" />
<el-table-column prop="categoryLevel" label="整理方式">
<template slot-scope="scope">
<span>{{ scope.row.categoryLevel === 2 ? '案卷整理' : '按件整理' }}</span>
</template>
</el-table-column>
<el-table-column prop="archiveNo" label="项目号/档号" />
<el-table-column prop="maintitle" label="题名" />
<el-table-column prop="reason" label="状态" align="center"> <el-table-column prop="reason" label="状态" align="center">
<template> <template>
<span class="row-state end-state">成功</span> <span class="row-state end-state">成功</span>
<span class="row-state cancel-state">失败</span>
<!-- <span class="row-state cancel-state">失败</span> -->
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -31,22 +40,61 @@
</template> </template>
<script> <script>
const data = [{}, {}]
import { FetchBusinessFlowDetails } from '@/api/archivesManage/library'
import { downloadFile } from '@/utils/index'
import { mapGetters } from 'vuex'
export default { export default {
name: 'Detail', name: 'Detail',
components: { }, components: { },
data() { data() {
return { return {
rowCurrent: null,
detialVisible: false, detialVisible: false,
baseInfo: null,
tableData: [] tableData: []
} }
}, },
computed: {
...mapGetters([
'baseApi'
])
},
created() { created() {
}, },
mounted() { mounted() {
this.tableData = data
}, },
methods: { methods: {
opened() {
this.getBusinessFlowDetails()
},
getBusinessFlowDetails() {
const params = {
'businessId': this.rowCurrent.id
}
FetchBusinessFlowDetails(params).then((res) => {
if (res.code !== 500) {
console.log(res)
this.baseInfo = res.businessFlow
this.tableData = res.details
} else {
this.$message.error('获取数据失败')
}
}).catch(err => {
console.log(err)
})
},
downloadFile() {
if (this.rowCurrent.zip_path) {
const url = this.baseApi + '/downloadFile' + this.rowCurrent.zip_path
fetch(url).then(res => res.blob()).then(blob => {
downloadFile(blob, this.rowCurrent.title, 'zip')
}).catch(() => {
this.$message.error('下载文件失败!')
})
} else {
this.$message.error('下载文件路径获取失败!')
}
}
} }
} }
</script> </script>

4
src/views/archivesManage/managementLibrary/anjuan/content.vue

@ -1,9 +1,9 @@
<template> <template>
<TableListMoudle ref="tableList" :is-title-type="isTitleType" :selected-category="selectedCategory" :test="test" :is-recycle="isRecycle" />
<TableListMoudle ref="tableList" :is-title-type="isTitleType" :selected-category="selectedCategory" :test="test" :smart-query="smartQuery" :is-recycle="isRecycle" />
</template> </template>
<script> <script>
import TableListMoudle from './tableList.vue'
import TableListMoudle from './tableList'
export default { export default {
name: 'AnjuanContent', name: 'AnjuanContent',
components: { TableListMoudle }, components: { TableListMoudle },

39
src/views/archivesManage/managementLibrary/index.vue

@ -10,15 +10,21 @@
<div class="tree-scroll"> <div class="tree-scroll">
<el-tree ref="categroyTree" v-loading="crud.loading" class="arc-tree arc-tree-01" :data="crud.data" :props="defaultProps" node-key="id" :expand-on-click-node="false" highlight-current @node-click="handleNodeClick"> <el-tree ref="categroyTree" v-loading="crud.loading" class="arc-tree arc-tree-01" :data="crud.data" :props="defaultProps" node-key="id" :expand-on-click-node="false" highlight-current @node-click="handleNodeClick">
<span slot-scope="{ node, data }" class="custom-tree-node"> <span slot-scope="{ node, data }" class="custom-tree-node">
<span v-if="data.isType === 1 " class="iconFolder">
{{ data.cnName }}
</span>
<span v-if="data.isType === 2" class="iconArch">
{{ data.cnName }}
</span>
<span v-if="data.isType === 3" class="iconFile">
{{ data.cnName }}
</span>
<el-tooltip :content="node.label" placement="left" effect="dark">
<span v-if="data.isType === 1 " class="iconFolder">
{{ data.cnName }}
</span>
</el-tooltip>
<el-tooltip :content="node.label" placement="left" effect="dark">
<span v-if="data.isType === 2" class="iconArch">
{{ data.cnName }}
</span>
</el-tooltip>
<el-tooltip :content="node.label" placement="left" effect="dark">
<span v-if="data.isType === 3" class="iconFile">
{{ data.cnName }}
</span>
</el-tooltip>
</span> </span>
</el-tree> </el-tree>
</div> </div>
@ -244,14 +250,6 @@ export default {
'archive_year': null, // 'archive_year': null, //
'fonds_no': null // 'fonds_no': null //
} }
console.log('测试fixedStatusBar', this.fixedStatusBar)
// if (localStorage.getItem('statusBarFixedType') !== 'undefined') {
// this.fixedStatusBar = JSON.parse(localStorage.getItem('statusBarFixedType')) === true
// }
console.log(this)
this.parentsProjectId = null this.parentsProjectId = null
this.parentsAnjuanId = null this.parentsAnjuanId = null
this.parentsJuanneiId = null this.parentsJuanneiId = null
@ -323,7 +321,11 @@ export default {
if (res.fonds.length <= 1) { if (res.fonds.length <= 1) {
fonds = [] fonds = []
} else { } else {
fonds = res.fonds
const parent = {}
parent.id = 0
parent.fondsName = '全宗'
parent.childDictionarys = res.fonds
fonds = parent
} }
this.classifyTree = res.dictionarys.concat(fonds) this.classifyTree = res.dictionarys.concat(fonds)
this.classifyLoading = false this.classifyLoading = false
@ -350,6 +352,7 @@ export default {
this.treeCurrentNode.classList.add('is-current') this.treeCurrentNode.classList.add('is-current')
if (Object.keys(selectedKey).includes('fondsId')) { if (Object.keys(selectedKey).includes('fondsId')) {
this.smartQuery.fonds_no = selectedKey.fondsNo this.smartQuery.fonds_no = selectedKey.fondsNo
console.log(this.smartQuery.fonds_no)
} else { } else {
const selectedParentVal = this.$refs.classifyTree.getNode(selectedKey).parent.data.dictionaryCode const selectedParentVal = this.$refs.classifyTree.getNode(selectedKey).parent.data.dictionaryCode
switch (selectedParentVal) { switch (selectedParentVal) {

1
src/views/archivesManage/managementLibrary/mixins/index.js

@ -109,6 +109,7 @@ export const manageLibraryCrud = {
}) })
}, },
getViewTableList(categoryLevel, parentsId, type) { getViewTableList(categoryLevel, parentsId, type) {
console.log(this.smartQuery.fonds_no)
const params = { const params = {
'parentId': parentsId, 'parentId': parentsId,
'categoryId': this.selectedCategory.id, 'categoryId': this.selectedCategory.id,

7
src/views/archivesManage/managementLibrary/module/collectHeader.vue

@ -805,9 +805,10 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!') this.$message('您还未勾选需要操作的条目,请先确认!')
return false return false
} }
this.$refs.offLineHandover.offLineHandoverVisible = true
this.getTotalSumAll()
// this.$refs.offLineHandover.offLineHandoverVisible = true
this.$refs.formModule.overType = 7
this.$refs.formModule.overDetialVisible = true
this.$refs.formModule.overDetialTitle = '离线移交-流程'
}, },
// zip // zip
handleExportZip() { handleExportZip() {

84
src/views/archivesManage/openInventory/index.vue

@ -25,47 +25,49 @@
导出 导出
</el-button> </el-button>
</div> </div>
<el-table ref="table" :data="tableData" style="width: 100%;" height="calc(100vh - 330px)" @select="handleCurrentChange" @selection-change="selectionChangeHandler" @row-dblclick="handleDetail">
<el-table-column type="selection" align="center" width="55" />
<el-table-column v-if="inventType===6" prop="business_type" label="类型">
<template>
<div>内部移交</div>
</template>
</el-table-column>
<el-table-column prop="title" label="标题" min-width="180" />
<el-table-column prop="reason" label="申请理由" />
<el-table-column prop="applicant" label="申请人" />
<el-table-column prop="deptsName" label="申请部门" />
<el-table-column prop="createTime" label="申请时间">
<template slot-scope="scope">
<div>{{ scope.row.createTime }}</div>
</template>
</el-table-column>
<el-table-column prop="completeTime" label="完成时间">
<template slot-scope="scope">
<div>{{ scope.row.completeTime }}</div>
</template>
</el-table-column>
<el-table-column prop="createTime" label="状态" width="80">
<template slot-scope="scope">
<span v-if="scope.row.status === 1" class="row-state ing-state">进行中</span>
<span v-if="scope.row.status === 2" class="row-state case-cancel">已取消</span>
<span v-if="scope.row.status === 3" class="row-state end-state">已完成</span>
<span v-if="scope.row.status === 4" class="row-state cancel-state">不通过</span>
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
v-if="tableData.length !== 0"
: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"
/>
<div style="height: calc(100vh - 232px);">
<el-table ref="table" :data="tableData" style="width: 100%;" height="calc(100vh - 330px)" @select="handleCurrentChange" @selection-change="selectionChangeHandler" @row-dblclick="handleDetail">
<el-table-column type="selection" align="center" width="55" />
<el-table-column v-if="inventType===6" prop="business_type" label="类型">
<template>
<div>内部移交</div>
</template>
</el-table-column>
<el-table-column prop="title" label="标题" min-width="180" />
<el-table-column prop="reason" label="申请理由" />
<el-table-column prop="applicant" label="申请人" />
<el-table-column prop="deptsName" label="申请部门" />
<el-table-column prop="createTime" label="申请时间">
<template slot-scope="scope">
<div>{{ scope.row.createTime }}</div>
</template>
</el-table-column>
<el-table-column prop="completeTime" label="完成时间">
<template slot-scope="scope">
<div>{{ scope.row.completeTime }}</div>
</template>
</el-table-column>
<el-table-column prop="createTime" label="状态" width="80">
<template slot-scope="scope">
<span v-if="scope.row.status === 1" class="row-state ing-state">进行中</span>
<span v-if="scope.row.status === 2" class="row-state case-cancel">已取消</span>
<span v-if="scope.row.status === 3" class="row-state end-state">已完成</span>
<span v-if="scope.row.status === 4" class="row-state cancel-state">不通过</span>
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
v-if="tableData.length !== 0"
: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"
/>
</div>
<Detail ref="mDetail" :invent-type="inventType" /> <Detail ref="mDetail" :invent-type="inventType" />
</div> </div>

30
src/views/collectReorganizi/collectionLibrary/index.vue

@ -10,15 +10,21 @@
<div class="tree-scroll"> <div class="tree-scroll">
<el-tree ref="categroyTree" v-loading="crud.loading" class="arc-tree arc-tree-01" :data="crud.data" :props="defaultProps" node-key="id" :expand-on-click-node="false" highlight-current @node-click="handleNodeClick"> <el-tree ref="categroyTree" v-loading="crud.loading" class="arc-tree arc-tree-01" :data="crud.data" :props="defaultProps" node-key="id" :expand-on-click-node="false" highlight-current @node-click="handleNodeClick">
<span slot-scope="{ node, data }" class="custom-tree-node"> <span slot-scope="{ node, data }" class="custom-tree-node">
<span v-if="data.isType === 1 " class="iconFolder">
{{ data.cnName }}
</span>
<span v-if="data.isType === 2" class="iconArch">
{{ data.cnName }}
</span>
<span v-if="data.isType === 3" class="iconFile">
{{ data.cnName }}
</span>
<el-tooltip :content="node.label" placement="left" effect="dark">
<span v-if="data.isType === 1 " class="iconFolder">
{{ data.cnName }}
</span>
</el-tooltip>
<el-tooltip :content="node.label" placement="left" effect="dark">
<span v-if="data.isType === 2" class="iconArch">
{{ data.cnName }}
</span>
</el-tooltip>
<el-tooltip :content="node.label" placement="left" effect="dark">
<span v-if="data.isType === 3" class="iconFile">
{{ data.cnName }}
</span>
</el-tooltip>
</span> </span>
</el-tree> </el-tree>
</div> </div>
@ -318,7 +324,11 @@ export default {
if (res.fonds.length <= 1) { if (res.fonds.length <= 1) {
fonds = [] fonds = []
} else { } else {
fonds = res.fonds
const parent = {}
parent.id = 0
parent.fondsName = '全宗'
parent.childDictionarys = res.fonds
fonds = parent
} }
this.classifyTree = res.dictionarys.concat(fonds) this.classifyTree = res.dictionarys.concat(fonds)
this.classifyLoading = false this.classifyLoading = false

32
src/views/collectReorganizi/collectionLibrary/module/collectHeader.vue

@ -46,8 +46,8 @@
<span>常规</span> <span>常规</span>
</template> </template>
<el-menu-item-group class="collect-submenu-group"> <el-menu-item-group class="collect-submenu-group">
<el-menu-item v-if="isTitleType !== 6" index="1-1" @click="handleForm('add')">新增</el-menu-item>
<el-menu-item v-if="isTitleType !== 6" index="1-2" @click="handleForm('edit')">编辑</el-menu-item>
<el-menu-item v-if="isTitleType !== 6" index="1-1" @click="handleForm('add',0)">新增</el-menu-item>
<el-menu-item v-if="isTitleType !== 6" index="1-2" @click="handleForm('edit',0)">编辑</el-menu-item>
<el-menu-item v-if="isTitleType !== 4" index="1-3" @click="toDelete">删除</el-menu-item> <el-menu-item v-if="isTitleType !== 4" index="1-3" @click="toDelete">删除</el-menu-item>
<el-menu-item v-if="isTitleType === 4" index="1-4" @click="toMove">移出</el-menu-item> <el-menu-item v-if="isTitleType === 4" index="1-4" @click="toMove">移出</el-menu-item>
</el-menu-item-group> </el-menu-item-group>
@ -302,7 +302,11 @@ export default {
return '文件' return '文件'
} else { } else {
if (this.activeIndex === 1) { if (this.activeIndex === 1) {
return '文件'
if (this.quickPaper) {
return '案卷'
} else {
return '文件'
}
} else { } else {
return '案卷' return '案卷'
} }
@ -322,7 +326,11 @@ export default {
return 3 return 3
} else { } else {
if (this.activeIndex === 1) { if (this.activeIndex === 1) {
return 3
if (this.quickPaper) {
return 2
} else {
return 3
}
} else { } else {
return 2 return 2
} }
@ -477,15 +485,22 @@ export default {
console.log(key, keyPath) console.log(key, keyPath)
}, },
// -form/-api // -form/-api
handleForm(type) {
handleForm(type, isPaper) {
if (type === 'add') { if (type === 'add') {
if (this.parentsData.parentsAnjuanRow && this.parentsData.parentsAnjuanRow.collect_formal === 2) { if (this.parentsData.parentsAnjuanRow && this.parentsData.parentsAnjuanRow.collect_formal === 2) {
this.$message('当前档案处于归档流程中,不可操作新增,请先确认!') this.$message('当前档案处于归档流程中,不可操作新增,请先确认!')
return false return false
} }
this.formTitle = '新增' + this.collectTitle
this.arcId = null this.arcId = null
if (isPaper) {
this.quickPaper = true
this.formTitle = '新增案卷'
} else {
this.formTitle = '新增' + this.collectTitle
this.quickPaper = false
}
} else if (type === 'edit') { } else if (type === 'edit') {
this.quickPaper = false
if (this.selections.length === 0) { if (this.selections.length === 0) {
this.$message('您还未勾选需要操作的条目,请先确认!') this.$message('您还未勾选需要操作的条目,请先确认!')
return false return false
@ -1062,9 +1077,10 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!') this.$message('您还未勾选需要操作的条目,请先确认!')
return false return false
} }
this.quickPaper = true
this.quickPaperArcId = this.selections.map(item => item.id) this.quickPaperArcId = this.selections.map(item => item.id)
this.handleForm('add')
this.handleForm('add', 1)
}, },
// //
handleOriginalDownload() { handleOriginalDownload() {

Loading…
Cancel
Save