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{ .el-button{
margin-left: 10px; margin-left: 10px;
} }
&.is-recycle{
margin-right: 0;
}
} }
} }
[data-theme=dark] .collect-header{ [data-theme=dark] .collect-header{

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

@ -1,12 +1,12 @@
<template> <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 == 0 }" @click="changeActiveTab(0)">已整理<i /></li>
<li :class="{ 'active-tab-nav': activeIndex == 1 }" @click="changeActiveTab(1)">未整理<i /></li> <li :class="{ 'active-tab-nav': activeIndex == 1 }" @click="changeActiveTab(1)">未整理<i /></li>
<!-- 最右侧装饰img --> <!-- 最右侧装饰img -->
<span class="tab-right-img" /> <span class="tab-right-img" />
</ul> </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> </div>
</template> </template>
@ -25,6 +25,10 @@ export default {
default: function() { default: function() {
return {} return {}
} }
},
isRecycle: {
type: Boolean,
default: false
} }
}, },
data() { data() {
@ -37,6 +41,8 @@ export default {
created() { created() {
}, },
mounted() { mounted() {
console.log((!this.isRecycle && this.selectedCategory.arrangeType !== 1))
console.log('isRecycle', this.isRecycle)
console.log('test', this.test) console.log('test', this.test)
}, },
methods: { methods: {

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

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

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

@ -1,6 +1,6 @@
<template> <template>
<div> <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 <el-table
ref="table" ref="table"
v-loading="crud.loading || getTableDisplayFieldsLoading" v-loading="crud.loading || getTableDisplayFieldsLoading"
@ -81,6 +81,10 @@ export default {
test: { test: {
type: String, type: String,
default: '' default: ''
},
isRecycle: {
type: Boolean,
default: false
} }
}, },
data() { data() {

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

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

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

@ -51,7 +51,7 @@
<!-- @node-click="handleNodeClick" --> <!-- @node-click="handleNodeClick" -->
<el-tree <el-tree
ref="tree" ref="tree"
v-loading="crud.loading"
v-loading="classifyLoading"
class="arc-tree arc-tree-02" class="arc-tree arc-tree-02"
:data="classifyTree" :data="classifyTree"
:props="defaultClassifyProps" :props="defaultClassifyProps"
@ -76,10 +76,10 @@
<div class="container-right tab-content"> <div class="container-right tab-content">
<span class="right-top-line" /> <span class="right-top-line" />
<span class="left-bottom-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> </div>
</div> </div>
@ -114,6 +114,12 @@ export default {
] ]
}, },
mixins: [presenter(), header()], mixins: [presenter(), header()],
props: {
isRecycle: {
type: Boolean,
default: false
}
},
data() { data() {
return { return {
defaultProps: { defaultProps: {
@ -126,7 +132,12 @@ export default {
}, },
sharedData: '', sharedData: '',
selectedCategory: {}, selectedCategory: {},
classifyTree: []
classifyTree: [],
classifyLoading: false
}
},
watch: {
isRecycle: function(newValue, oldValue) {
} }
}, },
created() { created() {
@ -235,11 +246,13 @@ export default {
} }
}, },
getInitArchivesClass(categoryId) { getInitArchivesClass(categoryId) {
this.classifyLoading = true
const params = { const params = {
'categoryId': categoryId 'categoryId': categoryId
} }
FetchArchivesClassTree(params).then((res) => { FetchArchivesClassTree(params).then((res) => {
this.classifyTree = res this.classifyTree = res
this.classifyLoading = false
}).catch(err => { }).catch(err => {
console.log(err) console.log(err)
}) })

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

@ -8,7 +8,7 @@
direction="rtl" direction="rtl"
:size="selectedCategory.arrangeType === 2 ? '90%' :'80%'" :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 <el-table
ref="table" ref="table"
v-loading="crud.loading || getTableDisplayFieldsLoading" v-loading="crud.loading || getTableDisplayFieldsLoading"
@ -78,6 +78,10 @@ export default {
default: function() { default: function() {
return {} return {}
} }
},
isRecycle: {
type: Boolean,
default: false
} }
}, },
data() { data() {

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

@ -1,13 +1,13 @@
<template> <template>
<div class="collect-header"> <div class="collect-header">
<h4 :class="classType">{{ collectTitle }} <span v-if="isTitleType !== 2 && !(isTitleType === 3 && (selectedCategory.arrangeType === 1 || selectedCategory.arrangeType === 2) )"> > {{ test }}</span></h4> <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-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-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> <el-button class="filter-item filter-refresh" size="mini" type="warning" icon="el-icon-refresh-left">重置</el-button>
</div> </div>
<div class="collect-menu">
<div v-if="!isRecycle" class="collect-menu">
<el-menu <el-menu
:default-active="activeMenuIndex" :default-active="activeMenuIndex"
mode="horizontal" mode="horizontal"
@ -79,6 +79,11 @@
</el-menu> </el-menu>
</div> </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"> <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-right-top" />
@ -227,6 +232,35 @@
<!-- 快速组卷 --> <!-- 快速组卷 -->
<QuickPaper ref="quickPaperRef" /> <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> </div>
</template> </template>
@ -280,6 +314,10 @@ export default {
default: function() { default: function() {
return '' return ''
} }
},
isRecycle: {
type: Boolean,
default: false
} }
}, },
data() { data() {
@ -298,7 +336,9 @@ export default {
filingVisible: false, filingVisible: false,
exportVisible: false, exportVisible: false,
returnVisible: false, returnVisible: false,
downloadVisible: false
downloadVisible: false,
recoverVisible: false,
completelyDeleteVisible: false
} }
}, },
computed: { computed: {
@ -589,6 +629,28 @@ export default {
this.$message('下载操作只可勾选唯一目标条目,请先确认!') this.$message('下载操作只可勾选唯一目标条目,请先确认!')
return false 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> <template>
<div class="collect-no-tab"> <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-button type="text" @click="openAnjuan">打开案卷的Drawer</el-button> -->
<el-table <el-table
ref="table" ref="table"
@ -74,6 +74,10 @@ export default {
default: function() { default: function() {
return {} return {}
} }
},
isRecycle: {
type: Boolean,
default: false
} }
}, },
data() { 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" node-key="id"
:props="defaultProps" :props="defaultProps"
:expand-on-click-node="false" :expand-on-click-node="false"
@node-click="handleNodeClick"
@node-click="handleMoveNodeClick"
/> />
</div> </div>
<div class="move-right"> <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"> <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> </div>
<el-pagination <el-pagination
:current-page="currentPage" :current-page="currentPage"
@ -63,8 +85,23 @@ export default {
mixins: [presenter(), header(), crud(), preLibraryCrud], mixins: [presenter(), header(), crud(), preLibraryCrud],
data() { data() {
return { return {
selectedCategoryMove: {},
options: [
{
value: 1,
label: '已整理'
},
{
value: 2,
label: '未整理'
}
],
query: {
status: '',
keyWord: ''
},
moveVisible: false, moveVisible: false,
radio: 1,
tableData: [],
defaultProps: { children: 'children', label: 'cnName' }, defaultProps: { children: 'children', label: 'cnName' },
currentPage: 1 currentPage: 1
} }
@ -96,17 +133,17 @@ export default {
this.expandParents(this.$refs.treeMove.getNode(selectedKey).parent) this.expandParents(this.$refs.treeMove.getNode(selectedKey).parent)
} }
// //
this.handleNodeClick(selectedKey)
this.handleMoveNodeClick(selectedKey)
}) })
} }
}) })
}, },
// //
handleNodeClick(val) {
handleMoveNodeClick(val) {
if (val) { if (val) {
this.selectedCategory = val
this.selectedCategoryMove = val
if (val.pid !== '0') { 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