Browse Source

收集库回收站

master
xuhuajiao 1 year ago
parent
commit
913f076552
  1. 4
      src/assets/styles/archives-manage.scss
  2. 12
      src/views/collectReorganizi/collectionLibrary/anjuan/content.vue
  3. 8
      src/views/collectReorganizi/collectionLibrary/anjuan/index.vue
  4. 6
      src/views/collectReorganizi/collectionLibrary/anjuan/tableList.vue
  5. 6
      src/views/collectReorganizi/collectionLibrary/file/index.vue
  6. 25
      src/views/collectReorganizi/collectionLibrary/index.vue
  7. 6
      src/views/collectReorganizi/collectionLibrary/juannei/index.vue
  8. 68
      src/views/collectReorganizi/collectionLibrary/module/collectHeader.vue
  9. 6
      src/views/collectReorganizi/collectionLibrary/project/index.vue
  10. 28
      src/views/collectReorganizi/recycled/index.vue
  11. 63
      src/views/prearchiveLibrary/module/moveFile.vue

4
src/assets/styles/archives-manage.scss

@ -774,7 +774,11 @@
.el-button{
margin-left: 10px;
}
&.is-recycle{
margin-right: 0;
}
}
}
[data-theme=dark] .collect-header{

12
src/views/collectReorganizi/collectionLibrary/anjuan/content.vue

@ -1,12 +1,12 @@
<template>
<div :class="selectedCategory.arrangeType === 1 ? 'collect-no-tab' : ''">
<ul v-if="!(selectedCategory.arrangeType === 1)" class="tab-nav">
<div :class="selectedCategory.arrangeType === 1 || isRecycle ? 'collect-no-tab' : ''">
<ul v-if="!isRecycle && selectedCategory.arrangeType !== 1" class="tab-nav">
<li :class="{ 'active-tab-nav': activeIndex == 0 }" @click="changeActiveTab(0)">已整理<i /></li>
<li :class="{ 'active-tab-nav': activeIndex == 1 }" @click="changeActiveTab(1)">未整理<i /></li>
<!-- 最右侧装饰img -->
<span class="tab-right-img" />
</ul>
<TableListMoudle ref="tableList" :is-title-type="isTitleType" :selected-category="selectedCategory" :active-index="activeIndex" :test="test" />
<TableListMoudle ref="tableList" :is-title-type="isTitleType" :selected-category="selectedCategory" :active-index="activeIndex" :test="test" :is-recycle="isRecycle" />
</div>
</template>
@ -25,6 +25,10 @@ export default {
default: function() {
return {}
}
},
isRecycle: {
type: Boolean,
default: false
}
},
data() {
@ -37,6 +41,8 @@ export default {
created() {
},
mounted() {
console.log((!this.isRecycle && this.selectedCategory.arrangeType !== 1))
console.log('isRecycle', this.isRecycle)
console.log('test', this.test)
},
methods: {

8
src/views/collectReorganizi/collectionLibrary/anjuan/index.vue

@ -1,6 +1,6 @@
<template>
<div>
<AnjuanContent v-if="selectedCategory.arrangeType === 1 || selectedCategory.arrangeType === 2" ref="ajContent" class="ajContent" :selected-category="selectedCategory" />
<AnjuanContent v-if="selectedCategory.arrangeType === 1 || selectedCategory.arrangeType === 2" ref="ajContent" class="ajContent" :selected-category="selectedCategory" :is-recycle="isRecycle" />
<el-drawer
v-else
class="anjuan-drawer"
@ -12,7 +12,7 @@
direction="rtl"
size="90%"
>
<AnjuanContent ref="ajContent" :selected-category="selectedCategory" />
<AnjuanContent ref="ajContent" :selected-category="selectedCategory" :is-recycle="isRecycle" />
<span class="closed-btn" @click="closeDrawer" />
</el-drawer>
</div>
@ -33,6 +33,10 @@ export default {
default: function() {
return {}
}
},
isRecycle: {
type: Boolean,
default: false
}
},
data() {

6
src/views/collectReorganizi/collectionLibrary/anjuan/tableList.vue

@ -1,6 +1,6 @@
<template>
<div>
<CollectHeader :is-title-type="isTitleType" :selected-category="selectedCategory" :arc-id="arcId" :selections="selections" :active-index="activeIndex" :test="test" />
<CollectHeader :is-title-type="isTitleType" :selected-category="selectedCategory" :arc-id="arcId" :selections="selections" :active-index="activeIndex" :test="test" :is-recycle="isRecycle" />
<el-table
ref="table"
v-loading="crud.loading || getTableDisplayFieldsLoading"
@ -81,6 +81,10 @@ export default {
test: {
type: String,
default: ''
},
isRecycle: {
type: Boolean,
default: false
}
},
data() {

6
src/views/collectReorganizi/collectionLibrary/file/index.vue

@ -8,7 +8,7 @@
direction="rtl"
:size="((selectedCategory.arrangeType === 2 && isAjNo === 0) || (selectedCategory.arrangeType === 3 && isAjNo === 1)) ? '80%' : (isAjNo === 1) ? '90%' : (selectedCategory.arrangeType === 1) ? '90%' : '70%'"
>
<CollectHeader :is-title-type="isTitleType" :selected-category="selectedCategory" :selections="selections" :test="test" />
<CollectHeader :is-title-type="isTitleType" :selected-category="selectedCategory" :selections="selections" :test="test" :is-recycle="isRecycle" />
<span class="closed-btn" @click="closeDrawer" />
<el-table
ref="table"
@ -82,6 +82,10 @@ export default {
default: function() {
return {}
}
},
isRecycle: {
type: Boolean,
default: false
}
},
data() {

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

@ -51,7 +51,7 @@
<!-- @node-click="handleNodeClick" -->
<el-tree
ref="tree"
v-loading="crud.loading"
v-loading="classifyLoading"
class="arc-tree arc-tree-02"
:data="classifyTree"
:props="defaultClassifyProps"
@ -76,10 +76,10 @@
<div class="container-right tab-content">
<span class="right-top-line" />
<span class="left-bottom-line" />
<Project v-if="selectedCategory.arrangeType === 3" ref="projectEle" :selected-category="selectedCategory" :data="sharedData" @openAnjuan="handleOpenAnjuan" />
<Anjuan v-if="selectedCategory.arrangeType === 1 || selectedCategory.arrangeType === 2 || selectedCategory.arrangeType === 3" ref="anjuanEle" :selected-category="selectedCategory" :data="sharedData" @openJuannei="handleOpenJuannei" />
<Juannei v-if="selectedCategory.arrangeType === 2 || selectedCategory.arrangeType === 3" ref="juanneiEle" :data="sharedData" :selected-category="selectedCategory" @openFile="handleOpenFile" />
<File v-if="selectedCategory.arrangeType === 1 || selectedCategory.arrangeType === 2 || selectedCategory.arrangeType === 3" ref="fileEle" :selected-category="selectedCategory" />
<Project v-if="selectedCategory.arrangeType === 3" ref="projectEle" :selected-category="selectedCategory" :data="sharedData" :is-recycle="isRecycle" @openAnjuan="handleOpenAnjuan" />
<Anjuan v-if="selectedCategory.arrangeType === 1 || selectedCategory.arrangeType === 2 || selectedCategory.arrangeType === 3" ref="anjuanEle" :selected-category="selectedCategory" :data="sharedData" :is-recycle="isRecycle" @openJuannei="handleOpenJuannei" />
<Juannei v-if="selectedCategory.arrangeType === 2 || selectedCategory.arrangeType === 3" ref="juanneiEle" :data="sharedData" :selected-category="selectedCategory" :is-recycle="isRecycle" @openFile="handleOpenFile" />
<File v-if="selectedCategory.arrangeType === 1 || selectedCategory.arrangeType === 2 || selectedCategory.arrangeType === 3" ref="fileEle" :is-recycle="isRecycle" :selected-category="selectedCategory" />
</div>
</div>
</div>
@ -114,6 +114,12 @@ export default {
]
},
mixins: [presenter(), header()],
props: {
isRecycle: {
type: Boolean,
default: false
}
},
data() {
return {
defaultProps: {
@ -126,7 +132,12 @@ export default {
},
sharedData: '',
selectedCategory: {},
classifyTree: []
classifyTree: [],
classifyLoading: false
}
},
watch: {
isRecycle: function(newValue, oldValue) {
}
},
created() {
@ -235,11 +246,13 @@ export default {
}
},
getInitArchivesClass(categoryId) {
this.classifyLoading = true
const params = {
'categoryId': categoryId
}
FetchArchivesClassTree(params).then((res) => {
this.classifyTree = res
this.classifyLoading = false
}).catch(err => {
console.log(err)
})

6
src/views/collectReorganizi/collectionLibrary/juannei/index.vue

@ -8,7 +8,7 @@
direction="rtl"
:size="selectedCategory.arrangeType === 2 ? '90%' :'80%'"
>
<CollectHeader :is-title-type="isTitleType" :selected-category="selectedCategory" :selections="selections" :test="test" />
<CollectHeader :is-title-type="isTitleType" :selected-category="selectedCategory" :selections="selections" :test="test" :is-recycle="isRecycle" />
<el-table
ref="table"
v-loading="crud.loading || getTableDisplayFieldsLoading"
@ -78,6 +78,10 @@ export default {
default: function() {
return {}
}
},
isRecycle: {
type: Boolean,
default: false
}
},
data() {

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

@ -1,13 +1,13 @@
<template>
<div class="collect-header">
<h4 :class="classType">{{ collectTitle }} <span v-if="isTitleType !== 2 && !(isTitleType === 3 && (selectedCategory.arrangeType === 1 || selectedCategory.arrangeType === 2) )"> > {{ test }}</span></h4>
<div v-if="isTitleType !== 6" class="head-search">
<div v-if="isTitleType !== 6" :class="[!(isRecycle && (isTitleType === 2 || (isTitleType === 3 && selectedCategory.arrangeType !== 3))) ? 'head-search is-recycle':'head-search']">
<!-- 搜索 -->
<el-input v-model="query.blurry" clearable size="small" :placeholder="placeholderType" prefix-icon="el-icon-search" style="width: 200px;" class="filter-item" />
<el-button class="filter-item filter-search" size="mini" type="success" icon="el-icon-search">搜索</el-button>
<el-button class="filter-item filter-refresh" size="mini" type="warning" icon="el-icon-refresh-left">重置</el-button>
</div>
<div class="collect-menu">
<div v-if="!isRecycle" class="collect-menu">
<el-menu
:default-active="activeMenuIndex"
mode="horizontal"
@ -79,6 +79,11 @@
</el-menu>
</div>
<div v-if="isRecycle && (isTitleType === 2 || (isTitleType === 3 && selectedCategory.arrangeType !== 3))" class="collect-menu">
<el-button class="filter-item" size="mini" type="success" @click="toRecover"><i class="iconfont icon-huifu" />恢复</el-button>
<el-button class="filter-item" size="mini" type="success" @click="toCompletelyDelete"><i class="iconfont icon-shanchu" />彻底删除</el-button>
</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" />
@ -227,6 +232,35 @@
<!-- 快速组卷 -->
<QuickPaper ref="quickPaperRef" />
<!-- 回收站 - 恢复 -->
<el-dialog class="tip-dialog" title="提示" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="recoverVisible">
<div class="setting-dialog">
<div class="tip-content">
<p class="tipMsg">此恢复将会把所选条目及其子集一并恢复</p>
<span>你是否还要继续?</span>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="recoverVisible = false">取消</el-button>
<el-button type="primary" @click.native="handleRecover">确定</el-button>
</div>
</div>
</el-dialog>
<!-- 回收站 - 彻底删除 -->
<el-dialog class="tip-dialog" title="提示" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="completelyDeleteVisible">
<div class="setting-dialog">
<div class="tip-content">
<p class="tipMsg">此删除将把会所选条目与其子集彻底删除</p>
<span>你是否还要继续?</span>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="completelyDeleteVisible = false">取消</el-button>
<el-button type="primary" @click.native="handleCompletelyDelete">确定</el-button>
</div>
</div>
</el-dialog>
</div>
</template>
@ -280,6 +314,10 @@ export default {
default: function() {
return ''
}
},
isRecycle: {
type: Boolean,
default: false
}
},
data() {
@ -298,7 +336,9 @@ export default {
filingVisible: false,
exportVisible: false,
returnVisible: false,
downloadVisible: false
downloadVisible: false,
recoverVisible: false,
completelyDeleteVisible: false
}
},
computed: {
@ -589,6 +629,28 @@ export default {
this.$message('下载操作只可勾选唯一目标条目,请先确认!')
return false
}
},
// -
toRecover() {
if (this.selections.length === 0) {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
this.recoverVisible = true
},
handleRecover() {
this.recoverVisible = false
},
// -
toCompletelyDelete() {
if (this.selections.length === 0) {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
this.completelyDeleteVisible = true
},
handleCompletelyDelete() {
this.completelyDeleteVisible = false
}
}
}

6
src/views/collectReorganizi/collectionLibrary/project/index.vue

@ -1,6 +1,6 @@
<template>
<div class="collect-no-tab">
<CollectHeader ref="collectHeaderRef" :is-title-type="isTitleType" :selected-category="selectedCategory" :arc-id="arcId" :selections="selections" />
<CollectHeader ref="collectHeaderRef" :is-title-type="isTitleType" :selected-category="selectedCategory" :arc-id="arcId" :selections="selections" :is-recycle="isRecycle" />
<!-- <el-button type="text" @click="openAnjuan">打开案卷的Drawer</el-button> -->
<el-table
ref="table"
@ -74,6 +74,10 @@ export default {
default: function() {
return {}
}
},
isRecycle: {
type: Boolean,
default: false
}
},
data() {

28
src/views/collectReorganizi/recycled/index.vue

@ -0,0 +1,28 @@
<template>
<div>
<CollectModule :is-recycle="isRecycle" />
</div>
</template>
<script>
import CollectModule from '../collectionLibrary/index'
export default {
name: 'Recycled',
components: { CollectModule },
data() {
return {
isRecycle: true
}
},
computed: {
},
created() {
},
methods: {
}
}
</script>
<style lang='scss' scoped>
</style>

63
src/views/prearchiveLibrary/module/moveFile.vue

@ -13,18 +13,40 @@
node-key="id"
:props="defaultProps"
:expand-on-click-node="false"
@node-click="handleNodeClick"
@node-click="handleMoveNodeClick"
/>
</div>
<div class="move-right">
<h4>整编库已整理列表</h4>
<div style="padding: 10px;">
<el-select v-model="query.status" placeholder="选择状态" style="width: 100px;" :disabled="selectedCategoryMove && selectedCategoryMove.arrangeType === 1">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
<el-input v-model="query.keyWord" placeholder="输入题名或档号搜索" style="width: 200px;" />
<el-button class="filter-item filter-search" size="mini" type="success" icon="el-icon-search">搜索</el-button>
</div>
<div class="raido-main">
<el-radio v-model="radio" label="1">档案A</el-radio>
<el-radio v-model="radio" label="2">档案B</el-radio>
<el-radio v-model="radio" label="3">档案C</el-radio>
<el-radio v-model="radio" label="4">档案D</el-radio>
<el-radio v-model="radio" label="5">档案E</el-radio>
<el-radio v-model="radio" label="6">档案F</el-radio>
<!-- @select="handleSelect"
@selection-change="selectionChangeHandler"
@row-click="clickRowHandler" -->
<el-table
ref="table"
v-loading="crud.loading"
lazy
:show-header="false"
:data="tableData"
:row-key="getRowKey"
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
highlight-current-row
>
<el-table-column type="selection" align="center" width="55" />
<el-table-column prop="status" label="状态" />
<el-table-column :show-overflow-tooltip="true" prop="scopeName" label="名称" />
</el-table>
</div>
<el-pagination
:current-page="currentPage"
@ -63,8 +85,23 @@ export default {
mixins: [presenter(), header(), crud(), preLibraryCrud],
data() {
return {
selectedCategoryMove: {},
options: [
{
value: 1,
label: '已整理'
},
{
value: 2,
label: '未整理'
}
],
query: {
status: '',
keyWord: ''
},
moveVisible: false,
radio: 1,
tableData: [],
defaultProps: { children: 'children', label: 'cnName' },
currentPage: 1
}
@ -96,17 +133,17 @@ export default {
this.expandParents(this.$refs.treeMove.getNode(selectedKey).parent)
}
//
this.handleNodeClick(selectedKey)
this.handleMoveNodeClick(selectedKey)
})
}
})
},
//
handleNodeClick(val) {
handleMoveNodeClick(val) {
if (val) {
this.selectedCategory = val
this.selectedCategoryMove = val
if (val.pid !== '0') {
Vue.set(this.selectedCategory, 'parentName', this.$refs.treeMove.getNode(val.pid).data.cnName)
Vue.set(this.selectedCategoryMove, 'parentName', this.$refs.treeMove.getNode(val.pid).data.cnName)
}
}
},

Loading…
Cancel
Save