Browse Source

详情/批量挂接/上传目录/归档/样式修改

master
xuhuajiao 1 year ago
parent
commit
8646ce65c9
  1. 134
      src/views/collectReorganizi/batchConnection/module/form.vue
  2. 5
      src/views/collectReorganizi/collectionLibrary/anjuan/content.vue
  3. 40
      src/views/collectReorganizi/collectionLibrary/anjuan/tableList.vue
  4. 9
      src/views/collectReorganizi/collectionLibrary/index.vue
  5. 31
      src/views/collectReorganizi/collectionLibrary/juannei/index.vue
  6. 5
      src/views/collectReorganizi/collectionLibrary/mixins/index.js
  7. 10
      src/views/collectReorganizi/collectionLibrary/module/archivesFilling/index.vue
  8. 8
      src/views/collectReorganizi/collectionLibrary/module/archivesInfo/index.vue
  9. 114
      src/views/collectReorganizi/collectionLibrary/module/collectHeader.vue
  10. 2
      src/views/collectReorganizi/collectionLibrary/module/fourTestInfo/index.vue
  11. 2
      src/views/collectReorganizi/collectionLibrary/module/handleInfo/index.vue
  12. 6
      src/views/collectReorganizi/collectionLibrary/module/uploadFile/index.vue
  13. 4
      src/views/collectReorganizi/collectionLibrary/module/uploadOriginal/index.vue
  14. 10
      src/views/collectReorganizi/collectionLibrary/project/index.vue
  15. 20
      src/views/collectReorganizi/externalReception/index.vue
  16. 82
      src/views/components/archivesListModule/index.vue

134
src/views/collectReorganizi/batchConnection/module/form.vue

