Browse Source

档案盒管理

master
xuhuajiao 1 year ago
parent
commit
b6556cb1b1
  1. 25
      src/views/archiveKeeping/caseManage/caseList/index.vue
  2. 14
      src/views/archiveKeeping/caseManage/caseList/module/detailDialog.vue
  3. 54
      src/views/archiveKeeping/caseManage/caseList/module/openCaseDlg.vue

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

@ -100,7 +100,6 @@
<eForm />
<binding-tag-dlg ref="bindingTag" :binding-id="crud.selections[0] && crud.selections[0].id" :binding-type="2" binding-txt="档案盒" @refresh="crud.refresh" />
<open-case-dlg ref="openCase" @refresh="crud.refresh" />
<detailDialog ref="detailDom" />
</div>
</template>
@ -108,7 +107,7 @@
<script>
import CRUD, { presenter, crud } from '@crud/crud'
import caseCurd from '@/api/archivesKeeping/caseManage'
import { getNewBarcode, getNewCaseCode } from '@/api/archivesKeeping/caseManage'
import { getNewBarcode, getNewCaseCode, unpacking } from '@/api/archivesKeeping/caseManage'
import { FetchFondsDetail } from '@/api/system/fonds'
import rrOperation from '@crud/RR.operation'
import crudOperation from '@crud/CRUD.operation'
@ -116,7 +115,6 @@ import pagination from '@crud/Pagination'
import BindingTagDlg from '@/views/components/BindingTagDlg'
import eForm from './module/form'
import openCaseDlg from './module/openCaseDlg'
import detailDialog from './module/detailDialog'
import html2canvas from 'html2canvas'
@ -139,7 +137,7 @@ export default {
}
}
},
components: { pagination, rrOperation, crudOperation, BindingTagDlg, eForm, openCaseDlg, detailDialog },
components: { pagination, rrOperation, crudOperation, BindingTagDlg, eForm, detailDialog },
mixins: [presenter(), crud()],
cruds() {
return CRUD({
@ -291,6 +289,16 @@ export default {
resetQuery() {
},
tableDoubleClick(row) {
this.$refs.detailDom.rowData = row
const params = {
caseId: row.id
}
this.crud.crudMethod.findInCase(params).then(res => {
if (res) {
this.$refs.detailDom.tableData = res.archives
}
})
this.$refs.detailDom.detailVisible = true
},
handleCloseDialog(done) {
},
@ -406,14 +414,17 @@ export default {
type: 'warning'
})
} else {
this.$confirm('此操作将导出所选数据' + '<span>提示:1.确定拆盒后,当前盒号下绑定的所有档案数据将一并清除;</span><span>2.若案卷存在多个盒,选择其中一个分盒则自动拆掉该案卷的全部档案盒</span>', '提示', {
this.$confirm('此操作将导出所选数据' + '<span>提示:1.确定拆盒后,当前盒号下绑定的所有档案数据将一并清除;</span><span>2.若案卷存在多个盒,选择其中一个分盒则自动拆掉该案卷的全部档案盒</span>', '提示', {
confirmButtonText: '继续',
cancelButtonText: '取消',
type: 'warning',
dangerouslyUseHTMLString: true
}).then(() => {
this.$refs.openCase.openCaseVisible = true
this.$refs.openCase.caseData = data
const caseIds = data.map(item => item.id)
unpacking(JSON.stringify(caseIds)).then(res => {
this.$message.success('拆盒成功!')
this.crud.refresh()
})
}).catch(() => {
})
}

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

@ -1,26 +1,24 @@
<template>
<div>
<el-dialog title="档案盒详情" :visible.sync="detailVisible">
<span class="dialog-right-top" />
<span class="dialog-left-bottom" />
<el-dialog append-to-body :close-on-click-modal="false" :modal-append-to-body="false" title="档案盒详情" :visible.sync="detailVisible">
<div class="setting-dialog">
<div style="padding:0 10px">
<div class="dpflex">
<p class="left"><span class="color-blue">盒名称</span><span class="color-white">{{ rowData.caseName }}</span></p>
<p class="right"><span class="color-blue">盒条码</span><span class="color-white">{{ rowData.barcode }}</span></p>
<p class="left"><span class="color-blue">盒名称</span><span>{{ rowData.caseName }}</span></p>
<p class="right"><span class="color-blue">盒条码</span><span>{{ rowData.barcode }}</span></p>
</div>
<div class="dpflex">
<p class="left"><span class="color-blue">存放位置</span>
<span class="color-white">
<span>
<div v-if="!rowData.folderLocationDetails">-</div>
<div v-else>
<el-tag effect="dark">{{ rowData.folderLocationDetails }}</el-tag>
</div>
</span>
</p>
<p class="right"><span class="color-blue">TID</span><span class="color-white">{{ rowData.tid }}</span></p>
<p class="right"><span class="color-blue">TID</span><span>{{ rowData.tid }}</span></p>
</div>
<p class="left"><span class="color-blue">创建时间</span><span class="color-white">{{ rowData.create_time | parseTime }}</span></p>
<p class="left"><span class="color-blue">创建时间</span><span>{{ rowData.create_time | parseTime }}</span></p>
</div>
<el-table :data="tableData" style="margin-top:15px;" height="342px">
<el-table-column type="index" label="序号" align="center" width="80" />

54
src/views/archiveKeeping/caseManage/caseList/module/openCaseDlg.vue

@ -1,54 +0,0 @@
<template>
<el-dialog append-to-body :close-on-click-modal="false" :modal-append-to-body="false" title="拆盒" :visible.sync="openCaseVisible">
<span class="dialog-right-top" />
<span class="dialog-left-bottom" />
<div class="setting-dialog">
<div class="dialog-delt">
<p><span>确定拆除当前选择的所有档案盒吗</span></p>
<p class="delt-tip">
<svg-icon icon-class="tishijinggao" />
<span>提示1.确定拆盒后当前盒号下绑定的所有档案数据将一并清除</span>
<span>2.若案卷存在多个盒选择其中一个分盒则自动拆掉该案卷的全部档案盒</span>
</p>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click.native="handleConfirm">确定</el-button>
<!-- <el-button @click.native="handleCancel">取消</el-button> -->
</div>
</div>
</el-dialog>
</template>
<script>
import { unpacking } from '@/api/archivesManage/caseManage'
import { crud } from '@crud/crud'
export default {
mixins: [crud()],
data() {
return {
caseData: [],
openCaseVisible: false
}
},
methods: {
handleConfirm() {
// console.log(this.caseData)
const caseIds = this.caseData.map(item => item.id)
unpacking(JSON.stringify(caseIds)).then(res => {
this.$message.success('拆盒成功!')
this.caseData = []
this.openCaseVisible = false
this.crud.refresh()
})
},
handleCancel() {
this.caseData = []
this.openCaseVisible = false
}
}
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
</style>
Loading…
Cancel
Save