z_yu 3 years ago
parent
commit
616f7935e0
  1. 11
      src/api/archivesManage/archivesSearch.js
  2. 117
      src/views/archivesManage/archivesSearch/index.vue

11
src/api/archivesManage/archivesSearch.js

@ -0,0 +1,11 @@
import request from '@/utils/request'
import qs from 'qs'
// 模糊查询
export function queryVagueArchives(params) {
return request({
url: 'api/archives/queryVagueArchives' + '?' + qs.stringify(params, { indices: false }),
method: 'get'
})
}
export default { queryVagueArchives }

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

@ -5,7 +5,7 @@
<h2>模糊检索</h2>
<div>
<div class="search-input">
<el-input v-model="keywords" placeholder="请输入内容" class="input-with-select" style="width:50%;">
<el-input v-model="keywords" placeholder="请输入内容" class="input-with-select" style="width:50%;" @keyup.enter.native="dimSearch">
<el-select slot="prepend" v-model="select" placeholder="请选择">
<el-option
v-for="item in options"
@ -14,7 +14,7 @@
:value="item.value"
/>
</el-select>
<el-button slot="append" icon="el-icon-search" />
<el-button slot="append" icon="el-icon-search" @click="dimSearch" />
</el-input>
</div>
</div>
@ -26,27 +26,39 @@
</div>
<el-table
ref="table"
:data="crud.data"
v-loading="loading"
:data="tableData"
style="width: 100%;"
height="calc(100vh - 493px)"
@row-dblclick="handleDbClick"
>
<!-- <el-table-column type="selection" width="55" align="center" /> -->
<el-table-column type="index" label="序号" width="90" align="center" />
<el-table-column prop="" label="子条数目" align="center" min-width="150" />
<el-table-column prop="" label="门类级别" align="center" min-width="100" />
<el-table-column prop="" label="门类名称" align="center" min-width="150" />
<el-table-column prop="" label="全宗号" align="center" min-width="180" />
<el-table-column prop="" label="档号" align="center" min-width="180" />
<el-table-column prop="" label="归档年度" align="center" min-width="100" />
<el-table-column prop="" label="题名" align="center" min-width="180" />
<el-table-column prop="" label="保密程度" align="center" min-width="100" />
<el-table-column prop="" label="部门" align="center" min-width="100" />
<el-table-column prop="" label="盒名称" align="center" min-width="180" />
<el-table-column prop="" label="所在位置" align="center" min-width="180" />
<el-table-column prop="" label="创建时间" align="center" min-width="180" />
<el-table-column prop="child" label="子条数目" align="center" min-width="150" />
<el-table-column prop="category_type" label="门类级别" align="center" min-width="100">
<template slot-scope="scope">
<!-- 门类级别 -->
<span v-if="scope.row.category_type === 5" style="width:56px">文件级</span>
<span v-if="scope.row.category_type === 4" style="width:56px">卷内级</span>
<span v-if="scope.row.category_type === 3" style="width:56px">案卷级</span>
</template>
</el-table-column>
<el-table-column prop="case_name" label="门类名称" align="center" min-width="150" />
<el-table-column prop="fonds_no" label="全宗号" align="center" min-width="180" />
<el-table-column prop="archive_no" label="档号" align="center" min-width="180" />
<el-table-column prop="archive_year" label="归档年度" align="center" min-width="100" />
<el-table-column prop="maintitle" label="题名" align="center" min-width="180" />
<el-table-column prop="security_class" label="保密程度" align="center" min-width="100" />
<el-table-column prop="department" label="部门" align="center" min-width="100" />
<el-table-column prop="case_name" label="盒名称" align="center" min-width="180" />
<el-table-column prop="folder_location_details" label="所在位置" align="center" min-width="180" />
<el-table-column prop="create_time" label="创建时间" align="center" min-width="180">
<template slot-scope="scope">
<div>{{ scope.row.create_time | parseTime }}</div>
</template>
</el-table-column>
</el-table>
<pagination />
<el-pagination :page-size.sync="page.size" :total="page.total" :current-page.sync="page.page" style="margin-top: 8px;" layout="total, prev, pager, next, sizes" @size-change="sizeChangeHandler($event)" @current-change="pageChangeHandler" />
<!-- 详情 -->
<detailDialog ref="detailDom" />
</div>
@ -55,33 +67,34 @@
</template>
<script>
import pagination from '@crud/Pagination'
import CRUD, { presenter, crud } from '@crud/crud'
// import pagination from '@crud/Pagination'
// import { crud } from '@crud/crud'
import detailDialog from './module/detailDialog.vue'
import { queryVagueArchives } from '@/api/archivesManage/archivesSearch'
export default {
name: 'ArchivesSearch',
components: { pagination, detailDialog },
mixins: [presenter(), crud()],
cruds() {
return CRUD({
url: 'api/storage/initStorageLogList',
sort: ['update_time,desc']
// crudMethod: caseCrudMethod,
})
},
components: { detailDialog },
// mixins: [crud()],
data() {
return {
loading: false,
tableData: [],
keywords: '',
select: 1,
select: 'maintitle',
options: [
{ value: 1, label: '题名' },
{ value: 2, label: '档号' },
{ value: 3, label: '年度' },
{ value: 4, label: '密级' },
{ value: 5, label: '盒名称' },
{ value: 6, label: '保管期限' },
{ value: 7, label: '部门名称' }
{ value: 'maintitle', label: '题名' },
{ value: 'archive_no', label: '档号' },
{ value: 'archive_year', label: '年度' },
{ value: 'security_class', label: '密级' },
{ value: 'case_name', label: '盒名称' },
{ value: 'retention', label: '保管期限' },
{ value: 'department', label: '部门名称' }
],
page: {
total: 0,
size: 10,
page: 1
},
resNum: 0
}
},
@ -89,6 +102,40 @@ export default {
//
handleDbClick() {
this.$refs.detailDom.detailVisible = true
},
dimSearch() {
this.loading = true
const arr = this.keywords.trim()
// console.log(arr.length, 'bool')
if (arr.length === 0) {
this.tableData = []
} else {
const params = {
'criteria': this.select,
'query': this.keywords,
'page': this.page.page - 1,
'size': this.page.size
}
queryVagueArchives(params).then(res => {
console.log(res, 'res')
this.tableData = res.content
this.page.total = res.totalElements
this.resNum = res.totalElements
})
}
this.loading = false
},
//
sizeChangeHandler(e) {
this.page.size = e
this.page.page = 1
this.dimSearch()
},
//
pageChangeHandler(e) {
this.page.page = e
console.log(e, 'e--')
this.dimSearch()
}
}
}

Loading…
Cancel
Save