Merge remote-tracking branch 'origin/main'

main
JilingLee 1 year ago
commit 56ee556662

@ -15,7 +15,7 @@ VUE_CLI_BABEL_TRANSPILE_MODULES = true
VUE_APP_TENANT_ENABLE = true
# 验证码的开关
VUE_APP_CAPTCHA_ENABLE = true
VUE_APP_CAPTCHA_ENABLE = false
# 文档的开关
VUE_APP_DOC_ENABLE = true

@ -18,6 +18,14 @@ export function updateRecord(data) {
})
}
// 批量归档
export function archivesRecord(data) {
return request({
url: '/archives/record/record?ids=' + data,
method: 'put',
})
}
// 删除归档
export function deleteRecord(id) {
return request({
@ -52,3 +60,13 @@ export function exportRecordExcel(query) {
responseType: 'blob'
})
}
// 生成编码
export function createCodeRule(data) {
return request({
url: '/archives/code-rule/create',
method: 'post',
data: data
})
}

@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建档案借阅申请
export function createBorrowApply(data) {
return request({
url: '/archives/borrow-apply/create',
method: 'post',
data: data
})
}
// 更新档案借阅申请
export function updateBorrowApply(data) {
return request({
url: '/archives/borrow-apply/update',
method: 'put',
data: data
})
}
// 删除档案借阅申请
export function deleteBorrowApply(id) {
return request({
url: '/archives/borrow-apply/delete?id=' + id,
method: 'delete'
})
}
// 获得档案借阅申请
export function getBorrowApply(id) {
return request({
url: '/archives/borrow-apply/get?id=' + id,
method: 'get'
})
}
// 获得档案借阅申请分页
export function getBorrowApplyPage(query) {
return request({
url: '/archives/borrow-apply/page',
method: 'get',
params: query
})
}
// 导出档案借阅申请 Excel
export function exportBorrowApplyExcel(query) {
return request({
url: '/archives/borrow-apply/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建资产档案
export function createElectronicAssets(data) {
return request({
url: '/ea/electronic/create',
method: 'post',
data: data
})
}
// 更新资产档案
export function updateElectronicAssets(data) {
return request({
url: '/ea/electronic/update',
method: 'put',
data: data
})
}
// 删除资产档案
export function deleteElectronicAssets(id) {
return request({
url: '/ea/electronic/delete?id=' + id,
method: 'delete'
})
}
// 获得资产档案
export function getElectronicAssets(id) {
return request({
url: '/ea/electronic/get?id=' + id,
method: 'get'
})
}
// 获得资产档案分页
export function getElectronicAssetsPage(query) {
return request({
url: '/ea/electronic/page',
method: 'get',
params: query
})
}
// 导出资产档案 Excel
export function exportElectronicAssetsExcel(query) {
return request({
url: '/ea/electronic/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

@ -0,0 +1,64 @@
import request from '@/utils/request'
// 创建档案鉴定
export function createAuthenticate(data) {
return request({
url: '/archives/authenticate/create',
method: 'post',
data: data
})
}
// 更新档案鉴定
export function updateAuthenticate(data) {
return request({
url: '/archives/authenticate/update',
method: 'put',
data: data
})
}
// 删除档案鉴定
export function deleteAuthenticate(id) {
return request({
url: '/archives/authenticate/delete?id=' + id,
method: 'delete'
})
}
// 获得档案鉴定
export function getAuthenticate(id) {
return request({
url: '/archives/authenticate/get?id=' + id,
method: 'get'
})
}
// 获得档案鉴定分页
export function getAuthenticatePage(query) {
return request({
url: '/archives/authenticate/page',
method: 'get',
params: query
})
}
// 获得档案鉴定列表
export function getAuthenticateList(query) {
return request({
url: '/archives/authenticate/get/record',
method: 'get',
params: query
})
}
// 导出档案鉴定 Excel
export function exportAuthenticateExcel(query) {
return request({
url: '/archives/authenticate/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建档案分类
export function createFileCategory(data) {
return request({
url: '/setting/file-category/create',
method: 'post',
data: data
})
}
// 更新档案分类
export function updateFileCategory(data) {
return request({
url: '/setting/file-category/update',
method: 'put',
data: data
})
}
// 删除档案分类
export function deleteFileCategory(id) {
return request({
url: '/setting/file-category/delete?id=' + id,
method: 'delete'
})
}
// 获得档案分类
export function getFileCategory(id) {
return request({
url: '/setting/file-category/get?id=' + id,
method: 'get'
})
}
// 获得档案分类分页
export function getFileCategoryPage(query) {
return request({
url: '/setting/file-category/page',
method: 'get',
params: query
})
}
// 导出档案分类 Excel
export function exportFileCategoryExcel(query) {
return request({
url: '/setting/file-category/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

@ -52,3 +52,12 @@ export function exportOrganizationExcel(query) {
responseType: 'blob'
})
}
// 获取立档单位-库房-档案柜树状
export function getSiteTree(query) {
return request({
url: '/setting/organization/getTree',
method: 'get',
params: query
})
}

@ -109,7 +109,20 @@ export const DICT_TYPE = {
BS_SUPPLIER_TYPE: 'supplier_centre_state',
// 采购进度(采购状态)
BS_PROCUREMENT_TYPE: 'supplier_procurement_state',
// 档案类型
ARCHIVES_FILE_TYPE: 'archives_file_type',
// 归档状态
ARCHIVES_FILE_STATUS: 'archives_file_status',
// 借阅申请状态
BORROW_APPLY: 'borrow_apply',
// 档案借阅介质
ARCHIVES_MEDIA: 'archives_media',
// 档案借阅方式
ARCHIVES_APPLY: 'borrow_apply',
// 目录号
ARCHIVES_CATALOG_NUM: 'archives_catalog_num',
// 全宗号
ARCHIVES_CASE_NUM: 'archives_case_num',
}
/**

@ -1,103 +1,55 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="业务实体id" prop="companyId">
<el-input v-model="queryParams.companyId" placeholder="请输入业务实体id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="业务实体" prop="company">
<el-input v-model="queryParams.company" placeholder="请输入业务实体" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="归档频次" prop="frequency">
<el-input v-model="queryParams.frequency" placeholder="请输入归档频次" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="档案类型" prop="fileType">
<el-select v-model="queryParams.fileType" placeholder="请选择档案类型" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="会计年份" prop="year">
<el-input v-model="queryParams.year" placeholder="请输入会计年份" clearable @keyup.enter.native="handleQuery"/>
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="88px"
>
<!-- <el-form-item label="会计年份" prop="year">
<el-input
v-model="queryParams.year"
placeholder="请输入会计年份"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="会计月份" prop="period">
<el-input v-model="queryParams.period" placeholder="请输入会计月份" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-input
v-model="queryParams.period"
placeholder="请输入会计月份"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> -->
<el-form-item label="起止凭证号" prop="vouNum">
<el-input v-model="queryParams.vouNum" placeholder="请输入起止凭证号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="全宗号" prop="caseNum">
<el-input v-model="queryParams.caseNum" placeholder="请输入全宗号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="目录号" prop="catalogNum">
<el-input v-model="queryParams.catalogNum" placeholder="请输入目录号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="案卷号" prop="filesNum">
<el-input v-model="queryParams.filesNum" placeholder="请输入案卷号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="档案位置" prop="site">
<el-input v-model="queryParams.site" placeholder="请输入档案位置" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="关联号" prop="flowId">
<el-input v-model="queryParams.flowId" placeholder="请输入关联号" clearable @keyup.enter.native="handleQuery"/>
<el-input
v-model="queryParams.vouNum"
placeholder="请输入起止凭证号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="创建日期" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择状态" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="归档详情" prop="note">
<el-input v-model="queryParams.note" placeholder="请输入归档详情" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="归档状态" prop="fileStatus">
<el-select v-model="queryParams.fileStatus" placeholder="请选择归档状态" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="借阅状态" prop="borrowStatus">
<el-select v-model="queryParams.borrowStatus" placeholder="请选择借阅状态" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="鉴定状态" prop="identifyStatus">
<el-select v-model="queryParams.identifyStatus" placeholder="请选择鉴定状态" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="归档时间" prop="recordTime">
<el-date-picker v-model="queryParams.recordTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="所属部门id" prop="deptId">
<el-input v-model="queryParams.deptId" placeholder="请输入所属部门id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="所属部门" prop="deptName">
<el-input v-model="queryParams.deptName" placeholder="请输入所属部门" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="预留字段1" prop="attr1">
<el-input v-model="queryParams.attr1" placeholder="请输入预留字段1" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="预留字段2" prop="attr2">
<el-input v-model="queryParams.attr2" placeholder="请输入预留字段2" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="预留字段3" prop="attr3">
<el-input v-model="queryParams.attr3" placeholder="请输入预留字段3" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="预留字段4" prop="attr4">
<el-input v-model="queryParams.attr4" placeholder="请输入预留字段4" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="用户id" prop="userId">
<el-input v-model="queryParams.userId" placeholder="请输入用户id" clearable @keyup.enter.native="handleQuery"/>
<el-date-picker
v-model="queryParams.createTime"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"></el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
@ -105,23 +57,63 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['archives:record:create']">新增</el-button>
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['archives:record:create']"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['archives:record:export']">导出</el-button>
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['archives:record:export']"
>导出</el-button
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-s-claim"
size="mini"
:disabled="multiple"
@click="handleArchive"
v-hasPermi="['setting:organization:create']"
>归档</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="主键" align="center" prop="id" />
<el-table-column label="业务实体id" align="center" prop="companyId" />
<el-table
v-loading="loading"
:data="list"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="业务实体" align="center" prop="company" />
<el-table-column label="归档频次" align="center" prop="frequency" />
<el-table-column label="档案类型" align="center" prop="fileType" />
<el-table-column label="档案类型" align="center" prop="fileType">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.ARCHIVES_FILE_TYPE"
:value="scope.row.fileType"
/>
</template>
</el-table-column>
<el-table-column label="会计年份" align="center" prop="year" />
<el-table-column label="会计月份" align="center" prop="period" />
<el-table-column label="起止凭证号" align="center" prop="vouNum" />
@ -130,128 +122,265 @@
<el-table-column label="案卷号" align="center" prop="filesNum" />
<el-table-column label="档案位置" align="center" prop="site" />
<el-table-column label="关联号" align="center" prop="flowId" />
<el-table-column label="创建日期" align="center" prop="createTime" width="180">
<el-table-column
label="创建日期"
align="center"
prop="createTime"
width="160"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="状态" align="center" prop="status" />
<!-- <el-table-column label="状态" align="center" prop="status" /> -->
<el-table-column label="归档详情" align="center" prop="note" />
<el-table-column label="归档状态" align="center" prop="fileStatus" />
<el-table-column label="归档状态" align="center" prop="fileStatus">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.ARCHIVES_FILE_STATUS"
:value="scope.row.fileStatus"
/>
</template>
</el-table-column>
<el-table-column label="借阅状态" align="center" prop="borrowStatus" />
<el-table-column label="鉴定状态" align="center" prop="identifyStatus" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="归档时间" align="center" prop="recordTime" />
<el-table-column label="所属部门id" align="center" prop="deptId" />
<el-table-column label="所属部门" align="center" prop="deptName" />
<el-table-column label="预留字段1" align="center" prop="attr1" />
<el-table-column label="预留字段2" align="center" prop="attr2" />
<el-table-column label="预留字段3" align="center" prop="attr3" />
<el-table-column label="预留字段4" align="center" prop="attr4" />
<el-table-column label="用户id" align="center" prop="userId" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<!-- <el-table-column label="所属部门" align="center" prop="deptName" /> -->
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column
label="操作"
align="center"
width="120"
class-name="small-padding fixed-width"
>
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['archives:record:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['archives:record:delete']">删除</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['archives:record:update']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['archives:record:delete']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="业务实体id" prop="companyId">
<el-input v-model="form.companyId" placeholder="请输入业务实体id" />
</el-form-item>
<el-form-item label="业务实体" prop="company">
<el-input v-model="form.company" placeholder="请输入业务实体" />
</el-form-item>
<el-form-item label="归档频次" prop="frequency">
<el-input v-model="form.frequency" placeholder="请输入归档频次" />
</el-form-item>
<el-form-item label="档案类型" prop="fileType">
<el-select v-model="form.fileType" placeholder="请选择档案类型">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="会计年份" prop="year">
<el-input v-model="form.year" placeholder="请输入会计年份" />
</el-form-item>
<el-form-item label="会计月份" prop="period">
<el-input v-model="form.period" placeholder="请输入会计月份" />
</el-form-item>
<el-form-item label="起止凭证号" prop="vouNum">
<el-input v-model="form.vouNum" placeholder="请输入起止凭证号" />
</el-form-item>
<el-form-item label="全宗号" prop="caseNum">
<el-input v-model="form.caseNum" placeholder="请输入全宗号" />
</el-form-item>
<el-form-item label="目录号" prop="catalogNum">
<el-input v-model="form.catalogNum" placeholder="请输入目录号" />
</el-form-item>
<el-form-item label="案卷号" prop="filesNum">
<el-input v-model="form.filesNum" placeholder="请输入案卷号" />
</el-form-item>
<el-form-item label="档案位置" prop="site">
<el-input v-model="form.site" placeholder="请输入档案位置" />
</el-form-item>
<el-form-item label="关联号" prop="flowId">
<el-input v-model="form.flowId" placeholder="请输入关联号" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="归档详情" prop="note">
<el-input v-model="form.note" placeholder="请输入归档详情" />
</el-form-item>
<el-form-item label="归档状态" prop="fileStatus">
<el-radio-group v-model="form.fileStatus">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="借阅状态" prop="borrowStatus">
<el-radio-group v-model="form.borrowStatus">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="鉴定状态" prop="identifyStatus">
<el-radio-group v-model="form.identifyStatus">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
<el-dialog
:title="title"
:visible.sync="open"
width="1000px"
append-to-body
>
<el-form ref="form" :model="form" :rules="rules" label-width="98px">
<el-row>
<el-col :span="8">
<el-form-item label="业务实体" prop="company">
<!-- <el-cascader
v-model="companyArray"
:options="companyOptions"
:props="propName"
placeholder="请选择业务实体"
clearable
@change="handleChange"
/> -->
<el-select
v-model="form.company"
placeholder="请选择业务实体"
@change="handleCompanyChange"
>
<el-option
v-for="item in organizationList"
:key="item.id"
:value="item.id"
:label="item.organizationName"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="归档频次" prop="frequency">
<el-input v-model="form.frequency" placeholder="请输入归档频次" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="档案类型" prop="company">
<el-select v-model="form.fileType" placeholder="请选择档案类型">
<el-option
v-for="item in fileTypeOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="会计年份" prop="year">
<el-date-picker
format="yyyy年"
v-model="form.year"
value-format="yyyy"
type="year"
placeholder="请选择会计年份"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="会计月份" prop="period">
<el-date-picker
popper-class="due_month"
v-model="form.period"
format="M月"
value-format="M"
type="month"
placeholder="请选择会计月份"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="起止凭证号" prop="vouNum">
<el-input v-model="form.vouNum" placeholder="请输入起止凭证号" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="全宗号" prop="caseNum">
<el-input
v-model="form.caseNum"
placeholder="选择业务实体后自动带入"
readonly
@change="changeCaseNum"
/>
<!-- <el-select
v-model="form.caseNum"
placeholder="请选择全宗号"
@change="changeCaseNum"
>
<el-option
v-for="item in caseNumOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select> -->
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="目录号" prop="catalogNum">
<el-select
v-model="form.catalogNum"
placeholder="请选择目录号"
@change="changeCatalogNum"
>
<el-option
v-for="item in catalogNumOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="案卷号" prop="filesNum">
<el-input v-model="form.filesNum" readonly placeholder="" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="档案位置" prop="site">
<el-cascader
v-model="siteArray"
:options="siteOptions"
:props="propName1"
placeholder="请选择档案位置"
clearable
@change="handleSiteChanged"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="关联号" prop="flowId">
<el-input v-model="form.flowId" placeholder="请输入关联号" />
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
</el-col> -->
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="归档详情" prop="note">
<el-input v-model="form.note" placeholder="请输入归档详情" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="归档时间" prop="recordTime">
<el-date-picker
clearable
v-model="form.recordTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择归档时间"
/>
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-form-item label="借阅状态" prop="borrowStatus">
<el-radio-group v-model="form.borrowStatus">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
</el-col> -->
</el-row>
<el-row>
<!-- <el-col :span="8">
<el-form-item label="鉴定状态" prop="identifyStatus">
<el-radio-group v-model="form.identifyStatus">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
</el-col> -->
</el-row>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="归档时间" prop="recordTime">
<el-date-picker clearable v-model="form.recordTime" type="date" value-format="timestamp" placeholder="选择归档时间" />
</el-form-item>
<el-form-item label="所属部门id" prop="deptId">
<el-input v-model="form.deptId" placeholder="请输入所属部门id" />
</el-form-item>
<el-form-item label="所属部门" prop="deptName">
<el-input v-model="form.deptName" placeholder="请输入所属部门" />
</el-form-item>
<el-form-item label="预留字段1" prop="attr1">
<el-input v-model="form.attr1" placeholder="请输入预留字段1" />
</el-form-item>
<el-form-item label="预留字段2" prop="attr2">
<el-input v-model="form.attr2" placeholder="请输入预留字段2" />
</el-form-item>
<el-form-item label="预留字段3" prop="attr3">
<el-input v-model="form.attr3" placeholder="请输入预留字段3" />
</el-form-item>
<el-form-item label="预留字段4" prop="attr4">
<el-input v-model="form.attr4" placeholder="请输入预留字段4" />
</el-form-item>
<el-form-item label="用户id" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户id" />
<el-input
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -263,16 +392,45 @@
</template>
<script>
import { createRecord, updateRecord, deleteRecord, getRecord, getRecordPage, exportRecordExcel } from "@/api/archives/record";
import {
createRecord,
updateRecord,
deleteRecord,
getRecord,
getRecordPage,
exportRecordExcel,
createCodeRule,
archivesRecord,
} from "@/api/archives/record";
// import { listDept } from "@/api/system/dept";
import { listData } from "@/api/system/dict/data";
import { getSiteTree } from "@/api/setting/organization";
import { getOrganizationPage } from "@/api/setting/organization";
export default {
name: "Record",
components: {
},
components: {},
data() {
return {
propName: {
checkStrictly: true,
label: "name",
value: "id",
multiple: false,
},
propName1: {
label: "pName",
value: "pId",
multiple: false,
},
companyOptions: [], //
companyArray: [], //
siteOptions: [], //
siteArray: [], //
//
loading: true,
//
multiple: true,
//
exportLoading: false,
//
@ -316,28 +474,159 @@ export default {
attr3: null,
attr4: null,
userId: null,
organizationId: null, //
depotId: null, //
cabinetId: null, //
},
//
form: {},
Fileform: {},
//
ids: [],
//
rules: {
}
rules: {},
fileTypeOptions: [], //
fileStatusOptions: [], //
catalogNumOptions: [], //
caseNumOptions: [], //
organizationList: [],
};
},
created() {
this.getList();
this.getOrganizationList();
this.getSiteList();
this.handleInitList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getRecordPage(this.queryParams).then(response => {
getRecordPage(this.queryParams).then((response) => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
//
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.multiple = !selection.length;
},
// //
// getCompanyList() {
// listDept().then((response) => {
// this.companyOptions = this.handleTree(response.data, "id", "parentId");
// console.log(this.companyOptions);
// });
// },
// handleChange(value) {
// console.log(value, value[value.length - 1]);
// this.form.companyId = value[value.length - 1]; //id
// },
//
getOrganizationList() {
getOrganizationPage().then((response) => {
this.organizationList = response.data.list;
});
},
handleCompanyChange(val) {
var data = this.organizationList.find((item) => item.id == val);
console.log(data);
this.form.caseNum = data.caseNum;
this.Fileform.caseNum = data.caseNum;
},
//
handleInitList() {
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_file_type",
}).then((res) => {
this.fileTypeOptions = res.data.list || [];
});
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_case_num",
}).then((res) => {
this.caseNumOptions = res.data.list || [];
});
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_catalog_num",
}).then((res) => {
this.catalogNumOptions = res.data.list || [];
});
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_file_status",
}).then((res) => {
this.fileStatusOptions = res.data.list || [];
});
},
//
changeCaseNum() {
if (this.Fileform.catalogNum != null && this.Fileform.caseNum != null) {
this.creatFilesNum();
}
},
//
changeCatalogNum(val) {
this.Fileform.catalogNum = val;
console.log(this.Fileform);
if (this.Fileform.catalogNum != null && this.Fileform.caseNum != null) {
this.creatFilesNum();
}
},
//
creatFilesNum() {
createCodeRule(this.Fileform).then((response) => {
this.form.filesNum = response.data;
});
},
//
getSiteList() {
getSiteTree().then((response) => {
this.siteOptions = response.data;
this.siteOptions.map((w) => {
w.children.map((l) => {
let lstr = JSON.stringify(l.children)
.replace(/depotId/g, "lId")
.replace(/cabinetId/g, "pId")
.replace(/cabinetName/g, "pName");
l.children = JSON.parse(lstr);
});
let wstr = JSON.stringify(w.children)
.replace(/organizationId/g, "wId")
.replace(/depotId/g, "pId")
.replace(/depotName/g, "pName");
w.children = JSON.parse(wstr);
});
let ostr = JSON.stringify(this.siteOptions)
.replace(/organizationId/g, "pId")
.replace(/organizationName/g, "pName");
this.siteOptions = JSON.parse(ostr);
console.log(this.siteOptions);
});
},
//
handleSiteChanged(obj) {
if (obj != null) {
this.form.organizationId = obj[0];
this.form.depotId = obj[1];
this.form.cabinetId = obj[2];
}
},
/** 取消按钮 */
cancel() {
this.open = false;
@ -374,6 +663,12 @@ export default {
attr4: undefined,
userId: undefined,
};
this.Fileform = {
catalogNum: null,
caseNum: null,
};
this.companyArray = [];
this.siteArray = [];
this.resetForm("form");
},
/** 搜索按钮操作 */
@ -396,21 +691,25 @@ export default {
handleUpdate(row) {
this.reset();
const id = row.id;
getRecord(id).then(response => {
getRecord(id).then((response) => {
this.form = response.data;
this.siteArray[0] = response.data.organizationId;
this.siteArray[1] = response.data.depotId;
this.siteArray[2] = response.data.cabinetId;
console.log(this.siteArray);
this.open = true;
this.title = "修改归档";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
this.$refs["form"].validate((valid) => {
if (!valid) {
return;
}
//
if (this.form.id != null) {
updateRecord(this.form).then(response => {
updateRecord(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
@ -418,37 +717,66 @@ export default {
return;
}
//
createRecord(this.form).then(response => {
createRecord(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 归档按钮操作 */
handleArchive() {
const data = this.ids;
console.log(data);
this.$modal
.confirm("是否确认归档")
.then(function () {
return archivesRecord(data);
})
.then(() => {
this.getList();
this.$modal.msgSuccess("归档成功");
})
.catch(() => {});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除归档编号为"' + id + '"的数据项?').then(function() {
this.$modal
.confirm('是否确认删除归档编号为"' + id + '"的数据项?')
.then(function () {
return deleteRecord(id);
}).then(() => {
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
//
let params = {...this.queryParams};
let params = { ...this.queryParams };
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有归档数据项?').then(() => {
this.$modal
.confirm("是否确认导出所有归档数据项?")
.then(() => {
this.exportLoading = true;
return exportRecordExcel(params);
}).then(response => {
this.$download.excel(response, '归档.xls');
})
.then((response) => {
this.$download.excel(response, "归档.xls");
this.exportLoading = false;
}).catch(() => {});
}
}
})
.catch(() => {});
},
},
};
</script>
<style lang="scss">
.due_month .el-date-picker__header {
display: none;
}
</style>

@ -0,0 +1,508 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="108px"
>
<el-form-item label="借阅申请编码" prop="borrowCode">
<el-input
v-model="queryParams.borrowCode"
placeholder="请输入借阅申请编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="借阅申请状态" prop="borrowState">
<el-select
v-model="queryParams.borrowState"
placeholder="请选择借阅申请状态"
>
<el-option
v-for="item in borrowStateOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="借阅人" prop="userName">
<el-input
v-model="queryParams.userName"
placeholder="请输入借阅人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['archives:borrowAapply:create']"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['archives:borrowAapply:export']"
>导出</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="借阅申请编码" align="center" prop="borrowCode" />
<el-table-column label="借阅申请状态" align="center" prop="borrowState">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.BORROW_APPLY"
:value="scope.row.borrowState"
/>
</template>
</el-table-column>
<el-table-column label="借阅事由" align="center" prop="reason" />
<el-table-column label="借阅人名称" align="center" prop="userName" />
<el-table-column label="借阅部门名称" align="center" prop="deptName" />
<el-table-column
label="预计归还日期"
align="center"
prop="returnTime"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.returnTime) }}</span>
</template>
</el-table-column>
<el-table-column label="借阅方式" align="center" prop="way">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.ARCHIVES_APPLY" :value="scope.row.way" />
</template>
</el-table-column>
<el-table-column label="档案介质" align="center" prop="media">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.ARCHIVES_MEDIA" :value="scope.row.media" />
</template>
</el-table-column>
<el-table-column label="业务实体名称" align="center" prop="company" />
<el-table-column label="描述" align="center" prop="remark" />
<el-table-column
label="创建日期"
align="center"
prop="createTime"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template v-slot="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['archives:borrowAapply:update']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['archives:borrowAapply:delete']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog
:title="title"
:visible.sync="open"
width="1000px"
append-to-body
>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-row>
<el-col :span="8">
<el-form-item label="借阅申请编码" prop="borrowCode">
<el-input
v-model="form.borrowCode"
placeholder="请输入借阅申请编码"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅人" prop="userName">
<el-select
v-model="form.userName"
filterable
placeholder="请选择借阅人"
>
<el-option
v-for="item in userOptions"
:key="item.id"
:value="item.username"
:label="item.username"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅部门名称" prop="deptName">
<el-input
v-model="form.deptName"
placeholder="请输入借阅部门名称"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="借阅申请状态" prop="borrowState">
<el-select
v-model="form.borrowState"
placeholder="请选择借阅申请状态"
>
<el-option
v-for="item in borrowStateOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅事由" prop="reason">
<el-input
v-model="form.reason"
placeholder="请输入借阅事由"
/> </el-form-item
></el-col>
<el-col :span="8">
<el-form-item label="预计归还日期" prop="returnTime">
<el-date-picker
clearable
v-model="form.returnTime"
type="date"
value-format="yyyy-MM-dd "
placeholder="选择预计归还日期"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅方式" prop="way">
<el-select v-model="form.way" placeholder="请选择借阅方式">
<el-option
v-for="item in wayOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="档案介质" prop="media">
<el-select v-model="form.media" placeholder="请选择档案介质">
<el-option
v-for="item in mediaOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select> </el-form-item
></el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="借阅描述" prop="describe">
<el-input v-model="form.describe" placeholder="请输入借阅描述" />
</el-form-item>
</el-col>
</el-row>
<el-form-item label="备注" prop="remark">
<el-input
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
createBorrowApply,
updateBorrowApply,
deleteBorrowApply,
getBorrowApply,
getBorrowApplyPage,
exportBorrowApplyExcel,
} from "@/api/borrow/apply";
import { listData } from "@/api/system/dict/data";
import { listUser } from "@/api/system/user";
export default {
name: "BorrowApply",
components: {},
data() {
return {
//
loading: true,
//
exportLoading: false,
//
showSearch: true,
//
total: 0,
//
list: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNo: 1,
pageSize: 10,
borrowCode: null,
borrowState: null,
reason: null,
describe: null,
userId: null,
userName: null,
deptId: null,
deptName: null,
returnTime: [],
way: null,
media: null,
companyId: null,
company: null,
remark: null,
createTime: [],
},
//
form: {},
//
rules: {},
borrowStateOptions: [],
wayOptions: [],
mediaOptions: [],
userOptions: [], //
};
},
created() {
this.getList();
this.handleInitList();
this.getUserList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getBorrowApplyPage(this.queryParams).then((response) => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
//
handleInitList() {
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "borrow_apply",
}).then((res) => {
this.borrowStateOptions = res.data.list || [];
});
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_way",
}).then((res) => {
this.wayOptions = res.data.list || [];
});
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_media",
}).then((res) => {
this.mediaOptions = res.data.list || [];
});
},
//
getUserList() {
listUser().then((response) => {
this.userOptions = response.data.list;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
borrowCode: undefined,
borrowState: undefined,
reason: undefined,
describe: undefined,
userId: undefined,
userName: undefined,
deptId: undefined,
deptName: undefined,
returnTime: undefined,
way: undefined,
media: undefined,
companyId: undefined,
company: undefined,
remark: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加档案借阅申请";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getBorrowApply(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改档案借阅申请";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (!valid) {
return;
}
//
if (this.form.id != null) {
updateBorrowApply(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
//
createBorrowApply(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal
.confirm('是否确认删除档案借阅申请编号为"' + id + '"的数据项?')
.then(function () {
return deleteBorrowApply(id);
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
//
let params = { ...this.queryParams };
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal
.confirm("是否确认导出所有档案借阅申请数据项?")
.then(() => {
this.exportLoading = true;
return exportBorrowApplyExcel(params);
})
.then((response) => {
this.$download.excel(response, "档案借阅申请.xls");
this.exportLoading = false;
})
.catch(() => {});
},
},
};
</script>

@ -0,0 +1,491 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="108px"
>
<el-form-item label="借阅申请编码" prop="borrowCode">
<el-input
v-model="queryParams.borrowCode"
placeholder="请输入借阅申请编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="借阅申请状态" prop="borrowState">
<el-select
v-model="queryParams.borrowState"
placeholder="请选择借阅申请状态"
>
<el-option
v-for="item in borrowStateOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="借阅人名称" prop="userName">
<el-input
v-model="queryParams.userName"
placeholder="请输入借阅人名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<!-- <el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['archives:borrowAapply:create']"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['archives:borrowAapply:export']"
>导出</el-button
>
</el-col> -->
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="借阅申请编码" align="center" prop="borrowCode" />
<el-table-column label="借阅申请状态" align="center" prop="borrowState">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.BORROW_APPLY"
:value="scope.row.borrowState"
/>
</template>
</el-table-column>
<el-table-column label="借阅事由" align="center" prop="reason" />
<el-table-column label="借阅人名称" align="center" prop="userName" />
<el-table-column label="借阅部门名称" align="center" prop="deptName" />
<el-table-column
label="预计归还日期"
align="center"
prop="returnTime"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.returnTime) }}</span>
</template>
</el-table-column>
<el-table-column label="借阅方式" align="center" prop="way">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.ARCHIVES_APPLY" :value="scope.row.way" />
</template>
</el-table-column>
<el-table-column label="档案介质" align="center" prop="media">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.ARCHIVES_MEDIA" :value="scope.row.media" />
</template>
</el-table-column>
<el-table-column label="业务实体名称" align="center" prop="company" />
<el-table-column label="描述" align="center" prop="remark" />
<el-table-column
label="创建日期"
align="center"
prop="createTime"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<!-- <el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template v-slot="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['archives:borrowAapply:update']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['archives:borrowAapply:delete']"
>删除</el-button
>
</template>
</el-table-column> -->
</el-table>
<!-- 分页组件 -->
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog
:title="title"
:visible.sync="open"
width="1000px"
append-to-body
>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-row>
<el-col :span="8">
<el-form-item label="借阅申请编码" prop="borrowCode">
<el-input
v-model="form.borrowCode"
placeholder="请输入借阅申请编码"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅申请状态" prop="borrowState">
<el-select
v-model="form.borrowState"
placeholder="请选择借阅申请状态"
>
<el-option
v-for="item in borrowStateOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅事由" prop="reason">
<el-input
v-model="form.reason"
placeholder="请输入借阅事由"
/> </el-form-item></el-col
></el-row>
<el-row>
<el-col :span="8">
<el-form-item label="借阅描述" prop="describe">
<el-input v-model="form.describe" placeholder="请输入借阅描述" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅人名称" prop="userName">
<el-input
v-model="form.userName"
placeholder="请输入借阅人名称"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅部门名称" prop="deptName">
<el-input
v-model="form.deptName"
placeholder="请输入借阅部门名称"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="预计归还日期" prop="returnTime">
<el-date-picker
clearable
v-model="form.returnTime"
type="date"
value-format="timestamp"
placeholder="选择预计归还日期"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅方式" prop="way">
<el-select v-model="form.way" placeholder="请选择借阅方式">
<el-option
v-for="item in wayOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="档案介质" prop="media">
<el-select v-model="form.media" placeholder="请选择档案介质">
<el-option
v-for="item in mediaOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select> </el-form-item
></el-col>
</el-row>
<!-- <el-form-item label="业务实体名称" prop="company">
<el-input v-model="form.company" placeholder="请输入业务实体名称" />
</el-form-item> -->
<el-form-item label="备注" prop="remark">
<el-input
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
createBorrowApply,
updateBorrowApply,
deleteBorrowApply,
getBorrowApply,
getBorrowApplyPage,
exportBorrowApplyExcel,
} from "@/api/borrow/apply";
import { listData } from "@/api/system/dict/data";
export default {
name: "BorrowApply",
components: {},
data() {
return {
//
loading: true,
//
exportLoading: false,
//
showSearch: true,
//
total: 0,
//
list: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNo: 1,
pageSize: 10,
borrowCode: null,
borrowState: null,
reason: null,
describe: null,
userId: null,
userName: null,
deptId: null,
deptName: null,
returnTime: [],
way: null,
media: null,
companyId: null,
company: null,
remark: null,
createTime: [],
},
//
form: {},
//
rules: {},
borrowStateOptions: [],
wayOptions: [],
mediaOptions: [],
};
},
created() {
this.getList();
this.handleInitList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getBorrowApplyPage(this.queryParams).then((response) => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
//
handleInitList() {
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "borrow_apply",
}).then((res) => {
this.borrowStateOptions = res.data.list || [];
});
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_way",
}).then((res) => {
this.wayOptions = res.data.list || [];
});
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_media",
}).then((res) => {
this.mediaOptions = res.data.list || [];
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
borrowId: undefined,
borrowCode: undefined,
borrowState: undefined,
reason: undefined,
describe: undefined,
userId: undefined,
userName: undefined,
deptId: undefined,
deptName: undefined,
returnTime: undefined,
way: undefined,
media: undefined,
companyId: undefined,
company: undefined,
remark: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加档案借阅申请";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const borrowId = row.borrowId;
getBorrowApply(borrowId).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改档案借阅申请";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (!valid) {
return;
}
//
if (this.form.borrowId != null) {
updateBorrowApply(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
//
createBorrowApply(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const borrowId = row.borrowId;
this.$modal
.confirm('是否确认删除档案借阅申请编号为"' + borrowId + '"的数据项?')
.then(function () {
return deleteBorrowApply(borrowId);
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
//
let params = { ...this.queryParams };
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal
.confirm("是否确认导出所有档案借阅申请数据项?")
.then(() => {
this.exportLoading = true;
return exportBorrowApplyExcel(params);
})
.then((response) => {
this.$download.excel(response, "档案借阅申请.xls");
this.exportLoading = false;
})
.catch(() => {});
},
},
};
</script>

@ -0,0 +1,667 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="98px"
>
<el-form-item label="业务实体名称" prop="company">
<el-input
v-model="queryParams.company"
placeholder="请输入业务实体名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="部门名称" prop="deptName">
<el-input
v-model="queryParams.deptName"
placeholder="请输入部门名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资产名称" prop="assetName">
<el-input
v-model="queryParams.assetName"
placeholder="请输入资产名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资产类型" prop="assetType">
<el-select
v-model="queryParams.assetType"
placeholder="请选择资产类型"
clearable
size="small"
>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="购买日期" prop="purchaseDate">
<el-date-picker
v-model="queryParams.purchaseDate"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
<el-form-item label="报废日期" prop="disposalDate">
<el-date-picker
v-model="queryParams.disposalDate"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
<el-form-item label="资产状态" prop="assetStatus">
<el-select
v-model="queryParams.assetStatus"
placeholder="请选择资产状态"
clearable
size="small"
>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="购买渠道" prop="purchaseChannel">
<el-input
v-model="queryParams.purchaseChannel"
placeholder="请输入购买渠道"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="年度" prop="year">
<el-input
v-model="queryParams.year"
placeholder="请输入年度"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="月份" prop="period">
<el-input
v-model="queryParams.period"
placeholder="请输入月份"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="借阅状态" prop="borrowStatus">
<el-select
v-model="queryParams.borrowStatus"
placeholder="请选择借阅状态"
clearable
size="small"
>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="纸档位置" prop="position">
<el-input
v-model="queryParams.position"
placeholder="请输入纸档位置"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="归档状态" prop="fileStatus">
<el-select
v-model="queryParams.fileStatus"
placeholder="请选择归档状态"
clearable
size="small"
>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="创建日期" prop="createTime">
<el-date-picker
v-model="queryParams.createTime"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
<el-form-item label="制单人" prop="createBy">
<el-input
v-model="queryParams.createBy"
placeholder="请输入制单人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['ea:electronic:create']"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['ea:electronic:export']"
>导出</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<!-- <el-table-column label="资产档案id" align="center" prop="id" />
<el-table-column label="业务实体id" align="center" prop="companyId" /> -->
<el-table-column label="业务实体名称" align="center" prop="company" />
<!-- <el-table-column label="部门id" align="center" prop="deptId" /> -->
<el-table-column label="部门名称" align="center" prop="deptName" />
<el-table-column label="资产编号" align="center" prop="assetCode" />
<el-table-column label="资产名称" align="center" prop="assetName" />
<el-table-column
label="资产描述"
align="center"
prop="assetDescription"
/>
<el-table-column label="资产类型" align="center" prop="assetType" />
<el-table-column
label="购买日期"
align="center"
prop="purchaseDate"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.purchaseDate) }}</span>
</template>
</el-table-column>
<el-table-column
label="报废日期"
align="center"
prop="disposalDate"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.disposalDate) }}</span>
</template>
</el-table-column>
<el-table-column label="资产状态" align="center" prop="assetStatus" />
<el-table-column label="资产价格" align="center" prop="purchasePrice" />
<el-table-column label="资产数量" align="center" prop="assetQuantity" />
<el-table-column label="购买渠道" align="center" prop="purchaseChannel" />
<el-table-column label="文件来源" align="center" prop="source" />
<el-table-column label="年度" align="center" prop="year" />
<el-table-column label="月份" align="center" prop="period" />
<el-table-column label="借阅状态" align="center" prop="borrowStatus" />
<el-table-column label="纸档位置" align="center" prop="position" />
<el-table-column label="完整性" align="center" prop="cherks" />
<!-- <el-table-column label="归档id" align="center" prop="recordId" /> -->
<el-table-column label="归档状态" align="center" prop="fileStatus" />
<el-table-column
label="创建日期"
align="center"
prop="createTime"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="制单人" align="center" prop="createBy" />
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template v-slot="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['ea:electronic:update']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['ea:electronic:delete']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog
:title="title"
:visible.sync="open"
width="1000px"
append-to-body
>
<el-form ref="form" :model="form" :rules="rules" label-width="98px">
<!-- <el-form-item label="业务实体id" prop="companyId">
<el-input v-model="form.companyId" placeholder="请输入业务实体id" />
</el-form-item> -->
<el-row>
<el-col :span="8">
<el-form-item label="业务实体名称" prop="company">
<el-input
v-model="form.company"
placeholder="请输入业务实体名称"
/>
</el-form-item>
</el-col>
<!-- <el-form-item label="部门id" prop="deptId">
<el-input v-model="form.deptId" placeholder="请输入部门id" />
</el-form-item> -->
<el-col :span="8">
<el-form-item label="部门名称" prop="deptName">
<el-input v-model="form.deptName" placeholder="请输入部门名称" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="资产编号" prop="assetCode">
<el-input v-model="form.assetCode" placeholder="请输入资产编号" />
</el-form-item>
</el-col>
</el-row>
<el-form-item label="资产名称" prop="assetName">
<el-input v-model="form.assetName" placeholder="请输入资产名称" />
</el-form-item>
<el-form-item label="资产描述">
<editor v-model="form.assetDescription" :min-height="192" />
</el-form-item>
<el-row>
<el-col :span="8">
<el-form-item label="资产类型" prop="assetType">
<el-select v-model="form.assetType" placeholder="请选择资产类型">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="购买日期" prop="purchaseDate">
<el-date-picker
clearable
v-model="form.purchaseDate"
type="date"
value-format="yyyy-MM-dd "
placeholder="选择购买日期"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="报废日期" prop="disposalDate">
<el-date-picker
clearable
v-model="form.disposalDate"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择报废日期"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="资产状态" prop="assetStatus">
<el-input
v-model="form.assetStatus"
placeholder="请输入资产状态"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="资产价格" prop="purchasePrice">
<el-input
v-model="form.purchasePrice"
placeholder="请输入资产价格"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="资产数量" prop="assetQuantity">
<el-input
v-model="form.assetQuantity"
placeholder="请输入资产数量"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="购买渠道" prop="purchaseChannel">
<el-input
v-model="form.purchaseChannel"
placeholder="请输入购买渠道"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="文件来源" prop="source">
<el-input v-model="form.source" placeholder="请输入文件来源" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="年度" prop="year">
<el-date-picker
format="yyyy年"
v-model="form.year"
value-format="yyyy"
type="year"
placeholder="请选择会计年份"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="月份" prop="period">
<el-date-picker
popper-class="due_month"
v-model="form.period"
format="M月"
value-format="M"
type="month"
placeholder="请选择会计月份"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅状态" prop="borrowStatus">
<el-input
v-model="form.borrowStatus"
placeholder="请输入借阅状态"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="纸档位置" prop="position">
<el-input v-model="form.position" placeholder="请输入纸档位置" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="完整性" prop="cherks">
<el-input v-model="form.cherks" placeholder="请输入完整性" />
</el-form-item>
</el-col>
<!-- <el-form-item label="归档id" prop="recordId">
<el-input v-model="form.recordId" placeholder="请输入归档id" />
</el-form-item> -->
<el-col :span="8">
<el-form-item label="归档状态" prop="fileStatus">
<el-input
v-model="form.fileStatus"
placeholder="请输入归档状态"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="制单人" prop="createBy">
<el-input v-model="form.createBy" placeholder="请输入制单人" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
createElectronicAssets,
updateElectronicAssets,
deleteElectronicAssets,
getElectronicAssets,
getElectronicAssetsPage,
exportElectronicAssetsExcel,
} from "@/api/ea/electronicAssets/assetFile";
import Editor from "@/components/Editor";
export default {
name: "ElectronicAssets",
components: {
Editor,
},
data() {
return {
//
loading: true,
//
exportLoading: false,
//
showSearch: true,
//
total: 0,
//
list: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNo: 1,
pageSize: 10,
companyId: null,
company: null,
deptId: null,
deptName: null,
assetCode: null,
assetName: null,
assetDescription: null,
assetType: null,
purchaseDate: [],
disposalDate: [],
assetStatus: null,
purchasePrice: null,
assetQuantity: null,
purchaseChannel: null,
source: null,
year: null,
period: null,
borrowStatus: null,
position: null,
cherks: null,
recordId: null,
fileStatus: null,
createTime: [],
createBy: null,
},
//
form: {},
//
rules: {},
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getElectronicAssetsPage(this.queryParams).then((response) => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
companyId: undefined,
company: undefined,
deptId: undefined,
deptName: undefined,
assetCode: undefined,
assetName: undefined,
assetDescription: undefined,
assetType: undefined,
purchaseDate: undefined,
disposalDate: undefined,
assetStatus: undefined,
purchasePrice: undefined,
assetQuantity: undefined,
purchaseChannel: undefined,
source: undefined,
year: undefined,
period: undefined,
borrowStatus: undefined,
position: undefined,
cherks: undefined,
recordId: undefined,
fileStatus: undefined,
createBy: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加资产档案";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getElectronicAssets(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改资产档案";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (!valid) {
return;
}
//
if (this.form.id != null) {
updateElectronicAssets(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
//
createElectronicAssets(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal
.confirm('是否确认删除资产档案编号为"' + id + '"的数据项?')
.then(function () {
return deleteElectronicAssets(id);
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
//
let params = { ...this.queryParams };
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal
.confirm("是否确认导出所有资产档案数据项?")
.then(() => {
this.exportLoading = true;
return exportElectronicAssetsExcel(params);
})
.then((response) => {
this.$download.excel(response, "资产档案.xls");
this.exportLoading = false;
})
.catch(() => {});
},
},
};
</script>

@ -0,0 +1,178 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="98px"
>
<el-form-item label="鉴定人" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入鉴定人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['archives:authenticate:export']"
>导出</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="档案类型" align="center" prop="type" />
<el-table-column label="档案位置" align="center" prop="position" />
<el-table-column
label="保存期限"
align="center"
prop="timeLimit"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.timeLimit) }}</span>
</template>
</el-table-column>
<el-table-column label="鉴定人" align="center" prop="userName" />
<el-table-column label="业务实体" align="center" prop="company" />
<el-table-column label="鉴定日期" align="center" prop="date" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.date) }}</span>
</template>
</el-table-column>
<el-table-column label="鉴定结果" align="center" prop="result" />
<el-table-column label="备注" align="center" prop="remark" />
</el-table>
<!-- 分页组件 -->
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
</template>
<script>
import {
getAuthenticatePage,
exportAuthenticateExcel,
} from "@/api/fileAuth/authenticate";
export default {
name: "Authenticate",
components: {},
data() {
return {
//
loading: true,
//
exportLoading: false,
//
showSearch: true,
//
total: 0,
//
list: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNo: 1,
pageSize: 10,
type: null,
date: [],
position: null,
timeLimit: null,
recordId: null,
userId: null,
userName: null,
recordName: null,
createTime: [],
createBy: null,
deptId: null,
deptName: null,
companyId: null,
company: null,
remark: null,
},
//
form: {},
//
rules: {},
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getAuthenticatePage(this.queryParams).then((response) => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 导出按钮操作 */
handleExport() {
//
let params = { ...this.queryParams };
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal
.confirm("是否确认导出所有档案鉴定数据项?")
.then(() => {
this.exportLoading = true;
return exportAuthenticateExcel(params);
})
.then((response) => {
this.$download.excel(response, "档案鉴定.xls");
this.exportLoading = false;
})
.catch(() => {});
},
},
};
</script>

@ -0,0 +1,273 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="88px"
>
<el-form-item label="档案类型" prop="fileType">
<el-select
v-model="queryParams.fileType"
placeholder="请选择档案类型"
clearable
>
<el-option
v-for="item in fileTypeOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="全宗号" prop="caseNum">
<el-select
v-model="queryParams.caseNum"
placeholder="请选择全宗号"
clearable
>
<el-option
v-for="item in caseNumOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="目录号" prop="catalogNum">
<el-select
v-model="queryParams.catalogNum"
placeholder="请选择目录号"
clearable
>
<el-option
v-for="item in catalogNumOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="案卷号" prop="filesNum">
<el-input
v-model="queryParams.filesNum"
placeholder="请输入案卷号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAuth"
>鉴定</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table
v-loading="loading"
:data="list"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="业务实体" align="center" prop="company" />
<el-table-column label="档案类型" align="center" prop="fileType">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.ARCHIVES_FILE_TYPE"
:value="scope.row.fileType"
/>
</template>
</el-table-column>
<el-table-column label="档案位置" align="center" prop="site" />
<el-table-column label="全宗号" align="center" prop="caseNum" />
<el-table-column label="目录号" align="center" prop="catalogNum" />
<el-table-column label="案卷号" align="center" prop="filesNum" />
<!-- <el-table-column label="会计年份" align="center" prop="year" />
<el-table-column label="会计月份" align="center" prop="period" /> -->
<el-table-column label="归档状态" align="center" prop="fileStatus">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.ARCHIVES_FILE_STATUS"
:value="scope.row.fileStatus"
/>
</template>
</el-table-column>
<el-table-column label="归档时间" align="center" prop="recordTime" />
<el-table-column label="备注" align="center" prop="remark" />
</el-table>
<!-- 分页组件 -->
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
</template>
<script>
import { listData } from "@/api/system/dict/data";
import { getAuthenticateList } from "@/api/fileAuth/authenticate";
export default {
name: "Record",
components: {},
data() {
return {
//
loading: true,
//
multiple: true,
//
exportLoading: false,
//
showSearch: true,
//
total: 0,
//
list: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNo: 1,
pageSize: 10,
fileType: null,
caseNum: null,
catalogNum: null,
filesNum: null,
},
//
form: {},
//
rules: {},
fileTypeOptions: [], //
fileStatusOptions: [], //
catalogNumOptions: [], //
caseNumOptions: [], //
};
},
created() {
this.getList();
this.handleInitList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getAuthenticateList(this.queryParams).then((response) => {
this.list = response.list;
this.total = response.total;
this.loading = false;
});
},
//
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.multiple = !selection.length;
},
//
handleInitList() {
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_file_type",
}).then((res) => {
this.fileTypeOptions = res.data.list || [];
});
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_case_num",
}).then((res) => {
this.caseNumOptions = res.data.list || [];
});
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_catalog_num",
}).then((res) => {
this.catalogNumOptions = res.data.list || [];
});
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_file_status",
}).then((res) => {
this.fileStatusOptions = res.data.list || [];
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
companyId: undefined,
company: undefined,
frequency: undefined,
fileType: undefined,
year: undefined,
period: undefined,
vouNum: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleAuth() {},
},
};
</script>
<style lang="scss">
.due_month .el-date-picker__header {
display: none;
}
</style>

