Browse Source

0425需求更新

master
xuhuajiao 10 months ago
parent
commit
0cca754311
  1. 53
      src/views/archivesManage/archivesList/archivesAnjuan/index.vue
  2. 24
      src/views/archivesManage/archivesList/archivesJuannei/index.vue
  3. 508
      src/views/archivesManage/archivesList/archivesProject/index.vue
  4. 5
      src/views/archivesManage/archivesSearch/index.vue
  5. 5
      src/views/archivesManage/caseManage/caseList/index.vue
  6. 4
      src/views/archivesManage/fileImport/importLog/index.vue
  7. 4
      src/views/archivesManage/fileImport/module/detail.vue

53
src/views/archivesManage/archivesList/archivesAnjuan/index.vue

@ -255,15 +255,7 @@ export default {
anjuanQuery: {},
queryOption: [],
anjuanInputSelect: '',
stateOptions: [ // -
{ value: '0', label: '全部' },
{ value: '1', label: '未装' },
{ value: '2', label: '未入' },
{ value: '3', label: '待入' },
{ value: '4', label: '在库' },
{ value: '5', label: '待借' },
{ value: '6', label: '已借' }
],
stateOptions: [],
isAnjuan: true, // -/
lengingVisible: false //
}
@ -275,10 +267,31 @@ export default {
},
watch: {
selectedCategory: function(newValue, oldValue) {
console.log('selectedCategory', newValue.isType)
this.query.queryTitle = ''
this.query.archiveNo = ''
this.query.archiveCtgNo = ''
this.query.responsibleby = ''
if (newValue.isType === 5) {
this.stateOptions = [
{ value: '0', label: '全部' },
{ value: '1', label: '未装' },
{ value: '2', label: '未入' },
{ value: '3', label: '待入' },
{ value: '4', label: '在库' },
{ value: '5', label: '待借' },
{ value: '6', label: '已借' }
]
} else {
this.stateOptions = [
{ value: '0', label: '全部' },
{ value: '1', label: '未装' },
{ value: '2', label: '未入' },
{ value: '3', label: '待入' },
{ value: '7', label: '已入' }
]
}
this.resetQuery()
},
tableDisplayFields(val) {
@ -301,6 +314,25 @@ export default {
created() {
this.resetQuery()
this.selections = []
if (this.selectedCategory.isType === 5) {
this.stateOptions = [
{ value: '0', label: '全部' },
{ value: '1', label: '未装' },
{ value: '2', label: '未入' },
{ value: '3', label: '待入' },
{ value: '4', label: '在库' },
{ value: '5', label: '待借' },
{ value: '6', label: '已借' }
]
} else {
this.stateOptions = [
{ value: '0', label: '全部' },
{ value: '1', label: '未装' },
{ value: '2', label: '未入' },
{ value: '3', label: '待入' },
{ value: '7', label: '已入' }
]
}
this.query.queryType = this.stateOptions[0].value
},
mounted() {
@ -380,11 +412,12 @@ export default {
tableDoubleClick(row) {
if (this.selectedCategory.isType !== 5) {
this.$refs.archivesInfo.isHasFile = false
this.$refs.archivesInfo.isTidOrBorrow = false
} else {
this.$refs.archivesInfo.isHasFile = true
this.$refs.archivesInfo.isTidOrBorrow = true
}
this.$refs.archivesInfo.isDetailsInfo = true
this.$refs.archivesInfo.isTidOrBorrow = true
this.arcId = row.id
this.$refs.archivesInfo.detailTitle = '档案详情'
this.$refs.archivesInfo.archivesInfoVisible = true

24
src/views/archivesManage/archivesList/archivesJuannei/index.vue

@ -24,6 +24,10 @@
</div>
<div class="head-search">
<!-- @keyup.enter.native="crud.toQuery" -->
<el-select v-if="!recycleMain.isRecycle" v-model="query.queryType" clearable size="small" placeholder="状态" class="filter-item" style="width: 100px" @change="stateSelect">
<i slot="prefix" class="iconfont icon-zhuangtai-fanbai" />
<el-option v-for="item in stateOptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
<el-input v-model="juanneiQuery[juanneiInputSelect]" clearable size="small" placeholder="请输入关键词" style="width: 220px;" class="input-prepend filter-item" @clear="getTableList()" @keyup.enter.native="getTableList">
<el-select slot="prepend" v-model="juanneiInputSelect" style="width: 100px" @change="querySelect(juanneiInputSelect)">
<el-option
@ -238,7 +242,16 @@ export default {
{ value: 'documentNo', label: '文件编号 ' }
],
juanneiInputSelect: '',
lengingVisible: false //
lengingVisible: false, //
stateOptions: [
{ value: '0', label: '全部' },
{ value: '1', label: '未装' },
{ value: '2', label: '未入' },
{ value: '3', label: '待入' },
{ value: '4', label: '在库' },
{ value: '5', label: '待借' },
{ value: '6', label: '已借' }
]
}
},
computed: {
@ -267,12 +280,17 @@ export default {
created() {
// select -
this.juanneiInputSelect = this.queryOption[0].value
this.query.queryType = null
this.query.queryType = this.stateOptions[0].value
this.selections = []
},
mounted() {
},
methods: {
stateSelect(val) {
this.page.page = 1
this.query.queryType = val
this.getListCommon('junneiData', 'juanneiTableHeight', 2)
},
//
getTableDisplayFields(type) {
this.getTableItemCommon(type)
@ -317,7 +335,7 @@ export default {
this.$refs.archivesInfo.isHasFile = true
this.arcId = row.id
this.$refs.archivesInfo.isDetailsInfo = true
this.$refs.archivesInfo.isTidOrBorrow = false
this.$refs.archivesInfo.isTidOrBorrow = true
this.$refs.archivesInfo.detailTitle = '档案详情'
this.$refs.archivesInfo.archivesInfoVisible = true
this.$refs.archivesInfo.archivesTabIndex = 0

508
src/views/archivesManage/archivesList/archivesProject/index.vue

@ -1,254 +1,254 @@
<template>
<div class="archives-warp">
<!--工具栏-->
<div class="head-container head-archives clearfix">
<div v-if="!recycleMain.isRecycle" class="archives-crud">
<!-- 新增 -->
<el-button size="mini" icon="el-icon-plus" @click="handleForm('add','项目', null)">新增</el-button>
<!-- 修改 -->
<el-button size="mini" icon="el-icon-edit" :disabled="selections .length !== 1" @click="handleForm('edit','项目', null)">修改</el-button>
<!-- 删除btn 多选 -->
<el-button icon="el-icon-delete" size="mini" :loading="crud.delAllLoading" :disabled="selections.length === 0" @click="toDelete(selections)">删除</el-button>
</div>
<div v-else class="archives-recycle">
<el-button icon="el-icon-delete" size="mini" :disabled="selections.length === 0" @click="toDelete(selections)">彻底删除</el-button>
<el-button size="mini" class="iconfont icon-huanyuan-fanbai" :disabled="selections.length === 0" @click="handleRestore">还原
</el-button>
</div>
<div class="head-search">
<!-- @keyup.enter.native="crud.toQuery" -->
<el-input v-model="projectQuery[projectInputSelect]" clearable size="small" placeholder="请输入关键词" style="width: 206px;" class="input-prepend filter-item" @clear="getTableList()" @keyup.enter.native="getTableList">
<el-select slot="prepend" v-model="projectInputSelect" style="width: 100px" @change="querySelect(projectInputSelect)">
<el-option
v-for="item in queryOption"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-input>
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="getTableList()">搜索</el-button>
</div>
</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" />
<span class="dialog-left-bottom" />
<div class="setting-dialog">
<!-- form -->
<PreviewForm v-if="formPreviewData.length" ref="previewForm" :is-has-code="true" :is-disabled="false" :form-preview-data.sync="formPreviewData" :selected-category="selectedCategory" :parents-id="parentsId" :arc-id="arcId" :is-des-form-type="isDesFormType" @emitTableList="getTableList" />
<div slot="footer" class="dialog-footer">
<!-- :loading="crud.status.cu === 2" -->
<el-button type="primary" @click="handlerArchivesSubmit">保存</el-button>
</div>
</div>
</el-dialog>
<!-- table表格渲染 -->
<!-- height="calc(100vh - 350px)" -->
<el-card class="box-card" shadow="never">
<span class="right-top-line" />
<span class="left-bottom-line" />
<el-table
ref="table"
v-loading="crud.loading || getTableDisplayFieldsLoading"
class="archives-table"
:data="projectData"
highlight-current-row
style="width: 100%;"
:height="projectTableHeight"
:row-key="rowKey"
:row-class-name="tableRowClassName"
@select-all="selectAll"
@selection-change="crud.selectionChangeHandler"
@row-click="clickRowHandler"
@cell-dblclick="tableDoubleClick"
@select="handleCurrentChange"
>
<el-table-column type="selection" :reserve-selection="true" width="55" align="center" />
<el-table-column type="index" label="序号" width="55" align="center" />
<el-table-column label="案卷" prop="children_num" width="55" align="center" />
<el-table-column v-for="field in tableDisplayFields" :key="field.id" :label="field.fieldCnName" :align="field.displayformatType" :width="field.displayLength" show-overflow-tooltip>
<template slot="header">
<el-tooltip
class="item"
effect="dark"
:content="field.fieldCnName"
placement="top-start"
>
<span>{{ field.fieldCnName }}</span>
</el-tooltip>
</template>
<template slot-scope="scope">
{{ scope.row[field.fieldName] }}
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
: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"
/>
</el-card>
<!-- 档案详情 -->
<ArchivesInfo ref="archivesInfo" :category-id="categoryId" :arc-id="arcId" />
<!-- 还原 -->
<RestoreArchives ref="restore" :selections="selections" :category-id="categoryId" />
<!-- 删除档案 -->
<DeltArchives ref="deltArchives" :selections="selections" :category-id="categoryId" :total-sum-all="totalSumAll" :is-delt-type="1" />
</div>
</template>
<script>
import { header, form } from '@crud/crud'
import { archivesCrud } from '../mixins/archives'
import PreviewForm from '@/views/components/category/PreviewForm'
import ArchivesInfo from '../module/archivesInfo/index'
import RestoreArchives from '../module/restoreArchives/index'
import DeltArchives from '../module/deltArchives/index'
export default {
name: 'ArchivesProject',
components: { PreviewForm, ArchivesInfo, RestoreArchives, DeltArchives },
mixins: [
header(),
form({}),
archivesCrud
],
inject: ['recycleMain'],
props: {
selectedCategory: {
type: Object,
default: function() {
return {}
}
},
smartQuery: {
type: Object,
default: function() {
return {}
}
}
},
data() {
return {
projectData: [],
projectQuery: {},
queryOption: [
{ value: 'queryTitle', label: '题名' },
{ value: 'itemNo', label: '项目代号' }
],
projectInputSelect: '',
isProject: true // -/
}
},
watch: {
selectedCategory: function(newValue, oldValue) {
},
tableDisplayFields(val) {
this.doLayout()
},
smartQuery: {
handler(n, o) {
},
deep: true
}
},
created() {
// select -
this.projectInputSelect = this.queryOption[0].value
this.query.queryType = null
this.selections = []
},
mounted() {
},
methods: {
// -
getTableDisplayFields(type) {
this.getTableItemCommon(type)
},
handleSizeChange(size) {
this.page.size = size
this.page.page = 1
this.getListCommon('projectData', 'projectTableHeight', 0)
this.$nextTick(() => {
this.selections = this.$refs.table.selection
})
},
// table - list
getTableList(page) {
this.query.queryTitle = ''
this.query.itemNo = ''
switch (this.projectInputSelect) {
case 'queryTitle': //
this.query.queryTitle = this.projectQuery[this.projectInputSelect]
break
case 'itemNo': // -
this.query.itemNo = this.projectQuery[this.projectInputSelect]
break
}
this.getListCommon('projectData', 'projectTableHeight', 0)
},
// table -
selectAll(val) {
this.selections = val
this.isProject = val.length !== 1
this.$emit('getAjInProjectBtnState', this.isProject)
console.log('pr', this.selections)
this.$emit('getProjectSelections', val, this.selections)
},
// table -
tableDoubleClick(row) {
this.$refs.archivesInfo.isHasFile = false
this.$refs.archivesInfo.isDetailsInfo = false
this.$refs.archivesInfo.isTidOrBorrow = false
this.arcId = row.id
this.$refs.archivesInfo.detailTitle = '项目详情'
this.$refs.archivesInfo.archivesInfoVisible = true
this.$refs.archivesInfo.archivesTabIndex = 0
this.$refs.archivesInfo.getDetial(row.id)
},
// table - row
clickRowHandler(row) {
this.$refs.table.clearSelection()
this.$refs.table.toggleRowSelection(row)
this.selections = this.crud.selections
this.isProject = this.crud.selections.length !== 1
this.$emit('getAjInProjectBtnState', this.isProject)
this.$emit('getProjectSelections', row, null)
},
//
handleCurrentChange(selection, row) {
this.selections = selection
// -btn-
this.isProject = selection.length !== 1
this.$emit('getAjInProjectBtnState', this.isProject)
this.$emit('getProjectSelections', row, selection)
}
}
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
@import "~@/assets/styles/archives-manage.scss";
::v-deep .input-prepend{
.el-select .el-input__inner{
padding-left: 15px !important;
}
.el-input__inner {
padding-left: 94px !important;
}
}
::v-deep .el-table__fixed-right-patch{
background-color:#02255f;
border-bottom: none;
}
</style>
<template>
<div class="archives-warp">
<!--工具栏-->
<div class="head-container head-archives clearfix">
<div v-if="!recycleMain.isRecycle" class="archives-crud">
<!-- 新增 -->
<el-button size="mini" icon="el-icon-plus" @click="handleForm('add','项目', null)">新增</el-button>
<!-- 修改 -->
<el-button size="mini" icon="el-icon-edit" :disabled="selections .length !== 1" @click="handleForm('edit','项目', null)">修改</el-button>
<!-- 删除btn 多选 -->
<el-button icon="el-icon-delete" size="mini" :loading="crud.delAllLoading" :disabled="selections.length === 0" @click="toDelete(selections)">删除</el-button>
</div>
<div v-else class="archives-recycle">
<el-button icon="el-icon-delete" size="mini" :disabled="selections.length === 0" @click="toDelete(selections)">彻底删除</el-button>
<el-button size="mini" class="iconfont icon-huanyuan-fanbai" :disabled="selections.length === 0" @click="handleRestore">还原
</el-button>
</div>
<div class="head-search">
<!-- @keyup.enter.native="crud.toQuery" -->
<el-input v-model="projectQuery[projectInputSelect]" clearable size="small" placeholder="请输入关键词" style="width: 206px;" class="input-prepend filter-item" @clear="getTableList()" @keyup.enter.native="getTableList">
<el-select slot="prepend" v-model="projectInputSelect" style="width: 100px" @change="querySelect(projectInputSelect)">
<el-option
v-for="item in queryOption"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-input>
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="getTableList()">搜索</el-button>
</div>
</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" />
<span class="dialog-left-bottom" />
<div class="setting-dialog">
<!-- form -->
<PreviewForm v-if="formPreviewData.length" ref="previewForm" :is-has-code="true" :is-disabled="false" :form-preview-data.sync="formPreviewData" :selected-category="selectedCategory" :parents-id="parentsId" :arc-id="arcId" :is-des-form-type="isDesFormType" @emitTableList="getTableList" />
<div slot="footer" class="dialog-footer">
<!-- :loading="crud.status.cu === 2" -->
<el-button type="primary" @click="handlerArchivesSubmit">保存</el-button>
</div>
</div>
</el-dialog>
<!-- table表格渲染 -->
<!-- height="calc(100vh - 350px)" -->
<el-card class="box-card" shadow="never">
<span class="right-top-line" />
<span class="left-bottom-line" />
<el-table
ref="table"
v-loading="crud.loading || getTableDisplayFieldsLoading"
class="archives-table"
:data="projectData"
highlight-current-row
style="width: 100%;"
:height="projectTableHeight"
:row-key="rowKey"
:row-class-name="tableRowClassName"
@select-all="selectAll"
@selection-change="crud.selectionChangeHandler"
@row-click="clickRowHandler"
@cell-dblclick="tableDoubleClick"
@select="handleCurrentChange"
>
<el-table-column type="selection" :reserve-selection="true" width="55" align="center" />
<el-table-column type="index" label="序号" width="55" align="center" />
<el-table-column label="案卷" prop="children_num" width="55" align="center" />
<el-table-column v-for="field in tableDisplayFields" :key="field.id" :label="field.fieldCnName" :align="field.displayformatType" :width="field.displayLength" show-overflow-tooltip>
<template slot="header">
<el-tooltip
class="item"
effect="dark"
:content="field.fieldCnName"
placement="top-start"
>
<span>{{ field.fieldCnName }}</span>
</el-tooltip>
</template>
<template slot-scope="scope">
{{ scope.row[field.fieldName] }}
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
: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"
/>
</el-card>
<!-- 档案详情 -->
<ArchivesInfo ref="archivesInfo" :category-id="categoryId" :arc-id="arcId" />
<!-- 还原 -->
<RestoreArchives ref="restore" :selections="selections" :category-id="categoryId" />
<!-- 删除档案 -->
<DeltArchives ref="deltArchives" :selections="selections" :category-id="categoryId" :total-sum-all="totalSumAll" :is-delt-type="1" />
</div>
</template>
<script>
import { header, form } from '@crud/crud'
import { archivesCrud } from '../mixins/archives'
import PreviewForm from '@/views/components/category/PreviewForm'
import ArchivesInfo from '../module/archivesInfo/index'
import RestoreArchives from '../module/restoreArchives/index'
import DeltArchives from '../module/deltArchives/index'
export default {
name: 'ArchivesProject',
components: { PreviewForm, ArchivesInfo, RestoreArchives, DeltArchives },
mixins: [
header(),
form({}),
archivesCrud
],
inject: ['recycleMain'],
props: {
selectedCategory: {
type: Object,
default: function() {
return {}
}
},
smartQuery: {
type: Object,
default: function() {
return {}
}
}
},
data() {
return {
projectData: [],
projectQuery: {},
queryOption: [
{ value: 'queryTitle', label: '题名' },
{ value: 'itemNo', label: '项目代号' }
],
projectInputSelect: '',
isProject: true // -/
}
},
watch: {
selectedCategory: function(newValue, oldValue) {
},
tableDisplayFields(val) {
this.doLayout()
},
smartQuery: {
handler(n, o) {
},
deep: true
}
},
created() {
// select -
this.projectInputSelect = this.queryOption[0].value
this.query.queryType = null
this.selections = []
},
mounted() {
},
methods: {
// -
getTableDisplayFields(type) {
this.getTableItemCommon(type)
},
handleSizeChange(size) {
this.page.size = size
this.page.page = 1
this.getListCommon('projectData', 'projectTableHeight', 0)
this.$nextTick(() => {
this.selections = this.$refs.table.selection
})
},
// table - list
getTableList(page) {
this.query.queryTitle = ''
this.query.itemNo = ''
switch (this.projectInputSelect) {
case 'queryTitle': //
this.query.queryTitle = this.projectQuery[this.projectInputSelect]
break
case 'itemNo': // -
this.query.itemNo = this.projectQuery[this.projectInputSelect]
break
}
this.getListCommon('projectData', 'projectTableHeight', 0)
},
// table -
selectAll(val) {
this.selections = val
this.isProject = val.length !== 1
this.$emit('getAjInProjectBtnState', this.isProject)
console.log('pr', this.selections)
this.$emit('getProjectSelections', val, this.selections)
},
// table -
tableDoubleClick(row) {
this.$refs.archivesInfo.isHasFile = false
this.$refs.archivesInfo.isDetailsInfo = false
this.$refs.archivesInfo.isTidOrBorrow = true
this.arcId = row.id
this.$refs.archivesInfo.detailTitle = '项目详情'
this.$refs.archivesInfo.archivesInfoVisible = true
this.$refs.archivesInfo.archivesTabIndex = 0
this.$refs.archivesInfo.getDetial(row.id)
},
// table - row
clickRowHandler(row) {
this.$refs.table.clearSelection()
this.$refs.table.toggleRowSelection(row)
this.selections = this.crud.selections
this.isProject = this.crud.selections.length !== 1
this.$emit('getAjInProjectBtnState', this.isProject)
this.$emit('getProjectSelections', row, null)
},
//
handleCurrentChange(selection, row) {
this.selections = selection
// -btn-
this.isProject = selection.length !== 1
this.$emit('getAjInProjectBtnState', this.isProject)
this.$emit('getProjectSelections', row, selection)
}
}
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
@import "~@/assets/styles/archives-manage.scss";
::v-deep .input-prepend{
.el-select .el-input__inner{
padding-left: 15px !important;
}
.el-input__inner {
padding-left: 94px !important;
}
}
::v-deep .el-table__fixed-right-patch{
background-color:#02255f;
border-bottom: none;
}
</style>

5
src/views/archivesManage/archivesSearch/index.vue

@ -300,11 +300,12 @@ export default {
console.log(currentCategory.isType)
if (currentCategory.isType === 3) {
this.$refs.archivesInfo.isHasFile = false
this.$refs.archivesInfo.isTidOrBorrow = true
this.$refs.archivesInfo.isTidOrBorrow = false
} else {
this.$refs.archivesInfo.isHasFile = true
this.$refs.archivesInfo.isTidOrBorrow = false
this.$refs.archivesInfo.isTidOrBorrow = true
}
this.$refs.archivesInfo.isDetailsInfo = true
this.$refs.archivesInfo.detailTitle = '档案详情'
this.$refs.archivesInfo.archivesInfoVisible = true

5
src/views/archivesManage/caseManage/caseList/index.vue

@ -189,9 +189,8 @@ export default {
del: false,
download: false,
group: false
},
sort: ['case_name,asc']
}
// sort: ['case_name,asc']
})
},
data() {

4
src/views/archivesManage/fileImport/importLog/index.vue

@ -15,6 +15,7 @@
<template slot-scope="scope">
<div v-if="scope.row.status === 0" class="import-loading">导入中</div>
<div v-if="scope.row.status === 1">已完成</div>
<div v-if="scope.row.status === 2" class="import-error">导入失败</div>
</template>
</el-table-column>
<el-table-column prop="create_by" label="操作人" />
@ -117,4 +118,7 @@ export default {
.import-loading{
color: #fd8042;
}
.import-error{
color: rgb(246, 81, 99);
}
</style>

4
src/views/archivesManage/fileImport/module/detail.vue

@ -2,8 +2,8 @@
<div class="import-detail-container">
<div v-if="isLogOrPreview === 'log'" class="import-data-number">
<p>导入方式<span style="color: #339cff;">{{ importType }}</span></p>
<p>成功读取数据<span style="color:rgb(246,81,99)">{{ readData }}</span> </p>
<p>成功导入数据<span style="color: #1AAE93;">{{ importData }}</span> </p>
<p>成功读取数据<span style="color:rgb(246,81,99)">{{ readData === null ? 0 : readData }}</span> </p>
<p>成功导入数据<span style="color: #1AAE93;">{{ importData === null ? 0 : importData }}</span> </p>
</div>
<ul class="import-tab">
<li :class="{'active': archivesTabIndex == 0}" @click="changeActiveTab(0)">案卷</li>

Loading…
Cancel
Save