@ -1,9 +1,9 @@
<template>
<!-- 本地挂接 -->
<el-dialog title="本地挂接" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="localHitchVisible" @opened="opened">
<el-dialog title="本地挂接" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="localHitchVisible" :before-close="handleCancel" @opened="opened">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="重复验证方式" prop="hitchType">
<el-select v-model="form.hitchType" placeholder="请选择" style="width: 400px;">
<el-form-item label="重复验证方式" prop="checkRepeatType">
<el-select v-model="form.checkRepeatType" placeholder="请选择" style="width: 400px;">
<el-option
v-for="item in typeOptions"
:key="item.value"
@ -23,10 +23,15 @@
</el-select>
</el-form-item>
<el-form-item label="挂接详情" prop="hitchRemark">
<el-input v-model="form.hitchRemark" style="width: 400px;" />
<div class="tag-wrapper">
<el-tag v-for="item in hitchRemarkArray" :key="item" :closable="item !== '*'" @close="removeTag(item)">
{{ item }}
</el-tag>
</div>
<el-input v-model="form.hitchRemark" style="display: none;" type="hidden" />
</el-form-item>
<el-form-item label="匹配模式" prop="matchedPattern">
<el-select v-model="form.matchedPattern" placeholder="请选择" style="width: 400px;">
<el-form-item label="匹配模式" prop="matchingMode">
<el-select v-model="form.matchingMode" placeholder="请选择" style="width: 400px;" @change="changeMatchedType">
<el-option
v-for="item in matchedOptions"
:key="item.value"
@ -37,9 +42,13 @@
</el-form-item>
<el-form-item label="上传附件" prop="file">
<div class="upload-bgColor">
<input class="upload-input" type="file" style="width: 110px; height: 32px;" @change="handleFile">
<input class="upload-input" type="file" accept=".zip" style="width: 110px; height: 32px;" @change="handleFile">
<el-button size="small" type="primary"><i class="iconfont icon-shangchuan" />点击上传</el-button>
</div>
<!-- <div class="file-list">
<i class="iconfont icon-xiaowenjian" />
{{ form.file && form.file.name }}
</div> -->
<div v-for="item in fileList" :key="item.name" class="file-list">
<i class="iconfont icon-xiaowenjian" />
{{ item.name }}
@ -71,54 +80,55 @@ export default {
data() {
return {
localHitchVisible: false,
hitchRemarkArray: [],
form: {
hitchType: null,
checkRepeatType: null,
hitchFiled: null,
matchedPattern: '1',
matchingMode: 1,
hitchRemark: null,
file: null
},
fileList: [],
typeOptions: [
{
value: '1',
value: 1,
label: '跳过'
},
{
value: '2',
value: 2,
label: '覆盖'
},
{
value: '3',
value: 3,
label: '追加'
}
],
matchedOptions: [
{
value: '1',
value: 1,
label: '全量匹配'
},
{
value: '2',
value: 2,
label: '前缀模糊匹配'
},
{
value: '3',
value: 3,
label: '后缀模糊匹配'
}
],
fieldOptions: [],
rules: {
hitchType: [
checkRepeatType: [
{ required: true, message: '请选择', trigger: 'change' }
],
hitchFiled: [
{ required: true, message: '请选择', trigger: 'change' }
],
hitchRemark: [
{ required: true, message: '请输入', trigger: 'blur' }
{ required: true, message: '请选择上面挂接字段生成挂接详情', trigger: 'blur' }
],
matchedPattern: [
matchingMode: [
{ required: true, message: '请选择', trigger: 'change' }
],
file: [
@ -150,27 +160,27 @@ export default {
},
handleFile(event) {
const files = event.target.files
// const file = files[0] //
// const allowedExtensions = /(\.xlsx)$/i // xlsx
// if (!allowedExtensions.exec(file.name)) {
// this.$message.warning('Excel') //
// event.target.value = '' //
// return false
// }
console.log(files)
for (let i = 0; i < files.length; i++) {
this.fileList = []
this.form.file = null
this.fileList.push(files[i])
this.form.file = files[i]
// this.form.file = files[i]
}
},
handleCancel() {
this.$refs['form'].resetFields()
this.fileList = []
this.form.file = null
this.localHitchVisible = false
},
handleComfired() {
if (this.hitchRemarkArray.length !== 0) {
if (this.hitchRemarkArray.length === 1) {
const index = this.hitchRemarkArray.indexOf('*')
if (index !== -1) {
this.form.hitchRemark = ''
}
} else {
this.form.hitchRemark = this.hitchRemarkArray.join('')
}
} else {
this.form.hitchRemark = ''
}
console.log(this.form)
this.$refs['form'].validate((valid) => {
if (valid) {
this.localHitchVisible = false
@ -195,18 +205,53 @@ export default {
})
},
selectFiled(val) {
console.log('val', val)
if (val) {
if (this.form.hitchRemark && this.form.hitchRemark.includes(val)) {
if (this.hitchRemarkArray && this.hitchRemarkArray.includes('$' + val + '$')) {
this.$message.warning('请注意当前选择的挂接字段,在挂接详情内已存在!')
} else {
if (!this.form.hitchRemark) {
this.form.hitchRemark = '$' + val + '$'
const lastItemIndex = this.hitchRemarkArray.length - 1
const index = this.hitchRemarkArray.indexOf('*')
if (index !== -1) {
if (index === lastItemIndex) {
if (this.form.matchingMode === 2) {
this.hitchRemarkArray.unshift('$' + val + '$')
} else if (this.form.matchingMode === 3) {
this.hitchRemarkArray.push('$' + val + '$')
} else {
this.hitchRemarkArray.splice(index > 0 ? index : 0, 0, '$' + val + '$')
}
} else {
this.hitchRemarkArray.push('$' + val + '$')
}
} else {
this.form.hitchRemark += ' $' + val + '$'
this.hitchRemarkArray.push('$' + val + '$')
}
}
}
},
changeMatchedType(val) {
const symbol = '*'
const index = this.hitchRemarkArray.indexOf(symbol)
if (index !== -1) {
this.hitchRemarkArray.splice(index, 1)
}
if (val === 2) {
this.hitchRemarkArray.push(symbol)
} else if (val === 3) {
this.hitchRemarkArray.unshift(symbol)
}
},
removeTag(tag) {
const index = this.hitchRemarkArray.indexOf(tag)
if (index !== -1) {
this.hitchRemarkArray.splice(index, 1)
}
},
handleCancel() {
this.$refs.form.resetFields()
this.hitchRemarkArray = []
this.form.file = null
this.localHitchVisible = false
}
}
}
@ -228,4 +273,17 @@ export default {
font-size: 12px;
color: #A6ADB6;
}
.tag-wrapper{
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
width: 400px;
min-height: 32px;
padding: 0 10px;
border-radius: 3px;
border: 1px solid #e6e8ed;
.el-tag{
margin-right: 6px;
}
}
</style>

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

@ -6,7 +6,7 @@
<!-- 最右侧装饰img -->
<span class="tab-right-img" />
</ul>
<TableListMoudle ref="tableList" :is-title-type="isTitleType" :selected-category="selectedCategory" :active-index="activeIndex" :is-recycle="isRecycle" :smart-query="smartQuery" />
<TableListMoudle ref="tableList" :is-title-type="isTitleType" :selected-category="selectedCategory" :active-index="activeIndex" :is-recycle="isRecycle" :smart-query="smartQuery" :test="test" />
</div>
</template>
@ -40,7 +40,8 @@ export default {
data() {
return {
isTitleType: 3,
activeIndex: 0
activeIndex: 0,
test: ''
}
},
created() {

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

@ -1,6 +1,6 @@
<template>
<div>
<CollectHeader ref="collectHeaderRef" :is-title-type="isTitleType" :selected-category="selectedCategory" :arc-id="arcId" :selections="selections" :active-index="activeIndex" :is-recycle="isRecycle" />
<collectHeader ref="collectHeaderRef" :is-title-type="isTitleType" :selected-category="selectedCategory" :arc-id="arcId" :selections="selections" :active-index="activeIndex" :is-recycle="isRecycle" :test="test" />
<div class="collect-table">
<el-table
ref="table"
@ -40,6 +40,11 @@
{{ scope.row[field.fieldName] }}
</template>
</el-table-column>
<el-table-column v-if="!isRecycle && !(isTitleType === 3 && activeIndex === 1 && selectedCategory.arrangeType !== 1 )" label="归档审批" width="88" align="center" :fixed="parentsData.fixedStatusBar ? false : 'right' ">
<template slot-scope="scope">
<span :class="['row-state', 'row-warehousing', scope.row.collect_formal===2 ? 'state-active' : '' ]">{{ scope.row.collect_formal===2 ? '锁定': '-' }}</span>
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
@ -62,10 +67,10 @@
import { header, form } from '@crud/crud'
import { collectionLibraryCrud } from '../mixins/index'
import ArchivesInfo from '../module/archivesInfo/index'
import CollectHeader from '../module/collectHeader.vue'
import collectHeader from '../module/collectHeader.vue'
export default {
name: 'Sorted',
components: { ArchivesInfo, CollectHeader },
components: { ArchivesInfo, collectHeader },
mixins: [
header(),
form({}),
@ -95,6 +100,10 @@ export default {
default: function() {
return {}
}
},
test: {
type: String,
default: ''
}
},
inject: ['parentsData'],
@ -151,12 +160,12 @@ export default {
sendYearDataToParent() {
this.$parent.$parent.$emit('myYearEvent', this.yearData)
},
openJuannei(data, parentId) {
openJuannei(data, parentId, parentRow) {
// this.$emit('openJuannei', '')
if (this.selectedCategory.arrangeType === 3) {
this.$parent.$parent.$parent.$emit('openJuannei', data, parentId)
this.$parent.$parent.$parent.$emit('openJuannei', data, parentId, parentRow)
} else {
this.$parent.$parent.$emit('openJuannei', data, parentId)
this.$parent.$parent.$emit('openJuannei', data, parentId, parentRow)
}
},
// table
@ -224,9 +233,9 @@ export default {
}
this.timer = setTimeout(() => {
this.parentId = row.id
this.openJuannei('所属' + this.title + ':' + row.archive_no, this.parentId)
this.openJuannei('所属' + this.title + ':' + row.archive_no, this.parentId, row)
}, 300)
this.selections = this.crud.selections
// this.selections = this.crud.selections
},
//
handleCurrentChange(selection, row) {
@ -267,4 +276,19 @@ export default {
<style lang='scss' scoped>
@import "~@/assets/styles/collect-reorganizi.scss";
@mixin management-fixed-style{
[data-theme="dark"] & {
background-color: #031435 !important;
-webkit-box-shadow: -5px 5px 10px 1px rgba(15,164,222,.16);
box-shadow: -5px 5px 10px 1px rgba(15,164,222,.16);
}
[data-theme="light"] & {
background-color: #fff;
}
}
.el-table {
::v-deep .el-table__fixed-right {
@include management-fixed-style;
}
}
</style>

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

@ -63,7 +63,7 @@
<script>
import crudCategory from '@/api/category/category'
import { collectionLibraryCrud } from './mixins/index'
import { collectionLibraryCrud } from './mixins/index.js'
import { FetchDictionaryTreeByCategoryId } from '@/api/system/dict'
import CRUD, { presenter, header } from '@crud/crud'
import Project from './project/index'
@ -122,6 +122,7 @@ export default {
sharedData: '',
selectedCategory: {},
yearChildData: '',
parentsAnjuanRow: null,
parentsProjectId: null,
parentsAnjuanId: null,
parentsJuanneiId: null,
@ -133,7 +134,8 @@ export default {
'archive_year': null, //
'fonds_no': null //
},
isTabFile: false
isTabFile: false,
fixedStatusBar: false
}
},
watch: {
@ -391,8 +393,9 @@ export default {
this.$refs.anjuanEle.$refs.ajContent.test = data
})
},
handleOpenJuannei(data, parentId) {
handleOpenJuannei(data, parentId, parentsRow) {
this.parentsAnjuanId = parentId
this.parentsAnjuanRow = parentsRow
if (this.selectedCategory.arrangeType === 1 || (this.selectedCategory.arrangeType === 3 && this.$refs.anjuanEle.$refs.ajContent.activeIndex === 1) || (this.selectedCategory.arrangeType === 2 && this.$refs.anjuanEle.$refs.ajContent.activeIndex === 1)) {
this.$refs.fileEle.fileDrawer = true
this.$nextTick(() => {

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

@ -8,7 +8,7 @@
direction="rtl"
:size="selectedCategory.arrangeType === 2 ? '90%' :'80%'"
>
<CollectHeader ref="collectHeaderRef" :is-title-type="isTitleType" :selected-category="selectedCategory" :selections="selections" :test="test" :is-recycle="isRecycle" />
<collectHeader ref="collectHeaderRef" :is-title-type="isTitleType" :selected-category="selectedCategory" :selections="selections" :test="test" :is-recycle="isRecycle" />
<div class="collect-table">
<el-table
ref="table"
@ -48,6 +48,11 @@
{{ scope.row[field.fieldName] }}
</template>
</el-table-column>
<el-table-column v-if="!isRecycle" label="归档审批" width="88" align="center" :fixed="parentsData.fixedStatusBar ? false : 'right' ">
<template slot-scope="scope">
<span :class="['row-state', 'row-warehousing', scope.row.collect_formal===2 ? 'state-active' : '' ]">{{ scope.row.collect_formal===2 ? '锁定': '-' }}</span>
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
@ -70,11 +75,11 @@
<script>
import { collectionLibraryCrud } from '../mixins/index'
import { header, form } from '@crud/crud'
import CollectHeader from '../module/collectHeader.vue'
import collectHeader from '../module/collectHeader.vue'
import ArchivesInfo from '../module/archivesInfo/index'
export default {
name: 'Juannei',
components: { CollectHeader, ArchivesInfo },
components: { collectHeader, ArchivesInfo },
mixins: [
header(),
form({}),
@ -114,7 +119,7 @@ export default {
selectedCategory: function(newValue, oldValue) {
},
tableDisplayFields(val) {
// this.doLayout()
this.doLayout()
}
},
created() {
@ -138,7 +143,6 @@ export default {
},
// table
tableRowClassName({ row, rowIndex }) {
// console.log('', row, rowIndex)
let color = ''
this.selections.forEach(item => {
if (item.id === row.id) {
@ -183,7 +187,7 @@ export default {
this.parentId = row.id
this.openFile('所属卷内:' + row.archive_no, this.parentId)
}, 300)
this.selections = this.crud.selections
// this.selections = this.crud.selections
},
//
handleCurrentChange(selection, row) {
@ -204,4 +208,19 @@ export default {
<style lang='scss' scoped>
@import "~@/assets/styles/collect-reorganizi.scss";
@mixin management-fixed-style{
[data-theme="dark"] & {
background-color: #031435 !important;
-webkit-box-shadow: -5px 5px 10px 1px rgba(15,164,222,.16);
box-shadow: -5px 5px 10px 1px rgba(15,164,222,.16);
}
[data-theme="light"] & {
background-color: #fff;
}
}
.el-table {
::v-deep .el-table__fixed-right {
@include management-fixed-style;
}
}
</style>

5
src/views/collectReorganizi/collectionLibrary/mixins/index.js

@ -33,6 +33,11 @@ export const collectionLibraryCrud = {
},
// 组件共用方法
methods: {
// 缓存用户对于固定栏操作习惯
statusBarChecked(val) {
this.fixedStatusBar = val
localStorage.setItem('statusBarFixedType', val)
},
handleSearch(categoryLevel) {
this.parentsData.$refs.classifyTree.setCurrentKey(null)
this.smartQuery = {

10
src/views/collectReorganizi/collectionLibrary/module/archivesFilling/index.vue

@ -148,12 +148,13 @@ export default {
FetchBecomeDocument(params).then((res) => {
if (res.code !== 500) {
this.$message.success('归档操作提交成功')
this.archivesFillingVisible = false
this.handleSearch(this.collectLevel)
this.$emit('close-dialog')
} else {
const message = JSON.parse(res.message)
this.$message.error(message.fail.join(',') + '归档操作提交失败')
// const message = JSON.parse(res.message)
// this.$message.error(message.fail.join(',') + '')
this.$message.error('归档操作提交失败')
}
this.archivesFillingVisible = false
}).catch(err => {
console.log(err)
})
@ -174,7 +175,6 @@ export default {
}
},
handleCloseDialog() {
// this.form = {}
this.archivesFillingVisible = false
}
}

8
src/views/collectReorganizi/collectionLibrary/module/archivesInfo/index.vue

@ -124,8 +124,12 @@ export default {
if (this.archivesTabIndex === 2) {
this.setXml()
} else if (this.archivesTabIndex === 5) {
if (this.selectedCategory.arrangeType === 3) {
this.$refs.archivesListModuleRef.collectLevelList = 1
if (this.isTitleType === 2) {
this.$refs.archivesListModuleRef.detailLevel = 2
} else if (this.isTitleType === 3) {
this.$refs.archivesListModuleRef.detailLevel = 3
} else {
this.$refs.archivesListModuleRef.detailLevel = 4
}
this.$refs.archivesListModuleRef.parentId = this.arcId
this.$refs.archivesListModuleRef.isDetail = true

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

@ -2,7 +2,6 @@
<div>
<div class="collect-header">
<h4 :class="classType">{{ collectTitle }} </h4>
<!-- :class="[!(isRecycle && (isTitleType === 2 || (isTitleType === 3 && selectedCategory.arrangeType !== 3))) ? 'head-search is-recycle':'head-search']" -->
<div class="collect-filter">
<treeselect
v-if="selectedCategory.arrangeType === 3 && isTitleType !== 4 && isTitleType !== 6 && activeIndex !== 1"
@ -67,7 +66,7 @@
<el-menu-item v-if="isTitleType !== 2" index="2-1" @click="handleBlukImport">批量导入</el-menu-item>
<!-- 项目 / 案卷 / 卷内 / 文件-->
<el-menu-item v-if="activeIndex !== 1 || (isTitleType === 3 && selectedCategory.arrangeType === 1 && activeIndex === 1)" index="2-2" @click="handleBlukEditing">批量修改</el-menu-item>
<el-menu-item v-if="(isTitleType === 3) && activeIndex === 0" index="2-3" @click="handleJnSeqAdjustment('anjuan')">案卷顺序调整</el-menu-item>
<el-menu-item v-if="isTitleType === 3 && activeIndex === 0 && selectedCategory.arrangeType !== 1" index="2-3" @click="handleJnSeqAdjustment('anjuan')">案卷顺序调整</el-menu-item>
<el-menu-item v-if="isTitleType === 3 && activeIndex === 0 && selectedCategory.arrangeType !== 1 " index="2-12" @click="handleJnSeqAdjustment('juannei')">卷内顺序调整</el-menu-item>
<el-menu-item v-if="isTitleType === 3 && selectedCategory.arrangeType === 1" index="2-3" @click="handleJnSeqAdjustment('file')">文件顺序调整</el-menu-item>
<el-menu-item v-if="isTitleType !== 2 && !(isTitleType === 3 && (selectedCategory.arrangeType === 1|| selectedCategory.arrangeType === 2) && activeIndex === 1) && isTitleType !== 4" index="2-4" @click="handleFileNumberUpdate(0)">档号更新</el-menu-item>
@ -199,7 +198,12 @@
<!-- 归档 -->
<ArchivesFilling ref="archivesFillingRef" :selected-category="selectedCategory" :collect-level="collectLevel" :selections="selections" @close-dialog="closeDialog" />
</div>
<div style="height: 30px; line-height: 30px; padding: 0 20px; font-size: 12px;"> <span v-if="(isTitleType !== 2 && selectedCategory.arrangeType === 3 ) || ((isTitleType === 4 || isTitleType === 6) && selectedCategory.arrangeType === 2) || (isTitleType === 6 && selectedCategory.arrangeType === 1)">{{ test }}</span></div>
<div style="display: flex; justify-content: space-between; height: 30px; line-height: 30px; padding: 0 20px; ">
<span v-if="(isTitleType !== 2 && selectedCategory.arrangeType === 3 ) || ((isTitleType === 4 || isTitleType === 6) && selectedCategory.arrangeType === 2) || (isTitleType === 6 && selectedCategory.arrangeType === 1)" style="font-size: 12px;">{{ test }}</span>
<div v-if="isTitleType !== 2 && !isRecycle && isTitleType !== 6 && !(isTitleType === 3 && activeIndex === 1 && selectedCategory.arrangeType !== 1 )" class="mangement-fixed-top">
<el-checkbox v-model="parentsData.fixedStatusBar" @change="statusBarChecked">隐藏状态栏</el-checkbox>
</div>
</div>
</div>
</template>
@ -336,7 +340,15 @@ export default {
if (this.isTitleType === 2) {
return ''
} else if (this.isTitleType === 3) {
return 'is-anjuan'
if (this.selectedCategory.arrangeType === 1) {
return 'is-juannei'
} else {
if (this.activeIndex === 1) {
return 'is-juannei'
} else {
return 'is-anjuan'
}
}
} else if (this.isTitleType === 4) {
return 'is-juannei'
} else if (this.isTitleType === 6) {
@ -469,6 +481,10 @@ export default {
// -form/-api
handleForm(type) {
if (type === 'add') {
if (this.parentsData.parentsAnjuanRow && this.parentsData.parentsAnjuanRow.collect_formal === 2) {
this.$message('当前档案处于归档流程中,不可操作新增,请先确认!')
return false
}
this.formTitle = '新增' + this.collectTitle
this.arcId = null
} else if (type === 'edit') {
@ -478,6 +494,9 @@ export default {
} else if (this.selections.length > 1) {
this.$message('编辑操作只可勾选唯一目标条目,请先确认!')
return false
} else if (this.selections[0].collect_formal === 2) {
this.$message('当前所选的档案处于归档流程中,不可操作编辑,请先确认!')
return false
}
this.arcId = this.selections[0].id
this.formTitle = '编辑' + this.collectTitle
@ -528,7 +547,7 @@ export default {
handlerArchivesSubmit() {
this.$refs.previewForm.submitForm('addOrUpdateForm', this.selectedCategory.id, this.quickPaperArcId)
},
// -
//
handleClose(done) {
this.formVisible = false
done()
@ -539,6 +558,17 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作删除,请先确认!')
return false
}
if (this.collectLevel === 4) {
if (this.parentsData.parentsAnjuanRow && this.parentsData.parentsAnjuanRow.collect_formal === 2) {
this.$message('当前档案处于归档流程中,不可操作删除,请先确认!')
return false
}
}
this.deleteVisible = true
},
// -
@ -547,6 +577,11 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作删除,请先确认!')
return false
}
this.moveVisible = true
},
// -
@ -636,8 +671,18 @@ export default {
this.$message('上传操作只可勾选唯一目标条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作原文上传,请先确认!')
return false
}
this.arcId = this.selections[0].id
} else {
if (this.parentsData.parentsAnjuanRow && this.parentsData.parentsAnjuanRow.collect_formal === 2) {
this.$message('当前档案处于归档流程中,不可操作原文上传,请先确认!')
return false
}
if (this.selectedCategory.arrangeType === 1) {
this.arcId = this.parentsData.parentsAnjuanId
} else {
@ -665,6 +710,10 @@ export default {
},
//
handleBlukImport() {
if (this.parentsData.parentsAnjuanRow && this.parentsData.parentsAnjuanRow.collect_formal === 2) {
this.$message('当前档案处于归档流程中,不可操作批量导入,请先确认!')
return false
}
this.$refs.blukImportRef.bulkImportVisible = true
},
//
@ -673,6 +722,11 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作批量修改,请先确认!')
return false
}
this.$nextTick(() => {
this.$refs.blukEditingRef.bulkEditingVisible = true
})
@ -688,6 +742,11 @@ export default {
this.$message('卷内顺序调整操作只可勾选唯一目标条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作卷内顺序调整,请先确认!')
return false
}
this.$nextTick(() => {
this.$refs.fileSeqAdjustmentRef.titleAdjustment = '卷内顺序调整'
this.$refs.fileSeqAdjustmentRef.isJuannei = true
@ -697,6 +756,11 @@ export default {
this.$message('请选择多个' + (type === 'file' ? '文件' : '案卷') + '后进行操作!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作案卷/文件顺序调整,请先确认!')
return false
}
this.$nextTick(() => {
if (type === 'anjuan') {
this.$refs.fileSeqAdjustmentRef.titleAdjustment = '案卷顺序调整'
@ -716,6 +780,11 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作档号更新,请先确认!')
return false
}
this.$confirm('此操作将会自动重新生成档号' + '<span>你是否还要继续?</span>', '提示', {
confirmButtonText: '继续',
cancelButtonText: '取消',
@ -758,6 +827,11 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作拆卷,请先确认!')
return false
}
this.$confirm('拆卷之后,对应的案卷数据将会自动删除' + '<span>你是否还要继续?</span>', '提示', {
confirmButtonText: '继续',
cancelButtonText: '取消',
@ -791,6 +865,11 @@ export default {
this.$message('合卷操作至少勾选2个案卷,请重试!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作合卷,请先确认!')
return false
}
this.$refs.combineFileRef.getTargetList()
},
//
@ -811,9 +890,13 @@ export default {
this.$refs.insertFileRef.getInsertViewTable()
}
} else {
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (this.selections.length !== 1) {
this.$message('插卷操作只可勾选唯一目标条目,请先确认!')
return false
} else if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作插件,请先确认!')
return false
} else {
this.$refs.insertFileRef.getInsertViewTable()
}
@ -825,6 +908,11 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作移动,请先确认!')
return false
}
this.$refs.collectMoveFileRef.collectMoveFileVisible = true
},
//
@ -833,6 +921,11 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,勿重复操作,请先确认!!')
return false
}
this.$refs.archivesFillingRef.archivesFillingVisible = true
// this.$confirm('' + '<span></span>', '', {
// confirmButtonText: '',
@ -867,6 +960,11 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作退回预归档库,请先确认!!')
return false
}
this.$confirm('此操作将把会所选条目退回到预归档库' + '<span>你是否还要继续?</span>', '提示', {
confirmButtonText: '继续',
cancelButtonText: '取消',
@ -946,6 +1044,11 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
const isHasFillFormal = this.selections.some(item => item.collect_formal === 2)
if (isHasFillFormal) {
this.$message('您所选的条目有正在归档流程中,不可操作四性检测,请先确认!')
return false
}
this.$refs.fourTestRef.fourTestVisible = true
this.$refs.fourTestRef.tableData = this.selections
},
@ -1042,7 +1145,6 @@ export default {
this.$message('您还未勾选需要操作的条目,请先确认!')
return false
}
this.$confirm('此删除将把会所选条目与其子集彻底删除' + '<span>你是否还要继续?</span>', '提示', {
confirmButtonText: '继续',
cancelButtonText: '取消',

2
src/views/collectReorganizi/collectionLibrary/module/fourTestInfo/index.vue

@ -1,7 +1,7 @@
<template>
<!--四性检测-档案详情内-->
<div class="fourTest-container">
<el-table :data="tableData">
<el-table :data="tableData" style="min-width: 100%" height="calc(100vh - 440px)">
<el-table-column prop="admin" label="检测人" min-width="60" />
<el-table-column prop="createTime" label="检测时间" min-width="180">
<template slot-scope="scope">

2
src/views/collectReorganizi/collectionLibrary/module/handleInfo/index.vue

@ -1,7 +1,7 @@
<template>
<!--档案详情-操作记录-->
<div class="fourTest-container">
<el-table :data="tableData">
<el-table :data="tableData" style="min-width: 100%" height="calc(100vh - 440px)">
<el-table-column prop="type" label="操作类型" min-width="60" />
<el-table-column prop="isAgree" label="处理意见" min-width="60" />
<el-table-column prop="admin" label="处理人" min-width="60" />

6
src/views/collectReorganizi/collectionLibrary/module/uploadFile/index.vue

@ -28,7 +28,7 @@
{{ (scope.row.file_size / 1024).toFixed(2) + 'kB' }}
</template>
</el-table-column>
<el-table-column prop="file_dpi" label="分辨率" min-width="100" align="center">
<el-table-column prop="file_dpi" label="分辨率" min-width="120" align="center">
<template slot-scope="scope">
<div v-if="!scope.row.file_dpi"> - </div>
<div v-else> {{ scope.row.file_dpi }} </div>
@ -64,7 +64,7 @@
</el-table-column>
<el-table-column prop="create_time" label="创建时间" min-width="130" align="center" />
<!-- && !recycleMain.isRecycle -->
<el-table-column v-if="!isUploadDetail " label="操作" min-width="80" align="center">
<el-table-column v-if="!isUploadDetail && !parentsData.isRecycle" label="操作" min-width="80" align="center">
<template slot-scope="scope">
<el-button class="file-down iconfont icon-weibiaoti-2" @click="downloadFile(scope.row)">下载</el-button>
</template>
@ -126,7 +126,7 @@ export default {
mixins: [
form({})
],
// inject: ['recycleMain'],
inject: ['parentsData'],
props: {
isUploadDetail: {
type: Boolean,

4
src/views/collectReorganizi/collectionLibrary/module/uploadOriginal/index.vue

@ -158,7 +158,9 @@ export default {
this.fileList[0]
).then(res => {
if (res.data.code === 200) {
this.$message.success('成功追加' + res.data.data + '附件')
// 200
// this.$message.success('' + res.data.data + '')
this.$message.success('操作成功')
this.$emit('close-dialog')
this.uploadVisible = false
} else {

10
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" :is-recycle="isRecycle" />
<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> -->
<div class="collect-table">
<el-table
@ -56,20 +56,18 @@
</div>
<!-- 档案详情 -->
<ArchivesInfo ref="archivesInfo" :selected-category="selectedCategory" :arc-id="arcId" :is-title-type="isTitleType" />
<!-- <ProjectDetail ref="projectDetail" :selected-category="selectedCategory" :arc-id="arcId" /> -->
</div>
</template>
<script>
import { collectionLibraryCrud } from '../mixins/index'
import { header, form } from '@crud/crud'
import CollectHeader from '../module/collectHeader.vue'
import collectHeader from '../module/collectHeader.vue'
import ArchivesInfo from '../module/archivesInfo/index'
// import ProjectDetail from '@/views/components/archivesDetail/project'
export default {
name: 'Project',
components: { CollectHeader, ArchivesInfo },
components: { collectHeader, ArchivesInfo },
mixins: [
header(),
form({}),
@ -177,7 +175,7 @@ export default {
this.parentId = row.id
this.openAnjuan('所属项目:' + row.project_no, this.parentId)
}, 300)
this.selections = this.crud.selections
// this.selections = this.crud.selections
},
//
handleCurrentChange(selection, row) {

20
src/views/collectReorganizi/externalReception/index.vue

@ -7,10 +7,14 @@
</div>
<crudOperation>
<template v-slot:right>
<el-button size="mini" :disabled="crud.selections.length === 0" @click="doDetection(crud.selections)">
<i class="iconfont icon-shangchuan2" />
上传接收
</el-button>
<div class="upload-bgColor">
<!-- @change="handleFile" -->
<input class="upload-input" type="file" accept=".zip" style="width: 110px; height: 32px;">
<el-button size="mini">
<i class="iconfont icon-shangchuan2" />
上传接收
</el-button>
</div>
<el-button :loading="crud.downloadLoading" size="mini" :disabled="crud.selections.length === 0" @click="doExport(crud.selections)">
<i class="iconfont icon-daochu" />
导出
@ -173,4 +177,12 @@ export default {
.connection-header{
padding: 0 !important;
}
.upload-bgColor{
margin-right: 10px;
.el-button{
color: #1f55eb !important;
background-color: transparent !important;
border: 1px solid #1f55eb !important;
}
}
</style>

82
src/views/components/archivesListModule/index.vue

@ -5,7 +5,7 @@
v-loading="tableLoading"
class="archives-table"
:data="tableData"
height="calc(100vh - 600px)"
height="calc(100vh - 382px)"
highlight-current-row
style="width: 100%;"
:row-key="rowKey"
@ -75,9 +75,7 @@ export default {
arcId: null,
isDetail: false,
parentId: null,
setType: null,
rowType: null,
collectLevelList: null
detailLevel: null
}
},
watch: {
@ -96,73 +94,16 @@ export default {
console.log(row.id)
this.arcId = row.id
this.$nextTick(() => {
if (this.selectedCategory.arrangeType === 3) {
console.log('dddddddd', localStorage.getItem('collectLevelList'))
console.log('collectLevelList', this.collectLevelList)
localStorage.setItem('collectLevelList', this.collectLevelList)
//
this.isDetail = true
if (localStorage.getItem('collectLevelList') === '2') {
this.$refs.archivesInfo.isHasFile = false
this.$refs.archivesInfo.detailTitle = '案卷详情'
this.$refs.archivesInfo.isHasModuleFile = true
this.$refs.archivesInfo.parentId = row.id
this.$refs.archivesInfo.getDetial(2, row.id)
} else if (localStorage.getItem('collectLevelList') === '3') {
this.$refs.archivesInfo.isHasFile = true
this.$refs.archivesInfo.isFourTest = true
this.$refs.archivesInfo.detailTitle = '卷内详情'
this.$refs.archivesInfo.parentId = row.id
this.$refs.archivesInfo.getDetial(3, row.id)
} else {
console.log('111')
}
} else if (this.selectedCategory.arrangeType === 2) {
//
this.$refs.archivesInfo.isHasFile = true
this.$refs.archivesInfo.isFourTest = true
this.$refs.archivesInfo.detailTitle = '卷内详情'
this.$refs.archivesInfo.parentId = row.id
this.$refs.archivesInfo.getDetial(3, row.id)
} else {
//
this.$refs.archivesInfo.isHasFile = true
this.$refs.archivesInfo.isHasModuleFile = false
this.$refs.archivesInfo.detailTitle = '文件详情'
this.$refs.archivesInfo.parentId = row.id
this.$refs.archivesInfo.getDetial(3, row.id)
}
this.$refs.archivesInfo.isFourTest = true
this.$refs.archivesInfo.archivesInfoVisible = true
this.$refs.archivesInfo.archivesTabIndex = 0
})
},
getViewTable() {
this.tableData = []
this.tableLoading = true
let params
let collectLevel
if (this.isDetail) {
if (this.selectedCategory.arrangeType === 3) {
console.log('ttt', localStorage.getItem('collectLevelList'))
console.log('ggg', this.collectLevelList)
if (localStorage.getItem('collectLevelList') === '2') {
collectLevel = 3
} else if (localStorage.getItem('collectLevelList') === '3') {
collectLevel = 4
} else {
collectLevel = 2
}
console.log(collectLevel)
} else if (this.selectedCategory.arrangeType === 2) {
collectLevel = 3
} else {
collectLevel = 4
}
params = {
categoryId: this.selectedCategory.id,
categoryLevel: collectLevel
categoryLevel: this.detailLevel
}
} else {
params = {
@ -191,25 +132,10 @@ export default {
})
},
getViewTableList() {
let collectLevel
if (this.selectedCategory.arrangeType === 3) {
console.log('rrr', localStorage.getItem('collectLevelList'))
if (localStorage.getItem('collectLevelList') === '2') {
collectLevel = 3
} else if (localStorage.getItem('collectLevelList') === '3') {
collectLevel = 4
} else {
collectLevel = 2
}
} else if (this.selectedCategory.arrangeType === 2) {
collectLevel = 3
} else {
collectLevel = 4
}
const params = {
'parentId': this.parentId,
'categoryId': this.selectedCategory.id,
'categoryLevel': collectLevel,
'categoryLevel': this.detailLevel,
'page': 0,
'size': 100,
'sort': this.arrySort

Loading…
Cancel
Save