@ -1,56 +1,62 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="98px"
>
<el-form-item label="库房名称" prop="name">
<el-input v-model="queryParams.name" placeholder="请输入库房名称" clearable @keyup.enter.native="handleQuery"/>
<el-input
v-model="queryParams.name"
placeholder="请输入库房名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="库房编号" prop="code">
<el-input v-model="queryParams.code" placeholder="请输入库房编号" clearable @keyup.enter.native="handleQuery"/>
<el-input
v-model="queryParams.code"
placeholder="请输入库房编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="库房地址" prop="address">
<el-input v-model="queryParams.address" placeholder="请输入库房地址" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="立党单位id" prop="organizationId">
<el-input v-model="queryParams.organizationId" placeholder="请输入立党单位id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="管理者ID" prop="manegerId">
<el-input v-model="queryParams.manegerId" placeholder="请输入管理者ID" clearable @keyup.enter.native="handleQuery"/>
<el-input
v-model="queryParams.address"
placeholder="请输入库房地址"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="管理者姓名" prop="manegerName">
<el-input v-model="queryParams.manegerName" placeholder="请输入管理者姓名" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="所属部门ID" prop="deptId">
<el-input v-model="queryParams.deptId" placeholder="请输入所属部门ID" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="所属部门" prop="deptName">
<el-input v-model="queryParams.deptName" placeholder="请输入所属部门" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="业务实体ID" prop="companyId">
<el-input v-model="queryParams.companyId" placeholder="请输入业务实体ID" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="业务实体" prop="company">
<el-input v-model="queryParams.company" placeholder="请输入业务实体" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="用户ID" prop="userId">
<el-input v-model="queryParams.userId" placeholder="请输入用户ID" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="立档单位名称" prop="organizationName">
<el-input v-model="queryParams.organizationName" placeholder="请输入立档单位名称" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="立档单位编码" prop="organizationCode">
<el-input v-model="queryParams.organizationCode" placeholder="请输入立档单位编码" clearable @keyup.enter.native="handleQuery"/>
<el-date-picker
v-model="queryParams.createTime"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
<!-- <el-form-item label="立档单位名称" prop="organizationName">
<el-input
v-model="queryParams.organizationName"
placeholder="请输入立档单位名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> -->
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"></el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
@ -58,95 +64,158 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['setting:depot:create']">新增</el-button>
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['setting:depot:create']"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['setting:depot:export']">导出</el-button>
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['setting:depot:export']"
>导出</el-button
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="主键ID" align="center" prop="id" />
<!-- <el-table-column label="主键ID" align="center" prop="id" /> -->
<el-table-column label="库房名称" align="center" prop="name" />
<el-table-column label="库房编号" align="center" prop="code" />
<el-table-column label="库房地址" align="center" prop="address" />
<el-table-column label="立党单位id" align="center" prop="organizationId" />
<el-table-column label="管理者ID" align="center" prop="manegerId" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<el-table-column label="管理者姓名" align="center" prop="manegerName" />
<el-table-column
label="立档单位名称"
align="center"
prop="organizationName"
/>
<el-table-column
label="创建时间"
align="center"
prop="createTime"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="管理者姓名" align="center" prop="manegerName" />
<el-table-column label="所属部门ID" align="center" prop="deptId" />
<el-table-column label="所属部门" align="center" prop="deptName" />
<el-table-column label="业务实体ID" align="center" prop="companyId" />
<el-table-column label="业务实体" align="center" prop="company" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="立档单位名称" align="center" prop="organizationName" />
<el-table-column label="立档单位编码" align="center" prop="organizationCode" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['setting:depot:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['setting:depot:delete']">删除</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['setting:depot:update']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['setting:depot:delete']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="库房名称" prop="name">
<el-input v-model="form.name" placeholder="请输入库房名称" />
</el-form-item>
<el-form-item label="库房编号" prop="code">
<el-input v-model="form.code" placeholder="请输入库房编号" />
</el-form-item>
<el-form-item label="库房地址" prop="address">
<el-input v-model="form.address" placeholder="请输入库房地址" />
</el-form-item>
<el-form-item label="立党单位id" prop="organizationId">
<el-input v-model="form.organizationId" placeholder="请输入立党单位id" />
</el-form-item>
<el-form-item label="管理者ID" prop="manegerId">
<el-input v-model="form.manegerId" placeholder="请输入管理者ID" />
</el-form-item>
<el-form-item label="管理者姓名" prop="manegerName">
<el-input v-model="form.manegerName" placeholder="请输入管理者姓名" />
</el-form-item>
<el-form-item label="所属部门ID" prop="deptId">
<el-input v-model="form.deptId" placeholder="请输入所属部门ID" />
</el-form-item>
<el-form-item label="所属部门" prop="deptName">
<el-input v-model="form.deptName" placeholder="请输入所属部门" />
</el-form-item>
<el-form-item label="业务实体ID" prop="companyId">
<el-input v-model="form.companyId" placeholder="请输入业务实体ID" />
</el-form-item>
<el-form-item label="业务实体" prop="company">
<el-input v-model="form.company" placeholder="请输入业务实体" />
</el-form-item>
<el-dialog
:title="title"
:visible.sync="open"
width="1000px"
append-to-body
>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-row>
<el-col :span="8">
<el-form-item label="库房名称" prop="name">
<el-input v-model="form.name" placeholder="请输入库房名称" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="库房编号" prop="code">
<el-input v-model="form.code" placeholder="请输入库房编号" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="库房地址" prop="address">
<el-input v-model="form.address" placeholder="请输入库房地址" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="管理者姓名" prop="manegerName">
<el-select
v-model="form.manegerName"
filterable
placeholder="请选择管理者"
>
<el-option
v-for="item in userOptions"
:key="item.id"
:value="item.id"
:label="item.username"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="立档单位" prop="organizationName">
<el-select
v-model="form.organizationName"
placeholder="请选择立档单位"
>
<el-option
v-for="item in organizationList"
:key="item.id"
:value="item.id"
:label="item.organizationName"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="立档单位名称" prop="organizationName">
<el-input v-model="form.organizationName" placeholder="请输入立档单位名称" />
</el-form-item>
<el-form-item label="立档单位编码" prop="organizationCode">
<el-input v-model="form.organizationCode" placeholder="请输入立档单位编码" />
<el-input
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -158,12 +227,20 @@
</template>
<script>
import { createDepot, updateDepot, deleteDepot, getDepot, getDepotPage, exportDepotExcel } from "@/api/setting/depot";
import {
createDepot,
updateDepot,
deleteDepot,
getDepot,
getDepotPage,
exportDepotExcel,
} from "@/api/setting/depot";
import { getOrganizationPage } from "@/api/setting/organization";
import { listUser } from "@/api/system/user";
export default {
name: "Depot",
components: {
},
components: {},
data() {
return {
//
@ -203,24 +280,39 @@ export default {
//
form: {},
//
rules: {
}
rules: {},
organizationList: [], //
userOptions: [], //
};
},
created() {
this.getList();
this.getOrganizationList();
this.getUserList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getDepotPage(this.queryParams).then(response => {
getDepotPage(this.queryParams).then((response) => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
//
getOrganizationList() {
getOrganizationPage().then((response) => {
this.organizationList = response.data.list;
});
},
//
getUserList() {
listUser().then((response) => {
this.userOptions = response.data.list;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
@ -267,7 +359,7 @@ export default {
handleUpdate(row) {
this.reset();
const id = row.id;
getDepot(id).then(response => {
getDepot(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改库房管理";
@ -275,13 +367,13 @@ export default {
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
this.$refs["form"].validate((valid) => {
if (!valid) {
return;
}
//
if (this.form.id != null) {
updateDepot(this.form).then(response => {
updateDepot(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
@ -289,7 +381,7 @@ export default {
return;
}
//
createDepot(this.form).then(response => {
createDepot(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
@ -299,27 +391,35 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除库房管理编号为"' + id + '"的数据项?').then(function() {
this.$modal
.confirm('是否确认删除库房管理编号为"' + id + '"的数据项?')
.then(function () {
return deleteDepot(id);
}).then(() => {
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
//
let params = {...this.queryParams};
let params = { ...this.queryParams };
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有库房管理数据项?').then(() => {
this.$modal
.confirm("是否确认导出所有库房管理数据项?")
.then(() => {
this.exportLoading = true;
return exportDepotExcel(params);
}).then(response => {
this.$download.excel(response, '库房管理.xls');
})
.then((response) => {
this.$download.excel(response, "库房管理.xls");
this.exportLoading = false;
}).catch(() => {});
}
}
})
.catch(() => {});
},
},
};
</script>

@ -1,50 +1,63 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="所属库房ID" prop="depotId">
<el-input v-model="queryParams.depotId" placeholder="请输入所属库房ID" clearable @keyup.enter.native="handleQuery"/>
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="98px"
>
<el-form-item label="所属库房" prop="depotId">
<el-input
v-model="queryParams.depotId"
placeholder="请输入所属库房"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="柜子名称" prop="name">
<el-input v-model="queryParams.name" placeholder="请输入柜子名称" clearable @keyup.enter.native="handleQuery"/>
<el-input
v-model="queryParams.name"
placeholder="请输入柜子名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="柜子编号" prop="code">
<el-input v-model="queryParams.code" placeholder="请输入柜子编号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="库房地址" prop="address">
<el-input v-model="queryParams.address" placeholder="请输入库房地址" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="管理者ID" prop="manegerId">
<el-input v-model="queryParams.manegerId" placeholder="请输入管理者ID" clearable @keyup.enter.native="handleQuery"/>
<el-input
v-model="queryParams.code"
placeholder="请输入柜子编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="管理者姓名" prop="manegerName">
<el-input v-model="queryParams.manegerName" placeholder="请输入管理者姓名" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="所属部门ID" prop="deptId">
<el-input v-model="queryParams.deptId" placeholder="请输入所属部门ID" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="所属部门" prop="deptName">
<el-input v-model="queryParams.deptName" placeholder="请输入所属部门" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="业务实体ID" prop="companyId">
<el-input v-model="queryParams.companyId" placeholder="请输入业务实体ID" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="业务实体" prop="company">
<el-input v-model="queryParams.company" placeholder="请输入业务实体" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="用户ID" prop="userId">
<el-input v-model="queryParams.userId" placeholder="请输入用户ID" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
<el-date-picker
v-model="queryParams.createTime"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
<!-- <el-form-item label="管理者姓名" prop="manegerName">
<el-input
v-model="queryParams.manegerName"
placeholder="请输入管理者姓名"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> -->
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"></el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
@ -52,87 +65,142 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['setting:depot-cabinet:create']">新增</el-button>
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['setting:depot-cabinet:create']"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['setting:depot-cabinet:export']">导出</el-button>
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['setting:depot-cabinet:export']"
>导出</el-button
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="主键ID" align="center" prop="id" />
<el-table-column label="所属库房ID" align="center" prop="depotId" />
<!-- <el-table-column label="所属库房ID" align="center" prop="depotId" /> -->
<el-table-column label="柜子名称" align="center" prop="name" />
<el-table-column label="柜子编号" align="center" prop="code" />
<el-table-column label="库房地址" align="center" prop="address" />
<el-table-column label="管理者ID" align="center" prop="manegerId" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<el-table-column label="管理者姓名" align="center" prop="manegerName" />
<el-table-column
label="创建时间"
align="center"
prop="createTime"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="管理者姓名" align="center" prop="manegerName" />
<el-table-column label="所属部门ID" align="center" prop="deptId" />
<el-table-column label="所属部门" align="center" prop="deptName" />
<el-table-column label="业务实体ID" align="center" prop="companyId" />
<el-table-column label="业务实体" align="center" prop="company" />
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['setting:depot-cabinet:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['setting:depot-cabinet:delete']">删除</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['setting:depot-cabinet:update']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['setting:depot-cabinet:delete']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="所属库房ID" prop="depotId">
<el-input v-model="form.depotId" placeholder="请输入所属库房ID" />
</el-form-item>
<el-form-item label="柜子名称" prop="name">
<el-input v-model="form.name" placeholder="请输入柜子名称" />
</el-form-item>
<el-form-item label="柜子编号" prop="code">
<el-input v-model="form.code" placeholder="请输入柜子编号" />
</el-form-item>
<el-form-item label="库房地址" prop="address">
<el-input v-model="form.address" placeholder="请输入库房地址" />
</el-form-item>
<el-form-item label="管理者ID" prop="manegerId">
<el-input v-model="form.manegerId" placeholder="请输入管理者ID" />
</el-form-item>
<el-form-item label="管理者姓名" prop="manegerName">
<el-input v-model="form.manegerName" placeholder="请输入管理者姓名" />
</el-form-item>
<el-form-item label="所属部门ID" prop="deptId">
<el-input v-model="form.deptId" placeholder="请输入所属部门ID" />
</el-form-item>
<el-form-item label="所属部门" prop="deptName">
<el-input v-model="form.deptName" placeholder="请输入所属部门" />
</el-form-item>
<el-form-item label="业务实体ID" prop="companyId">
<el-input v-model="form.companyId" placeholder="请输入业务实体ID" />
</el-form-item>
<el-form-item label="业务实体" prop="company">
<el-input v-model="form.company" placeholder="请输入业务实体" />
</el-form-item>
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-dialog
:title="title"
:visible.sync="open"
width="1000px"
append-to-body
>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-row>
<el-col :span="8">
<el-form-item label="柜子类型" prop="name">
<el-input v-model="form.name" placeholder="请输入柜子类型" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="柜子编号" prop="code">
<el-input v-model="form.code" placeholder="请输入柜子编号" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="柜子数量" prop="code">
<el-input v-model="form.code" placeholder="请输入柜子数量" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="库房地址" prop="address">
<el-input v-model="form.address" placeholder="请输入库房地址" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="管理者姓名" prop="manegerName">
<el-select
v-model="form.manegerName"
filterable
placeholder="请选择管理者"
>
<el-option
v-for="item in userOptions"
:key="item.id"
:value="item.id"
:label="item.username"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
<el-input
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -144,12 +212,20 @@
</template>
<script>
import { createDepotCabinet, updateDepotCabinet, deleteDepotCabinet, getDepotCabinet, getDepotCabinetPage, exportDepotCabinetExcel } from "@/api/setting/depotCabinet";
import {
createDepotCabinet,
updateDepotCabinet,
deleteDepotCabinet,
getDepotCabinet,
getDepotCabinetPage,
exportDepotCabinetExcel,
} from "@/api/setting/depotCabinet";
// import { getDepotPage } from "@/api/setting/depot";
import { listUser } from "@/api/system/user";
export default {
name: "DepotCabinet",
components: {
},
components: {},
data() {
return {
//
@ -187,24 +263,31 @@ export default {
//
form: {},
//
rules: {
}
rules: {},
userOptions: [], //
};
},
created() {
this.getList();
this.getUserList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getDepotCabinetPage(this.queryParams).then(response => {
getDepotCabinetPage(this.queryParams).then((response) => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
//
getUserList() {
listUser().then((response) => {
this.userOptions = response.data.list;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
@ -249,7 +332,7 @@ export default {
handleUpdate(row) {
this.reset();
const id = row.id;
getDepotCabinet(id).then(response => {
getDepotCabinet(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改档案柜管理";
@ -257,13 +340,13 @@ export default {
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
this.$refs["form"].validate((valid) => {
if (!valid) {
return;
}
//
if (this.form.id != null) {
updateDepotCabinet(this.form).then(response => {
updateDepotCabinet(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
@ -271,7 +354,7 @@ export default {
return;
}
//
createDepotCabinet(this.form).then(response => {
createDepotCabinet(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
@ -281,27 +364,35 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除档案柜管理编号为"' + id + '"的数据项?').then(function() {
this.$modal
.confirm('是否确认删除档案柜管理编号为"' + id + '"的数据项?')
.then(function () {
return deleteDepotCabinet(id);
}).then(() => {
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
//
let params = {...this.queryParams};
let params = { ...this.queryParams };
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有档案柜管理数据项?').then(() => {
this.$modal
.confirm("是否确认导出所有档案柜管理数据项?")
.then(() => {
this.exportLoading = true;
return exportDepotCabinetExcel(params);
}).then(response => {
this.$download.excel(response, '档案柜管理.xls');
})
.then((response) => {
this.$download.excel(response, "档案柜管理.xls");
this.exportLoading = false;
}).catch(() => {});
}
}
})
.catch(() => {});
},
},
};
</script>

@ -0,0 +1,440 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="98px"
>
<el-form-item label="档案类型编码" prop="categoryCode">
<el-input
v-model="queryParams.categoryCode"
placeholder="请输入档案类型编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="类型名称" prop="typeName">
<el-input
v-model="queryParams.typeName"
placeholder="请输入类型名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="目录号" prop="catalogNumber">
<el-input
v-model="queryParams.catalogNumber"
placeholder="请输入目录号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="保管期限" prop="custodyTime">
<el-date-picker
v-model="queryParams.custodyTime"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
<el-form-item label="启用状态 " prop="state">
<el-select
v-model="queryParams.state"
placeholder="请选择启用状态 "
clearable
size="small"
>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['setting:file-category:create']"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['setting:file-category:export']"
>导出</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column
label="档案类型编码"
align="center"
prop="categoryCode"
/>
<!-- <el-table-column label="档案类型父id" align="center" prop="parentId" /> -->
<el-table-column label="类型名称" align="center" prop="typeName" />
<el-table-column label="目录号" align="center" prop="catalogNumber">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.ARCHIVES_CATALOG_NUM"
:value="scope.row.catalogNumber"
/>
</template>
</el-table-column>
<el-table-column
label="二级类别号"
align="center"
prop="twoCatalogNumber"
/>
<el-table-column
label="保管期限"
align="center"
prop="custodyTime"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.custodyTime) }}</span>
</template>
</el-table-column>
<el-table-column label="启用状态 " align="center" prop="state" />
<el-table-column
label="创建日期"
align="center"
prop="createTime"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<!-- <el-table-column label="制单人" align="center" prop="createBy" /> -->
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template v-slot="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['setting:file-category:update']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['setting:file-category:delete']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog
:title="title"
:visible.sync="open"
width="1000px"
append-to-body
>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-row>
<el-col :span="8">
<el-form-item label="档案类型编码" prop="categoryCode">
<el-input
v-model="form.categoryCode"
placeholder="请输入档案类型编码"
/>
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-form-item label="档案类型父id" prop="parentId">
<el-input
v-model="form.parentId"
placeholder="请输入档案类型父id"
/>
</el-form-item>
</el-col> -->
<el-col :span="8">
<el-form-item label="类型名称" prop="typeName">
<el-input v-model="form.typeName" placeholder="请输入类型名称" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="目录号" prop="catalogNumber">
<el-select
v-model="form.catalogNumber"
placeholder="请选择目录号"
>
<el-option
v-for="item in catalogNumOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="二级类别号" prop="twoCatalogNumber">
<el-input
v-model="form.twoCatalogNumber"
placeholder="请输入二级类别号"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="保管期限" prop="custodyTime">
<el-date-picker
clearable
v-model="form.custodyTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择保管期限"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="启用状态 " prop="state">
<el-radio-group v-model="form.state">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
createFileCategory,
updateFileCategory,
deleteFileCategory,
getFileCategory,
getFileCategoryPage,
exportFileCategoryExcel,
} from "@/api/setting/fileCategory";
import { listData } from "@/api/system/dict/data";
export default {
name: "FileCategory",
components: {},
data() {
return {
//
loading: true,
//
exportLoading: false,
//
showSearch: true,
//
total: 0,
//
list: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNo: 1,
pageSize: 10,
categoryCode: null,
parentId: null,
typeName: null,
catalogNumber: null,
twoCatalogNumber: null,
custodyTime: [],
state: null,
createTime: [],
createBy: null,
},
//
form: {},
//
rules: {},
catalogNumOptions: [], //
};
},
created() {
this.getList();
this.handleInitList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getFileCategoryPage(this.queryParams).then((response) => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
//
handleInitList() {
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_catalog_num",
}).then((res) => {
this.catalogNumOptions = res.data.list || [];
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
categoryCode: undefined,
parentId: undefined,
typeName: undefined,
catalogNumber: undefined,
twoCatalogNumber: undefined,
custodyTime: undefined,
state: undefined,
createBy: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加档案分类";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getFileCategory(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改档案分类";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (!valid) {
return;
}
//
if (this.form.id != null) {
updateFileCategory(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
//
createFileCategory(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal
.confirm('是否确认删除档案分类编号为"' + id + '"的数据项?')
.then(function () {
return deleteFileCategory(id);
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
//
let params = { ...this.queryParams };
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal
.confirm("是否确认导出所有档案分类数据项?")
.then(() => {
this.exportLoading = true;
return exportFileCategoryExcel(params);
})
.then((response) => {
this.$download.excel(response, "档案分类.xls");
this.exportLoading = false;
})
.catch(() => {});
},
},
};
</script>

@ -1,41 +1,61 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="68px"
>
<el-form-item label="单位名称" prop="organizationName">
<el-input v-model="queryParams.organizationName" placeholder="请输入单位名称" clearable @keyup.enter.native="handleQuery"/>
<el-input
v-model="queryParams.organizationName"
placeholder="请输入单位名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="单位编码" prop="organizationCode">
<el-input v-model="queryParams.organizationCode" placeholder="请输入单位编码" clearable @keyup.enter.native="handleQuery"/>
<el-input
v-model="queryParams.organizationCode"
placeholder="请输入单位编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="全宗号" prop="caseNum">
<el-input v-model="queryParams.caseNum" placeholder="请输入全宗号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
<el-select
v-model="queryParams.caseNum"
placeholder="请选择全宗号"
clearable
>
<el-option
v-for="item in caseNumOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="所属部门id" prop="deptId">
<el-input v-model="queryParams.deptId" placeholder="请输入所属部门id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="所属部门" prop="deptName">
<el-input v-model="queryParams.deptName" placeholder="请输入所属部门" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="用户id" prop="userId">
<el-input v-model="queryParams.userId" placeholder="请输入用户id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="业务实体id" prop="companyId">
<el-input v-model="queryParams.companyId" placeholder="请输入业务实体id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="业务实体" prop="company">
<el-input v-model="queryParams.company" placeholder="请输入业务实体" clearable @keyup.enter.native="handleQuery"/>
<el-date-picker
v-model="queryParams.createTime"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"></el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
@ -43,75 +63,139 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['setting:organization:create']">新增</el-button>
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['setting:organization:create']"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['setting:organization:export']">导出</el-button>
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['setting:organization:export']"
>导出</el-button
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="单位id" align="center" prop="id" />
<el-table-column label="单位名称" align="center" prop="organizationName" />
<el-table-column label="单位编码" align="center" prop="organizationCode" />
<!-- <el-table-column label="单位id" align="center" prop="id" /> -->
<el-table-column
label="单位名称"
align="center"
prop="organizationName"
/>
<el-table-column
label="单位编码"
align="center"
prop="organizationCode"
/>
<el-table-column label="全宗号" align="center" prop="caseNum" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<el-table-column label="用户id" align="center" prop="userId" />
<el-table-column
label="创建时间"
align="center"
prop="createTime"
width="180"
>
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="所属部门id" align="center" prop="deptId" />
<el-table-column label="所属部门" align="center" prop="deptName" />
<el-table-column label="用户id" align="center" prop="userId" />
<el-table-column label="业务实体id" align="center" prop="companyId" />
<el-table-column label="业务实体" align="center" prop="company" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['setting:organization:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['setting:organization:delete']">删除</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['setting:organization:update']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['setting:organization:delete']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="单位名称" prop="organizationName">
<el-input v-model="form.organizationName" placeholder="请输入单位名称" />
</el-form-item>
<el-form-item label="单位编码" prop="organizationCode">
<el-input v-model="form.organizationCode" placeholder="请输入单位编码" />
</el-form-item>
<el-form-item label="全宗号" prop="caseNum">
<el-input v-model="form.caseNum" placeholder="请输入全宗号" />
</el-form-item>
<el-dialog
:title="title"
:visible.sync="open"
width="1000px"
append-to-body
>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-row>
<el-col :span="8">
<el-form-item label="单位名称" prop="organizationName">
<el-input
v-model="form.organizationName"
placeholder="请输入单位名称"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="单位编码" prop="organizationCode">
<el-input
v-model="form.organizationCode"
placeholder="请输入单位编码"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="全宗号" prop="caseNum">
<el-select v-model="form.caseNum" placeholder="请选择全宗号">
<el-option
v-for="item in caseNumOptions"
:key="item.id"
:value="item.value"
:label="item.label"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="所属部门id" prop="deptId">
<el-input v-model="form.deptId" placeholder="请输入所属部门id" />
</el-form-item>
<el-form-item label="所属部门" prop="deptName">
<el-input v-model="form.deptName" placeholder="请输入所属部门" />
</el-form-item>
<el-form-item label="用户id" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户id" />
</el-form-item>
<el-form-item label="业务实体id" prop="companyId">
<el-input v-model="form.companyId" placeholder="请输入业务实体id" />
</el-form-item>
<el-form-item label="业务实体" prop="company">
<el-input v-model="form.company" placeholder="请输入业务实体" />
<el-input
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -123,12 +207,20 @@
</template>
<script>
import { createOrganization, updateOrganization, deleteOrganization, getOrganization, getOrganizationPage, exportOrganizationExcel } from "@/api/setting/organization";
import {
createOrganization,
updateOrganization,
deleteOrganization,
getOrganization,
getOrganizationPage,
exportOrganizationExcel,
} from "@/api/setting/organization";
import { listData } from "@/api/system/dict/data";
import { listUser } from "@/api/system/user";
export default {
name: "Organization",
components: {
},
components: {},
data() {
return {
//
@ -164,23 +256,53 @@ export default {
form: {},
//
rules: {
}
organizationName: [
{ required: true, message: "立档单位名称不能为空", trigger: "blur" },
],
organizationCode: [
{ required: true, message: "立档单位编码不能为空", trigger: "blur" },
],
caseNum: [
{ required: true, message: "全宗号不能为空", trigger: "blur" },
],
},
caseNumOptions: [], //
userOptions: [], //
};
},
created() {
this.getList();
this.handleInitList();
this.getUserList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getOrganizationPage(this.queryParams).then(response => {
getOrganizationPage(this.queryParams).then((response) => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
//
handleInitList() {
//
listData({
pageNo: 1,
pageSize: 100,
dictType: "archives_case_num",
}).then((res) => {
this.caseNumOptions = res.data.list || [];
});
},
//
getUserList() {
listUser().then((response) => {
this.userOptions = response.data.list;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
@ -222,7 +344,7 @@ export default {
handleUpdate(row) {
this.reset();
const id = row.id;
getOrganization(id).then(response => {
getOrganization(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改立档单位";
@ -230,13 +352,13 @@ export default {
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
this.$refs["form"].validate((valid) => {
if (!valid) {
return;
}
//
if (this.form.id != null) {
updateOrganization(this.form).then(response => {
updateOrganization(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
@ -244,7 +366,7 @@ export default {
return;
}
//
createOrganization(this.form).then(response => {
createOrganization(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
@ -254,27 +376,35 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除立档单位编号为"' + id + '"的数据项?').then(function() {
this.$modal
.confirm('是否确认删除立档单位编号为"' + id + '"的数据项?')
.then(function () {
return deleteOrganization(id);
}).then(() => {
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
})
.catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
//
let params = {...this.queryParams};
let params = { ...this.queryParams };
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有立档单位数据项?').then(() => {
this.$modal
.confirm("是否确认导出所有立档单位数据项?")
.then(() => {
this.exportLoading = true;
return exportOrganizationExcel(params);
}).then(response => {
this.$download.excel(response, '立档单位.xls');
})
.then((response) => {
this.$download.excel(response, "立档单位.xls");
this.exportLoading = false;
}).catch(() => {});
}
}
})
.catch(() => {});
},
},
};
</script>

Loading…
Cancel
Save