Merge remote-tracking branch 'origin/main'

main
JiilingLee 1 year ago
commit 5fc8452f9a

@ -18,6 +18,15 @@ export function updateVoucher(data) {
})
}
// 归档会计凭证
export function updateVoucherRecord(data) {
return request({
url: '/accounting/voucher/updateRecord',
method: 'put',
data: data
})
}
// 删除会计凭证
export function deleteVoucher(id) {
return request({

@ -18,11 +18,20 @@ export function uploadFileApi(data) {
})
}
// 文件上传
// 发票上传
export function uploadInvoiceApi(data) {
return request({
url: '/accounting/invoices/identify',
method: 'post',
data: data
})
}
// 银行回单上传
export function uploadBankSlipApi(data) {
return request({
url: '/archives/bank-slip/bankReceipt/identify',
method: 'post',
data: data
})
}

@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建电子档案附件
export function createElectronicAttachment(data) {
return request({
url: '/ea/electronic-attachment/create',
method: 'post',
data: data
})
}
// 更新电子档案附件
export function updateElectronicAttachment(data) {
return request({
url: '/ea/electronic-attachment/update',
method: 'put',
data: data
})
}
// 删除电子档案附件
export function deleteElectronicAttachment(id) {
return request({
url: '/ea/electronic-attachment/delete?id=' + id,
method: 'delete'
})
}
// 获得电子档案附件
export function getElectronicAttachment(id) {
return request({
url: '/ea/electronic-attachment/get?id=' + id,
method: 'get'
})
}
// 获得电子档案附件分页
export function getElectronicAttachmentPage(query) {
return request({
url: '/ea/electronic-attachment/page',
method: 'get',
params: query
})
}
// 导出电子档案附件 Excel
export function exportElectronicAttachmentExcel(query) {
return request({
url: '/ea/electronic-attachment/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

@ -0,0 +1,229 @@
<!-- -->
<template>
<div class="out">
<el-upload
:class="{ hide: hideUpload }"
ref="imgListRef"
:limit="1"
:file-list="fileList"
:on-change="onUploadChange"
:before-upload="beforeFileUpload"
:on-error="handleUploadError"
action="#"
:accept="imgType"
list-type="picture-card"
:auto-upload="false"
>
<i class="el-icon-plus"></i>
<div
slot="file"
slot-scope="{ file }"
style="position: relative; height: 100%"
>
<!-- pdf -->
<img
class="el-upload-list__item-thumbnail"
v-if="!isPdf"
:src="file.url"
alt
/>
<img
class="el-upload-list__item-thumbnail"
v-else
src="~@/assets/images/pdf.png"
alt
/>
<div v-if="isPdf" class="pdf-name">{{ pdfName }}</div>
<!-- ofd -->
<img
class="el-upload-list__item-thumbnail"
v-if="!isOfd"
:src="file.url"
alt
/>
<img class="el-upload-list__item-thumbnail" v-else alt />
<div v-if="isOfd" class="pdf-name">{{ ofdName }}</div>
<span class="el-upload-list__item-actions">
<span
class="el-upload-list__item-preview"
@click="handlePictureCardPreview(file)"
>
<i class="el-icon-zoom-in"></i>
</span>
<span
class="el-upload-list__item-delete"
@click="handleRemove(file, fileList)"
>
<i class="el-icon-delete"></i>
</span>
</span>
</div>
</el-upload>
<div class="title">支持.jpeg, .jpg, .png格式上传</div>
<div class="inside">
<el-button type="primary" @click="handleScan" size="small" plain
>银行回单识别</el-button
>
</div>
<el-image-viewer
v-if="dialogVisible"
:zIndex="9999"
:on-close="closeImgViewer"
:url-list="imgList"
/>
<!-- 文件在线预览 -->
<FilePreview
:previewFile="previewFile"
:fileUrl="fileUrl"
@update="previewFile = false"
/>
</div>
</template>
<script>
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
import { uploadBankSlipApi } from "@/api/common";
export default {
name: "",
props: {
files: Array,
},
watch: {
files: {
handler(list) {
this.fileList = list;
if (list.length >= 1) {
this.hideUpload = true;
} else {
this.hideUpload = false;
}
},
},
deep: true,
},
data() {
return {
hideUpload: false,
imgType: ".jpeg, .jpg, .png",
fileList: [],
dialogVisible: false,
isPdf: false,
isOfd: false,
pdfName: null,
ofdName: null,
imgList: null,
fileUrl: null,
previewFile: false,
invoiceForm: {},
};
},
components: {
ElImageViewer,
FilePreview: () => import("@/components/FilePreview"),
},
computed: {},
methods: {
//
handleRemove(file, files) {
this.fileList = [];
this.$emit("onConfirm", this.fileList);
return false;
},
//
onUploadChange(file, fileList) {
this.beforeFileUpload(file, fileList);
},
beforeFileUpload(file, fileList) {
console.log(file);
//before-upload使
const isImage =
file.raw.type == "image/png" ||
file.raw.type == "image/jpg" ||
file.raw.type == "image/jpeg" ||
file.raw.type == "application/pdf" ||
file.raw.type == "application/ofd";
// const isLt5M = file.size < 1024 * 1024 * 5;
if (!isImage) {
this.$message.warning("上传只能是png,jpg,jpeg格式!");
}
if (file.raw.type == "application/pdf") {
this.isPdf = true;
this.pdfName = file.raw.name;
} else {
this.isPdf = false;
}
if (file.raw.type == "application/ofd") {
this.isOfd = true;
this.pdfName = file.raw.name;
} else {
this.isOfd = false;
}
let FormDatas = new FormData();
FormDatas.append("multipartFile", file.raw);
this.$modal.loading("正在上传,请稍候...");
uploadBankSlipApi(FormDatas)
.then((res) => {
this.invoiceForm = res.data;
this.fileList.push({ name: file.name, url: res.data.fileUrl }); //
this.$emit("onConfirm", this.fileList);
this.$modal.closeLoading();
})
.catch(() => {
this.fileList = [];
this.$modal.closeLoading();
this.$message.error("上传失败");
});
},
closeImgViewer() {
this.dialogVisible = false;
},
//
handlePictureCardPreview(file) {
if (file.name.indexOf(".pdf") > -1) {
this.fileUrl = this.fileList[0].url;
this.previewFile = true;
} else {
this.imgList = [file.url];
this.dialogVisible = true;
}
},
handleUploadError() {
this.$modal.closeLoading();
this.$message.error("上传失败");
},
//
handleScan() {
if (this.fileList.length) {
this.$emit("onScan", this.invoiceForm);
} else {
this.$fm("请先上银行回单!");
}
},
// //
// handleCheck() {
// if (this.fileList.length) {
// this.$emit("onCheck");
// } else {
// this.$fm("!");
// }
// },
},
};
</script>
<style lang="scss" scoped>
@import "@/assets/styles/form/index.scss";
.pdf-name {
text-align: center;
position: absolute;
width: 100%;
top: 115px;
line-height: 15px;
font-size: smaller;
bottom: 0;
}
.el-upload-list--picture-card .el-upload-list__item-thumbnail {
// height: auto !important;
object-fit: cover;
}
</style>

@ -164,12 +164,17 @@ export default {
let FormDatas = new FormData();
FormDatas.append("multipartFile", file.raw);
this.$modal.loading("正在上传,请稍候...");
uploadInvoiceApi(FormDatas).then((res) => {
this.invoiceForm = res.data;
this.fileList.push({ name: file.name, url: res.data.fileUrl }); //
this.$emit("onConfirm", this.fileList);
this.$modal.closeLoading();
});
uploadInvoiceApi(FormDatas)
.then((res) => {
this.invoiceForm = res.data;
this.fileList.push({ name: file.name, url: res.data.fileUrl }); //
this.$emit("onConfirm", this.fileList);
this.$modal.closeLoading();
})
.catch(() => {
this.fileList = [];
this.$modal.closeLoading();
});
},
closeImgViewer() {
this.dialogVisible = false;

@ -145,6 +145,15 @@ export const DICT_TYPE = {
ACCOUNTING_VOUCHER_TYPE: 'accounting_voucher_type',
//银行回单认款状态
BANK_CONFIRM_STATUS: 'bank_confirm_status',
//业务类型
BUSINESS_TYPE: 'business_type',
//合同完整性
CHERKS: 'cherks',
//客诉类型
COMPLAINT_TYPE: 'complaint_type',
// 会计凭证完整性
ACCOUNTING_FILE_STATUS: 'accounting_file_status',
}

@ -284,7 +284,7 @@
width="1000px"
append-to-body
>
<el-upload
<!-- <el-upload
class="upload-demo"
drag
:limit="1"
@ -297,14 +297,18 @@
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处<em>点击上传</em></div>
</el-upload>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="110px"
style="margin-top: 20px"
>
</el-upload> -->
<el-form ref="form" :model="form" :rules="rules" label-width="130px">
<el-row>
<el-col :span="8">
<UploadBankSlip
:files="fileList"
@onConfirm="handleImg"
@onScan="handleScan"
/>
</el-col>
</el-row>
<el-divider>银行回单信息</el-divider>
<el-row>
<el-col :span="8">
<el-form-item label="交易日期" prop="tradTime">
@ -341,6 +345,14 @@
<el-input v-model="form.myNum" placeholder="请输入我方账号" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="OA/ERP流程编号" prop="flowCode">
<el-input
v-model="form.flowCode"
placeholder="请输入OA/ERP流程编号"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
@ -612,7 +624,7 @@ import { listUser } from "@/api/system/user";
export default {
name: "BankSlip",
components: {},
components: { UploadBankSlip: () => import("@/components/UploadBankSlip") },
data() {
return {
//
@ -701,6 +713,22 @@ export default {
this.getUserList();
},
methods: {
//
handleImg(list) {
this.fileList = list;
this.reset();
},
handleScan(form) {
console.log(form);
this.form = form;
this.form.adverseCompany = form.adverseCompany.slice(9, -2);
this.form.bank = form.bank.slice(9, -2);
this.form.digest = form.digest.slice(9, -2);
this.form.myCompany = form.myCompany.slice(9, -2);
this.form.purpose = form.purpose.slice(9, -2);
this.form.receiptNum = form.receiptNum.slice(9, -2);
this.form.serialNum = form.serialNum.slice(9, -2);
},
/** 查询列表 */
getList() {
this.loading = true;
@ -822,6 +850,7 @@ export default {
this.reset();
this.open = true;
this.title = "添加银行回单";
this.fileList = [];
},
//
handleSuccess(res) {

@ -169,6 +169,14 @@
style="margin-top: 20px"
>
<el-row>
<el-col :span="8">
<el-form-item label="OA/ERP流程编号" prop="flowCode">
<el-input
v-model="form.flowCode"
placeholder="请输入OA/ERP流程编号"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="会计凭证" prop="voucherNum">
<el-select
@ -207,6 +215,8 @@
</el-select>
</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="请输入摘要" />

@ -97,7 +97,7 @@
<el-table-column label="凭证类型" align="center" prop="type">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.ACCOUNTING_INVOICES_CHECK"
:type="DICT_TYPE.ACCOUNTING_VOUCHER_TYPE"
:value="scope.row.type"
/>
</template>

File diff suppressed because it is too large Load Diff

@ -56,7 +56,7 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button
type="primary"
plain
@ -66,7 +66,7 @@
v-hasPermi="['archives:record:create']"
>新增</el-button
>
</el-col>
</el-col> -->
<el-col :span="1.5">
<el-button
type="warning"
@ -79,18 +79,6 @@
>导出</el-button
>
</el-col>
<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"
@ -105,7 +93,6 @@
>
<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">
<template v-slot="scope">
<dict-tag
@ -116,12 +103,10 @@
</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" />
<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="site" />
<el-table-column label="关联号" align="center" prop="flowId" />
<el-table-column
label="创建日期"
align="center"
@ -132,20 +117,10 @@
<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="note" />
<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="borrowStatus" />
<el-table-column label="鉴定状态" align="center" prop="identifyStatus" /> -->
<el-table-column label="归档时间" align="center" prop="recordTime" />
<!-- <el-table-column label="所属部门" align="center" prop="deptName" /> -->
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column
label="操作"
@ -333,13 +308,6 @@
<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">
@ -366,15 +334,7 @@
</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-row> </el-row>
<el-form-item label="备注" prop="remark">
<el-input
v-model="form.remark"
@ -724,21 +684,6 @@ export default {
});
});
},
/** 归档按钮操作 */
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;

@ -0,0 +1,423 @@
<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="业务id" prop="businessId">-->
<!-- <el-input v-model="queryParams.businessId" placeholder="请输入业务id" clearable @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<el-form-item label="业务类型" prop="businessType">
<el-select v-model="queryParams.businessType" placeholder="请选择业务类型" clearable size="small">
<el-option
v-for="dict in this.getDictDatas(DICT_TYPE.BUSINESS_TYPE)"
:key="dict.value"
:label="dict.label"
:value="dict.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 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="delStatus">-->
<!-- <el-select v-model="queryParams.delStatus" placeholder="请选择删除状态" clearable size="small">-->
<!-- <el-option label="请选择字典生成" value="" />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="文件后缀" prop="suffix">-->
<!-- <el-input v-model="queryParams.suffix" placeholder="请输入文件后缀" clearable @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="文件地址" prop="fileUrl">-->
<!-- <el-input v-model="queryParams.fileUrl" placeholder="请输入文件地址" clearable @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="绝对路径" prop="fileAp">-->
<!-- <el-input v-model="queryParams.fileAp" placeholder="请输入绝对路径" clearable @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<el-form-item label="流程号" prop="flowCode">
<el-input v-model="queryParams.flowCode" 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="note">-->
<!-- <el-input v-model="queryParams.note" 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>
<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-attachment: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-attachment: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="id" />-->
<el-table-column label="业务id" align="center" prop="businessId"/>
<el-table-column label="业务类型" align="center" prop="businessType">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.BUSINESS_TYPE"
:value="scope.row.businessType"
/>
</template>
</el-table-column>
<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="业务实体id" align="center" prop="companyId" />-->
<el-table-column label="业务实体" align="center" prop="company"/>
<!-- <el-table-column label="删除状态" align="center" prop="delStatus" />-->
<!-- <el-table-column label="文件后缀" align="center" prop="suffix" />-->
<el-table-column label="文件地址" align="center" prop="fileUrl">
<template slot-scope="scope">
<el-button type="text" @click="openLink(scope.row.fileUrl)">
{{ scope.row.fileUrl }}
</el-button>
</template>
</el-table-column>
<!-- <el-table-column label="绝对路径" align="center" prop="fileAp" />-->
<el-table-column label="流程号" align="center" prop="flowCode"/>
<!-- <el-table-column label="用户id" align="center" prop="userId" />-->
<!-- <el-table-column label="摘要" align="center" prop="note" />-->
<!-- <el-table-column label="所属部门id" align="center" prop="deptId" />-->
<!-- <el-table-column label="所属部门" align="center" prop="deptName" />-->
<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-attachment:update']">修改
</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ea:electronic-attachment: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" v-dialogDrag append-to-body>
<el-upload
class="upload-demo"
drag
:limit="1"
:action="uploadUrl"
:file-list="fileList"
:headers="headers"
:on-success="handleSuccess"
name="multipartFile"
:multiple="false"
:accept="imgType"
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处<em>点击上传</em></div>
</el-upload>
<el-form ref="form" :model="form" :rules="rules" label-width="130px" style="margin-top: 20px">
<el-row>
<el-col :span="8">
<el-form-item label="业务id" prop="businessId">
<el-input v-model="form.businessId" placeholder="请输入业务id"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="业务类型" prop="businessType">
<el-select v-model="form.businessType" placeholder="请选择业务类型">
<el-option
v-for="dict in this.getDictDatas(DICT_TYPE.BUSINESS_TYPE)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<!-- <el-form-item label="制单人" prop="createBy">-->
<!-- <el-input v-model="form.createBy" placeholder="请输入制单人" />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="业务实体id" prop="companyId">-->
<!-- <el-input v-model="form.companyId" placeholder="请输入业务实体id" />-->
<!-- </el-form-item>-->
</el-col>
<el-col :span="8">
<el-form-item label="业务实体" prop="company">
<el-input v-model="form.company" placeholder="请输入业务实体"/>
</el-form-item>
</el-col>
</el-row>
<!-- <el-form-item label="删除状态" prop="delStatus">-->
<!-- <el-radio-group v-model="form.delStatus">-->
<!-- <el-radio label="1">请选择字典生成</el-radio>-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="文件后缀" prop="suffix">-->
<!-- <el-input v-model="form.suffix" placeholder="请输入文件后缀" />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="文件地址" prop="fileUrl">-->
<!-- <el-input v-model="form.fileUrl" placeholder="请输入文件地址" />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="绝对路径" prop="fileAp">-->
<!-- <el-input v-model="form.fileAp" placeholder="请输入绝对路径" />-->
<!-- </el-form-item>-->
<el-row>
<el-col :span="8">
<el-form-item label="流程号" prop="flowCode">
<el-input v-model="form.flowCode" placeholder="请输入流程号"/>
</el-form-item>
</el-col>
<el-col :span="8">
<!-- <el-form-item label="用户id" prop="userId">-->
<!-- <el-input v-model="form.userId" placeholder="请输入用户id" />-->
<!-- </el-form-item>-->
<el-form-item label="摘要" prop="note">
<el-input v-model="form.note" placeholder="请输入摘要"/>
</el-form-item>
</el-col>
</el-row>
<!-- <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>
<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 {
createElectronicAttachment,
updateElectronicAttachment,
deleteElectronicAttachment,
getElectronicAttachment,
getElectronicAttachmentPage,
exportElectronicAttachmentExcel
} from "@/api/ea/electronicAttachment/electronicAttachment";
import {getAccessToken, getTenantId} from "@/utils/auth";
export default {
name: "ElectronicAttachment",
components: {},
data() {
return {
//
loading: true,
//
exportLoading: false,
//
showSearch: true,
//
total: 0,
//
list: [],
//
title: "",
//
open: false,
imgType: ".jpeg, .jpg, .png, .xlsx, .pdf, .docx, .mov, .mp3, .mp4",
//
queryParams: {
pageNo: 1,
pageSize: 10,
businessId: null,
businessType: null,
createTime: [],
createBy: null,
companyId: null,
company: null,
delStatus: null,
suffix: null,
fileUrl: null,
fileAp: null,
flowCode: null,
userId: null,
note: null,
deptId: null,
deptName: null,
},
fileList: [], //
uploadUrl:
process.env.VUE_APP_BASE_API + "/admin-api/ea/electronic-attachment/upload", //
headers: {
Authorization: "Bearer " + getAccessToken(),
"tenant-id": getTenantId(),
}, //
//
form: {},
//
rules: {
businessId: [{required: true, message: "业务id不能为空", trigger: "blur"}],
businessType: [{required: true, message: "业务类型不能为空", trigger: "change"}],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
//
getElectronicAttachmentPage(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,
businessId: undefined,
businessType: undefined,
createBy: undefined,
companyId: undefined,
company: undefined,
delStatus: undefined,
suffix: undefined,
fileUrl: undefined,
fileAp: undefined,
flowCode: undefined,
userId: undefined,
note: undefined,
deptId: undefined,
deptName: undefined,
};
this.resetForm("form");
},
//
handleSuccess(res) {
console.log(res);
this.form.fileUrl = res.data.url;
},
openLink(fileUrl) {
const url = process.env.VUE_APP_ONLINE_API +
`/onlinePreview?url=${encodeURIComponent(this.base64Encode(fileUrl))}`;
window.open(url);
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.fileList = [];
this.open = true;
this.title = "添加电子档案附件";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getElectronicAttachment(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) {
updateElectronicAttachment(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
//
createElectronicAttachment(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 deleteElectronicAttachment(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 exportElectronicAttachmentExcel(params);
}).then(response => {
this.$download.excel(response, '电子档案附件.xls');
this.exportLoading = false;
}).catch(() => {
});
}
}
};
</script>

@ -2,72 +2,105 @@
<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="createBy">
<el-input v-model="queryParams.createBy" 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="company">
<el-input v-model="queryParams.company" placeholder="请输入业务实体 " clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="所属部门 " prop="systemDept">
<el-input v-model="queryParams.systemDept" placeholder="请输入所属部门 " clearable @keyup.enter.native="handleQuery"/>
<el-input v-model="queryParams.createBy" 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="company">-->
<!-- <el-input v-model="queryParams.company" placeholder="请输入业务实体 " clearable @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="所属部门 " prop="systemDept">-->
<!-- <el-input v-model="queryParams.systemDept" placeholder="请输入所属部门 " clearable @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<el-form-item label="咨询编号 " prop="consultationId">
<el-input v-model="queryParams.consultationId" placeholder="请输入咨询编号 " clearable @keyup.enter.native="handleQuery"/>
<el-input v-model="queryParams.consultationId" placeholder="请输入咨询编号 " clearable
@keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="咨询类型 " prop="consultationType">
<el-select v-model="queryParams.consultationType" placeholder="请选择咨询类型 " clearable size="small">
<el-option label="请选择字典生成" value="" />
<el-option label="请选择字典生成" value=""/>
</el-select>
</el-form-item>
<el-form-item label="咨询标题 " prop="consultationTitle">
<el-input v-model="queryParams.consultationTitle" placeholder="请输入咨询标题 " clearable @keyup.enter.native="handleQuery"/>
<el-input v-model="queryParams.consultationTitle" placeholder="请输入咨询标题 " clearable
@keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="咨询人 " prop="consultorName">
<el-input v-model="queryParams.consultorName" placeholder="请输入咨询人 " clearable @keyup.enter.native="handleQuery"/>
<el-input v-model="queryParams.consultorName" placeholder="请输入咨询人 " clearable
@keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="咨询时间 " prop="consultationTime">
<el-date-picker v-model="queryParams.consultationTime" 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-date-picker v-model="queryParams.consultationTime" 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="handler">
<el-input v-model="queryParams.handler" placeholder="请输入处理人员 " clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="处理日期 " prop="handleTime">
<el-date-picker v-model="queryParams.handleTime" 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-input v-model="queryParams.handler" placeholder="请输入处理人员 " clearable
@keyup.enter.native="handleQuery"/>
</el-form-item>
<!-- <el-form-item label="处理日期 " prop="handleTime">-->
<!-- <el-date-picker v-model="queryParams.handleTime" 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="handleResult">
<el-input v-model="queryParams.handleResult" placeholder="请输入处理结果 " clearable @keyup.enter.native="handleQuery"/>
<!-- <el-input v-model="queryParams.handleResult" placeholder="请输入处理结果 " clearable @keyup.enter.native="handleQuery"/>-->
<el-select v-model="queryParams.handleResult" placeholder="请选择处理结果" clearable size="small">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.HANDLE_RESULT)"
:key="dict.value" :label="dict.label" :value="dict.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-input v-model="queryParams.year" placeholder="请输入年度 " clearable @keyup.enter.native="handleQuery"/>-->
<el-date-picker
popper-class="due_year"
v-model="queryParams.year"
value-format="Y"
type="year"
placeholder="请选择会计年份"
@keyup.enter.native="handleQuery"
>
</el-date-picker>
</el-form-item>
<el-form-item label="月份 " prop="period">
<el-input v-model="queryParams.period" placeholder="请输入月份 " clearable @keyup.enter.native="handleQuery"/>
<!-- <el-input v-model="queryParams.period" placeholder="请输入月份 " clearable @keyup.enter.native="handleQuery"/>-->
<el-date-picker
popper-class="due_month"
v-model="queryParams.period"
format="M月"
value-format="M"
type="month"
placeholder="请选择会计月份"
@keyup.enter.native="handleQuery"
>
</el-date-picker>
</el-form-item>
<el-form-item label="借阅状态 " prop="borrowStatus">
<el-select v-model="queryParams.borrowStatus" placeholder="请选择借阅状态 " clearable size="small">
<el-option label="请选择字典生成" value="" />
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.BORROW_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</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="纸档位置 " prop="position">
<el-input v-model="queryParams.position" placeholder="请输入纸档位置 " clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="完整性 " prop="cherks">
<el-input v-model="queryParams.cherks" 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="纸档位置 " prop="position">-->
<!-- <el-input v-model="queryParams.position" placeholder="请输入纸档位置 " clearable @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="完整性 " prop="cherks">-->
<!-- <el-input v-model="queryParams.cherks" 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-option v-for="dict in this.getDictDatas(DICT_TYPE.ARCHIVES_FILE_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item>
@ -80,129 +113,242 @@
<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-consultation:create']">新增</el-button>
v-hasPermi="['ea:electronic-consultation: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-consultation:export']">导出</el-button>
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
:loading="exportLoading"
v-hasPermi="['ea:electronic-consultation: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="id" />
<el-table-column label="制单人 " align="center" prop="createBy" />
<el-table-column label="创建日期 " align="center" prop="createTime" width="180">
<!-- <el-table-column label="主键 " align="center" prop="id" />-->
<el-table-column label="制单人 " align="center" prop="createBy"/>
<el-table-column label="创建日期 " align="center" prop="createTime" width="98px">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="业务实体 " align="center" prop="company" />
<el-table-column label="所属部门 " align="center" prop="systemDept" />
<el-table-column label="咨询编号 " align="center" prop="consultationId" />
<el-table-column label="咨询类型 " align="center" prop="consultationType" />
<el-table-column label="咨询标题 " align="center" prop="consultationTitle" />
<el-table-column label="咨询内容 " align="center" prop="consultationContent" />
<el-table-column label="咨询人 " align="center" prop="consultorName" />
<el-table-column label="咨询时间 " align="center" prop="consultationTime" width="180">
<el-table-column label="业务实体 " align="center" prop="company"/>
<el-table-column label="所属部门 " align="center" prop="systemDept"/>
<el-table-column label="咨询编号 " align="center" prop="consultationId"/>
<el-table-column label="咨询类型 " align="center" prop="consultationType"/>
<el-table-column label="咨询标题 " align="center" prop="consultationTitle"/>
<el-table-column label="咨询内容 " align="center" prop="consultationContent">
<template v-slot="scope">
<span v-html="scope.row.consultationContent"></span>
</template>
</el-table-column>
<el-table-column label="咨询人 " align="center" prop="consultorName"/>
<el-table-column label="咨询时间 " align="center" prop="consultationTime" width="98px">
<template v-slot="scope">
<span>{{ parseTime(scope.row.consultationTime) }}</span>
</template>
</el-table-column>
<el-table-column label="处理人员 " align="center" prop="handler" />
<el-table-column label="处理日期 " align="center" prop="handleTime" width="180">
<el-table-column label="处理人员 " align="center" prop="handler"/>
<el-table-column label="处理日期 " align="center" prop="handleTime" width="98px">
<template v-slot="scope">
<span>{{ parseTime(scope.row.handleTime) }}</span>
</template>
</el-table-column>
<el-table-column label="处理结果 " align="center" prop="handleResult" />
<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="recordTime" />
<el-table-column label="纸档位置 " align="center" prop="position" />
<el-table-column label="完整性 " align="center" prop="cherks" />
<el-table-column label="归档状态" align="center" prop="fileStatus" />
<el-table-column label="处理结果 " align="center" prop="handleResult">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.HANDLE_RESULT" :value="scope.row.handleResult"/>
</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="borrowStatus">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.BORROW_STATUS" :value="scope.row.borrowStatus"/>
</template>
</el-table-column>
<el-table-column label="归档时间 " align="center" prop="recordTime" width="98px">
<template v-slot="scope">
<span>{{ parseTime(scope.row.recordTime) }}</span>
</template>
</el-table-column>
<el-table-column label="纸档位置 " align="center" prop="position"/>
<el-table-column label="完整性 " align="center" prop="cherks">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.CHERKS"
:value="scope.row.cherks"
/>
</template>
</el-table-column>
<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" 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-consultation:update']">修改</el-button>
v-hasPermi="['ea:electronic-consultation:update']">修改
</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ea:electronic-consultation:delete']">删除</el-button>
v-hasPermi="['ea:electronic-consultation: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="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="制单人 " prop="createBy">
<el-input v-model="form.createBy" placeholder="请输入制单人 " />
</el-form-item>
<el-form-item label="业务实体 " prop="company">
<el-input v-model="form.company" placeholder="请输入业务实体 " />
</el-form-item>
<el-form-item label="所属部门 " prop="systemDept">
<el-input v-model="form.systemDept" placeholder="请输入所属部门 " />
</el-form-item>
<el-form-item label="咨询编号 " prop="consultationId">
<el-input v-model="form.consultationId" placeholder="请输入咨询编号 " />
</el-form-item>
<el-form-item label="咨询类型 " prop="consultationType">
<el-select v-model="form.consultationType" placeholder="请选择咨询类型 ">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="咨询标题 " prop="consultationTitle">
<el-input v-model="form.consultationTitle" placeholder="请输入咨询标题 " />
</el-form-item>
<el-dialog :title="title" :visible.sync="open" width="1000px" v-dialogDrag 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="createBy">
<el-input v-model="form.createBy" placeholder="请输入制单人 "/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="业务实体 " prop="company">
<el-input v-model="form.company" placeholder="请输入业务实体 "/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="所属部门 " prop="systemDept">
<el-input v-model="form.systemDept" placeholder="请输入所属部门 "/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="咨询编号 " prop="consultationId">
<el-input v-model="form.consultationId" placeholder="请输入咨询编号 "/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="咨询类型 " prop="consultationType">
<el-select v-model="form.consultationType" placeholder="请选择咨询类型 ">
<el-option label="请选择字典生成" value=""/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="咨询标题 " prop="consultationTitle">
<el-input v-model="form.consultationTitle" placeholder="请输入咨询标题 "/>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="咨询内容 ">
<editor v-model="form.consultationContent" :min-height="192"/>
</el-form-item>
<el-form-item label="咨询人 " prop="consultorName">
<el-input v-model="form.consultorName" placeholder="请输入咨询人 " />
</el-form-item>
<el-form-item label="咨询时间 " prop="consultationTime">
<el-date-picker clearable v-model="form.consultationTime" type="date" value-format="timestamp" placeholder="选择咨询时间 " />
</el-form-item>
<el-form-item label="处理人员 " prop="handler">
<el-input v-model="form.handler" placeholder="请输入处理人员 " />
</el-form-item>
<el-form-item label="处理日期 " prop="handleTime">
<el-date-picker clearable v-model="form.handleTime" type="date" value-format="timestamp" placeholder="选择处理日期 " />
</el-form-item>
<el-form-item label="处理结果 " prop="handleResult">
<el-input v-model="form.handleResult" placeholder="请输入处理结果 " />
</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="borrowStatus">
<el-select v-model="form.borrowStatus" placeholder="请选择借阅状态 ">
<el-option label="请选择字典生成" value="" />
</el-select>
</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="纸档位置 " prop="position">
<el-input v-model="form.position" placeholder="请输入纸档位置 " />
</el-form-item>
<el-form-item label="完整性 " prop="cherks">
<el-input v-model="form.cherks" 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-row>
<el-col :span="8">
<el-form-item label="咨询人 " prop="consultorName">
<el-input v-model="form.consultorName" placeholder="请输入咨询人 "/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="咨询时间 " prop="consultationTime">
<el-date-picker clearable v-model="form.consultationTime" type="date" value-format="timestamp"
placeholder="选择咨询时间 "/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="处理人员 " prop="handler">
<el-input v-model="form.handler" placeholder="请输入处理人员 "/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="处理日期 " prop="handleTime">
<el-date-picker clearable v-model="form.handleTime" type="date" value-format="timestamp"
placeholder="选择处理日期 "/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="处理结果 " prop="handleResult">
<el-select v-model="form.handleResult" placeholder="请选择处理结果">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.HANDLE_RESULT)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="年度 " prop="year">
<!-- <el-input v-model="form.year" placeholder="请输入年度 " />-->
<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-input v-model="form.period" placeholder="请输入月份 " />-->
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="借阅状态 " prop="borrowStatus">
<el-select v-model="form.borrowStatus" placeholder="请选择借阅状态 ">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.BORROW_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</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="timestamp"
placeholder="选择归档时间 "/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="纸档位置 " prop="position">
<el-input v-model="form.position" placeholder="请输入纸档位置 "/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="完整性 " prop="cherks">
<el-select v-model="form.cherks" placeholder="请选择归档状态">
<el-option
v-for="dict in this.getDictDatas(
DICT_TYPE.CHERKS
)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="归档状态" prop="fileStatus">
<el-select v-model="form.fileStatus" placeholder="请选择归档状态">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.ARCHIVES_FILE_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -213,12 +359,21 @@
</template>
<script>
import { createElectronicConsultation, updateElectronicConsultation, deleteElectronicConsultation, getElectronicConsultation, getElectronicConsultationPage, exportElectronicConsultationExcel } from "@/api/ea/electronicConsultation/electronicConsultation";
import {
createElectronicConsultation,
updateElectronicConsultation,
deleteElectronicConsultation,
getElectronicConsultation,
getElectronicConsultationPage,
exportElectronicConsultationExcel
} from "@/api/ea/electronicConsultation/electronicConsultation";
import Editor from '@/components/Editor';
import ScrollPane from "@/layout/components/TagsView/ScrollPane";
export default {
name: "ElectronicConsultation",
components: {
ScrollPane,
Editor,
},
data() {
@ -265,8 +420,7 @@ export default {
//
form: {},
//
rules: {
}
rules: {}
};
},
created() {
@ -366,12 +520,13 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除咨询档案编号为"' + id + '"的数据项?').then(function() {
return deleteElectronicConsultation(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
this.$modal.confirm('是否确认删除咨询档案编号为"' + id + '"的数据项?').then(function () {
return deleteElectronicConsultation(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
});
},
/** 导出按钮操作 */
handleExport() {
@ -380,13 +535,15 @@ export default {
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有咨询档案数据项?').then(() => {
this.exportLoading = true;
return exportElectronicConsultationExcel(params);
}).then(response => {
this.$download.excel(response, '咨询档案.xls');
this.exportLoading = false;
}).catch(() => {});
this.exportLoading = true;
return exportElectronicConsultationExcel(params);
}).then(response => {
this.$download.excel(response, '咨询档案.xls');
this.exportLoading = false;
}).catch(() => {
});
}
}
};
</script>

@ -118,7 +118,7 @@
v-model="queryParams.year"
value-format="Y"
type="year"
placeholder="请选择会计份"
placeholder="请选择会计份"
@keyup.enter.native="handleQuery"
>
</el-date-picker>
@ -346,7 +346,14 @@
>
</el-table-column>
<el-table-column label="纸档位置" align="center" prop="position" />
<el-table-column label="完整性" align="center" prop="cherks" />
<el-table-column label="完整性" align="center" prop="cherks" >
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.CHERKS"
:value="scope.row.cherks"
/>
</template>
</el-table-column>
<el-table-column label="归档状态" align="center" prop="fileStatus">
<template v-slot="scope">
@ -629,7 +636,16 @@
</el-col>
<el-col :span="8">
<el-form-item label="完整性" prop="cherks">
<el-input v-model="form.cherks" placeholder="请输入完整性" />
<el-select v-model="form.cherks" placeholder="请选择归档状态">
<el-option
v-for="dict in this.getDictDatas(
DICT_TYPE.CHERKS
)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>

@ -2,72 +2,113 @@
<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="createBy">
<el-input v-model="queryParams.createBy" 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-input v-model="queryParams.createBy" 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="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-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="complaintCode">
<el-input v-model="queryParams.complaintCode" placeholder="请输入客诉编号" clearable @keyup.enter.native="handleQuery"/>
<el-input v-model="queryParams.complaintCode" placeholder="请输入客诉编号" clearable
@keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="客户名称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户名称" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="客户电话" prop="customerPhone">
<el-input v-model="queryParams.customerPhone" placeholder="请输入客户电话" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="客诉时间" prop="complaintTime">
<el-date-picker v-model="queryParams.complaintTime" 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-input v-model="queryParams.customerName" placeholder="请输入客户名称" clearable
@keyup.enter.native="handleQuery"/>
</el-form-item>
<!-- <el-form-item label="客户电话" prop="customerPhone">-->
<!-- <el-input v-model="queryParams.customerPhone" placeholder="请输入客户电话" clearable @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<el-form-item label="客诉类型" prop="complaintType">
<el-select v-model="queryParams.complaintType" placeholder="请选择客诉类型" clearable size="small">
<el-option label="请选择字典生成" value="" />
<el-option label="请选择字典生成" value=""/>
</el-select>
</el-form-item>
<el-form-item label="客诉时间" prop="complaintTime">
<el-date-picker v-model="queryParams.complaintTime" 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="handler">
<el-input v-model="queryParams.handler" placeholder="请输入处理人" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="处理时间" prop="handleTime">
<el-date-picker v-model="queryParams.handleTime" 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="handleTime">-->
<!-- <el-date-picker v-model="queryParams.handleTime" 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="handleResult">
<el-input v-model="queryParams.handleResult" placeholder="请输入处理结果" clearable @keyup.enter.native="handleQuery"/>
<el-select
v-model="queryParams.handleResult"
placeholder="请选择处理结果"
clearable
size="small"
>
<el-option
v-for="dict in this.getDictDatas(DICT_TYPE.HANDLE_RESULT)"
:key="dict.value"
:label="dict.label"
:value="dict.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-date-picker
popper-class="due_year"
v-model="queryParams.year"
value-format="Y"
type="year"
placeholder="请选择会计年份"
@keyup.enter.native="handleQuery"
>
</el-date-picker>
<!-- <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-date-picker
popper-class="due_month"
v-model="queryParams.period"
format="M月"
value-format="M"
type="month"
placeholder="请选择会计月份"
@keyup.enter.native="handleQuery"
>
</el-date-picker>
<!-- <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-option v-for="dict in this.getDictDatas(DICT_TYPE.BORROW_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</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="纸档位置" prop="position">
<el-input v-model="queryParams.position" placeholder="请输入纸档位置" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="完整性" prop="cherks">
<el-input v-model="queryParams.cherks" 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="纸档位置" prop="position">-->
<!-- <el-input v-model="queryParams.position" placeholder="请输入纸档位置" clearable @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="完整性" prop="cherks">-->
<!-- <el-input v-model="queryParams.cherks" 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-option v-for="dict in this.getDictDatas(DICT_TYPE.ARCHIVES_FILE_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item>
@ -80,56 +121,98 @@
<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-customer-complaint:create']">新增</el-button>
v-hasPermi="['ea:electronic-customer-complaint: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-customer-complaint:export']">导出</el-button>
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
:loading="exportLoading"
v-hasPermi="['ea:electronic-customer-complaint: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="id" />
<el-table-column label=" 制单人" align="center" prop="createBy" />
<el-table-column label="创建日期" align="center" prop="createTime" width="180">
<!-- <el-table-column label="主键" align="center" prop="id"/>-->
<el-table-column label=" 制单人" align="center" prop="createBy"/>
<el-table-column label="创建日期" align="center" prop="createTime" width="98px">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="业务实体" align="center" prop="company" />
<el-table-column label="所属部门" align="center" prop="deptName" />
<el-table-column label="客诉编号" align="center" prop="complaintCode" />
<el-table-column label="客户名称" align="center" prop="customerName" />
<el-table-column label="客户电话" align="center" prop="customerPhone" />
<el-table-column label="客诉时间" align="center" prop="complaintTime" width="180">
<el-table-column label="业务实体" align="center" prop="company"/>
<el-table-column label="所属部门" align="center" prop="deptName"/>
<el-table-column label="客诉编号" align="center" prop="complaintCode"/>
<el-table-column label="客户名称" align="center" prop="customerName"/>
<el-table-column label="客户电话" align="center" prop="customerPhone"/>
<el-table-column label="客诉时间" align="center" prop="complaintTime" width="98px">
<template v-slot="scope">
<span>{{ parseTime(scope.row.complaintTime) }}</span>
</template>
</el-table-column>
<el-table-column label="客诉类型" align="center" prop="complaintType" />
<el-table-column label="客诉内容" align="center" prop="complaintContent" />
<el-table-column label="处理人" align="center" prop="handler" />
<el-table-column label="处理时间" align="center" prop="handleTime" width="180">
<el-table-column label="客诉类型" align="center" prop="complaintType" width="98px">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.COMPLAINT_TYPE"
:value="scope.row.complaintType"
/>
</template>
</el-table-column>
<el-table-column label="客诉内容" align="center" prop="complaintContent">
<template v-slot="scope">
<span v-html="scope.row.complaintContent"></span>
</template>
</el-table-column>
<el-table-column label="处理人" align="center" prop="handler"/>
<el-table-column label="处理时间" align="center" prop="handleTime" width="98px">
<template v-slot="scope">
<span>{{ parseTime(scope.row.handleTime) }}</span>
</template>
</el-table-column>
<el-table-column label="处理结果" align="center" prop="handleResult" />
<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="recordTime" />
<el-table-column label="纸档位置" align="center" prop="position" />
<el-table-column label="完整性" align="center" prop="cherks" />
<el-table-column label="归档状态" align="center" prop="fileStatus" />
<el-table-column label="处理结果" align="center" prop="handleResult">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.HANDLE_RESULT"
:value="scope.row.handleResult"
/>
</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="borrowStatus">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.BORROW_STATUS" :value="scope.row.borrowStatus"/>
</template>
</el-table-column>
<el-table-column label="归档时间" align="center" prop="recordTime" width="98px">
<template v-slot="scope">
<span>{{ parseTime(scope.row.recordTime) }}</span>
</template>
</el-table-column>
<el-table-column label="纸档位置" align="center" prop="position"/>
<el-table-column label="完整性" align="center" prop="cherks">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.CHERKS"
:value="scope.row.cherks"
/>
</template>
</el-table-column>
<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" 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-customer-complaint:update']">修改</el-button>
v-hasPermi="['ea:electronic-customer-complaint:update']">修改
</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ea:electronic-customer-complaint:delete']">删除</el-button>
v-hasPermi="['ea:electronic-customer-complaint:delete']">删除
</el-button>
</template>
</el-table-column>
</el-table>
@ -138,71 +221,167 @@
@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="createBy">
<el-input v-model="form.createBy" placeholder="请输入 制单人" />
</el-form-item>
<el-form-item label="业务实体" prop="company">
<el-input v-model="form.company" placeholder="请输入业务实体" />
</el-form-item>
<el-form-item label="所属部门" prop="deptName">
<el-input v-model="form.deptName" placeholder="请输入所属部门" />
</el-form-item>
<el-form-item label="客诉编号" prop="complaintCode">
<el-input v-model="form.complaintCode" placeholder="请输入客诉编号" />
</el-form-item>
<el-form-item label="客户名称" prop="customerName">
<el-input v-model="form.customerName" placeholder="请输入客户名称" />
</el-form-item>
<el-form-item label="客户电话" prop="customerPhone">
<el-input v-model="form.customerPhone" placeholder="请输入客户电话" />
</el-form-item>
<el-form-item label="客诉时间" prop="complaintTime">
<el-date-picker clearable v-model="form.complaintTime" type="date" value-format="timestamp" placeholder="选择客诉时间" />
</el-form-item>
<el-form-item label="客诉类型" prop="complaintType">
<el-select v-model="form.complaintType" placeholder="请选择客诉类型">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-dialog :title="title" :visible.sync="open" width="1000px" v-dialogDrag 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="createBy">
<el-input v-model="form.createBy" placeholder="请输入 制单人"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="业务实体" prop="company">
<el-input v-model="form.company" 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="complaintCode">
<el-input v-model="form.complaintCode" placeholder="请输入客诉编号"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="客户名称" prop="customerName">
<el-input v-model="form.customerName" placeholder="请输入客户名称"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="客户电话" prop="customerPhone">
<el-input v-model="form.customerPhone" placeholder="请输入客户电话"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="客诉时间" prop="complaintTime">
<el-date-picker clearable v-model="form.complaintTime" type="date" value-format="timestamp"
placeholder="选择客诉时间"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="客诉类型" prop="complaintType" >
<el-select v-model="form.complaintType" placeholder="请选择客诉类型">
<el-option
v-for="dict in this.getDictDatas(DICT_TYPE.COMPLAINT_TYPE)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="处理人" prop="handler">
<el-input v-model="form.handler" placeholder="请输入处理人"/>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="客诉内容">
<editor v-model="form.complaintContent" :min-height="192"/>
</el-form-item>
<el-form-item label="处理人" prop="handler">
<el-input v-model="form.handler" placeholder="请输入处理人" />
</el-form-item>
<el-form-item label="处理时间" prop="handleTime">
<el-date-picker clearable v-model="form.handleTime" type="date" value-format="timestamp" placeholder="选择处理时间" />
</el-form-item>
<el-form-item label="处理结果" prop="handleResult">
<el-input v-model="form.handleResult" placeholder="请输入处理结果" />
</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="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="recordTime">
<el-date-picker clearable v-model="form.recordTime" type="date" value-format="timestamp" placeholder="选择归档时间" />
</el-form-item>
<el-form-item label="纸档位置" prop="position">
<el-input v-model="form.position" placeholder="请输入纸档位置" />
</el-form-item>
<el-form-item label="完整性" prop="cherks">
<el-input v-model="form.cherks" 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-row>
<el-col :span="8">
<el-form-item label="处理时间" prop="handleTime">
<el-date-picker clearable v-model="form.handleTime" type="date" value-format="timestamp"
placeholder="选择处理时间"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="处理结果" prop="handleResult">
<el-select
v-model="form.handleResult"
placeholder="请选择处理结果"
>
<el-option
v-for="dict in this.getDictDatas(DICT_TYPE.HANDLE_RESULT)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="年度" prop="year">
<!-- <el-input v-model="form.year" placeholder="请输入年度"/>-->
<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-input v-model="form.period" placeholder="请输入月份"/>-->
<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-select v-model="form.borrowStatus" placeholder="请选择借阅状态 ">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.BORROW_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</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="timestamp"
placeholder="选择归档时间"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="纸档位置" prop="position">
<el-input v-model="form.position" placeholder="请输入纸档位置"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="完整性" prop="cherks">
<el-select v-model="form.cherks" placeholder="请选择归档状态">
<el-option
v-for="dict in this.getDictDatas(
DICT_TYPE.CHERKS
)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="归档状态" prop="fileStatus">
<el-select v-model="form.fileStatus" placeholder="请选择归档状态">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.ARCHIVES_FILE_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -213,7 +392,14 @@
</template>
<script>
import { createElectronicCustomerComplaint, updateElectronicCustomerComplaint, deleteElectronicCustomerComplaint, getElectronicCustomerComplaint, getElectronicCustomerComplaintPage, exportElectronicCustomerComplaintExcel } from "@/api/ea/electronicCustomerComplaint/electronicCustomerComplaint";
import {
createElectronicCustomerComplaint,
updateElectronicCustomerComplaint,
deleteElectronicCustomerComplaint,
getElectronicCustomerComplaint,
getElectronicCustomerComplaintPage,
exportElectronicCustomerComplaintExcel
} from "@/api/ea/electronicCustomerComplaint/electronicCustomerComplaint";
import Editor from '@/components/Editor';
export default {
@ -265,8 +451,7 @@ export default {
//
form: {},
//
rules: {
}
rules: {}
};
},
created() {
@ -366,12 +551,13 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除客诉档案编号为"' + id + '"的数据项?').then(function() {
return deleteElectronicCustomerComplaint(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
this.$modal.confirm('是否确认删除客诉档案编号为"' + id + '"的数据项?').then(function () {
return deleteElectronicCustomerComplaint(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
});
},
/** 导出按钮操作 */
handleExport() {
@ -380,12 +566,13 @@ export default {
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有客诉档案数据项?').then(() => {
this.exportLoading = true;
return exportElectronicCustomerComplaintExcel(params);
}).then(response => {
this.$download.excel(response, '客诉档案.xls');
this.exportLoading = false;
}).catch(() => {});
this.exportLoading = true;
return exportElectronicCustomerComplaintExcel(params);
}).then(response => {
this.$download.excel(response, '客诉档案.xls');
this.exportLoading = false;
}).catch(() => {
});
}
}
};

@ -135,7 +135,14 @@
</el-table-column>
<el-table-column label="归档时间" align="center" prop="recordTime" width="98px"/>
<el-table-column label="纸档位置" align="center" prop="position"/>
<el-table-column label="完整性" align="center" prop="cherks"/>
<el-table-column label="完整性" align="center" prop="cherks">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.CHERKS"
:value="scope.row.cherks"
/>
</template>
</el-table-column>
<el-table-column label="归档状态" align="center" prop="fileStatus">
<template v-slot="scope">
@ -428,7 +435,16 @@
<el-row>
<el-col :span="8">
<el-form-item label="完整性" prop="cherks">
<el-input v-model="form.cherks" placeholder="请输入完整性"/>
<el-select v-model="form.cherks" placeholder="请选择归档状态">
<el-option
v-for="dict in this.getDictDatas(
DICT_TYPE.CHERKS
)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">

@ -2,57 +2,86 @@
<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="88px">
<el-form-item label="表名" prop="name">
<el-input v-model="queryParams.name" placeholder="请输入表名" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="文件来源" prop="source">
<el-input v-model="queryParams.source" 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="OA/ERP流程编号 " prop="flowCode">-->
<!-- <el-input v-model="queryParams.flowCode" placeholder="请输入OA/ERP流程编号 " clearable-->
<!-- @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="文件来源" prop="source">-->
<!-- <el-input v-model="queryParams.source" 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="businessType">
<el-select v-model="queryParams.businessType" placeholder="请选择业务类型" clearable size="small">
<el-option label="请选择字典生成" value="" />
<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 label="业务实体" prop="company">
<el-input v-model="queryParams.company" placeholder="请输入业务实体" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="删除状态" prop="delStatus">
<!-- <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 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="delStatus">
<el-select v-model="queryParams.delStatus" placeholder="请选择删除状态" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="文件后缀" prop="suffix">
<el-input v-model="queryParams.suffix" placeholder="请输入文件后缀" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="文件地址" prop="fileUrl">
<el-input v-model="queryParams.fileUrl" placeholder="请输入文件地址" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="绝对路径" prop="fileAp">
<el-input v-model="queryParams.fileAp" placeholder="请输入绝对路径" clearable @keyup.enter.native="handleQuery"/>
</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="deptName">
<el-input v-model="queryParams.deptName" placeholder="请输入所属部门" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="归档状态" prop="archiveState">
<el-input v-model="queryParams.archiveState" placeholder="请输入归档状态" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
</el-select> -->
<!-- </el-form-item>-->
<!-- <el-form-item label="文件后缀" prop="suffix">-->
<!-- <el-input v-model="queryParams.suffix" placeholder="请输入文件后缀" clearable-->
<!-- @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="文件地址" prop="fileUrl">-->
<!-- <el-input v-model="queryParams.fileUrl" placeholder="请输入文件地址" clearable-->
<!-- @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="绝对路径" prop="fileAp">-->
<!-- <el-input v-model="queryParams.fileAp" 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-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="所属部门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="recordId">
<el-input v-model="queryParams.recordId" placeholder="请输入归档id" 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="archiveState">-->
<!-- <el-input v-model="queryParams.archiveState" 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>
@ -63,43 +92,67 @@
<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-other:create']">新增</el-button>
v-hasPermi="['ea:electronic-other: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-other:export']">导出</el-button>
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
:loading="exportLoading"
v-hasPermi="['ea:electronic-other: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="id" />
<el-table-column label="表名" align="center" prop="name" />
<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="businessType" />
<!-- <el-table-column label="主键" align="center" prop="id"/>-->
<el-table-column label="表名" align="center" prop="name"/>
<el-table-column label="OA/ERP流程编号 " align="center" prop="flowCode"/>
<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="businessType"/>
<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" prop="company" />
<el-table-column label="删除状态" align="center" prop="delStatus" />
<el-table-column label="文件后缀" align="center" prop="suffix" />
<el-table-column label="文件地址" align="center" prop="fileUrl" />
<el-table-column label="绝对路径" align="center" prop="fileAp" />
<el-table-column label="摘要" align="center" prop="note" />
<el-table-column label="所属部门" align="center" prop="deptName" />
<el-table-column label="归档状态" align="center" prop="archiveState" />
<el-table-column label="制单人" align="center" prop="createBy"/>
<!-- <el-table-column label="业务实体id" align="center" prop="companyId"/>-->
<el-table-column label="业务实体" align="center" prop="company"/>
<!-- <el-table-column label="删除状态" align="center" prop="delStatus"/>-->
<!-- <el-table-column label="文件后缀" align="center" prop="suffix"/>-->
<el-table-column label="文件地址" align="center" prop="fileUrl">
<template slot-scope="scope">
<el-button type="text" @click="openLink(scope.row.fileUrl)">
{{ scope.row.fileUrl }}
</el-button>
</template>
</el-table-column>
<!-- <el-table-column label="绝对路径" align="center" prop="fileAp"/>-->
<el-table-column label="流程号" align="center" prop="flowId"/>
<el-table-column label="摘要" align="center" prop="note"/>
<!-- <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="recordId"/>-->
<!-- <el-table-column label="用户id" align="center" prop="userId"/>-->
<el-table-column label="归档状态" align="center" prop="archiveState">
<template v-slot="scope">
<dict-tag
:type="DICT_TYPE.ARCHIVES_FILE_STATUS"
:value="scope.row.archiveState"
/>
</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="['ea:electronic-other:update']">修改</el-button>
v-hasPermi="['ea:electronic-other:update']">修改
</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ea:electronic-other:delete']">删除</el-button>
v-hasPermi="['ea:electronic-other:delete']">删除
</el-button>
</template>
</el-table-column>
</el-table>
@ -108,53 +161,149 @@
@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="source">
<el-input v-model="form.source" placeholder="请输入文件来源" />
</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="businessType">
<el-select v-model="form.businessType" placeholder="请选择业务类型">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="制单人" prop="createBy">
<el-input v-model="form.createBy" placeholder="请输入制单人" />
</el-form-item>
<el-form-item label="业务实体" prop="company">
<el-input v-model="form.company" placeholder="请输入业务实体" />
</el-form-item>
<el-form-item label="删除状态" prop="delStatus">
<el-radio-group v-model="form.delStatus">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="文件后缀" prop="suffix">
<el-input v-model="form.suffix" placeholder="请输入文件后缀" />
</el-form-item>
<el-form-item label="文件地址" prop="fileUrl">
<el-input v-model="form.fileUrl" placeholder="请输入文件地址" />
</el-form-item>
<el-form-item label="绝对路径" prop="fileAp">
<el-input v-model="form.fileAp" placeholder="请输入绝对路径" />
</el-form-item>
<el-dialog :title="title" :visible.sync="open" width="1000px" v-dialogDrag append-to-body>
<el-upload
class="upload-demo"
drag
:limit="1"
:action="uploadUrl"
:file-list="fileList"
:headers="headers"
:on-success="handleSuccess"
name="multipartFile"
:multiple="false"
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处<em>点击上传</em></div>
</el-upload>
<el-form ref="form" :model="form" :rules="rules" label-width="130px"
style="margin-top: 20px">
<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="OA/ERP流程编号 " prop="flowCode">
<el-input v-model="form.flowCode" placeholder="请输入OA/ERP流程编号 "/>
</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-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="businessType">
<el-select v-model="form.businessType" placeholder="请选择业务类型">
<el-option label="请选择字典生成" value=""/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="制单人" prop="createBy">
<el-input v-model="form.createBy" placeholder="请输入制单人"/>
</el-form-item>
</el-col>
<!-- <el-form-item label="业务实体id" prop="companyId">
<el-input v-model="form.companyId" placeholder="请输入业务实体id" />
</el-form-item> -->
<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="删除状态" prop="delStatus">
<el-radio-group v-model="form.delStatus">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item> -->
<!-- <el-form-item label="文件后缀" prop="suffix">-->
<!-- <el-input v-model="form.suffix" placeholder="请输入文件后缀"/>-->
<!-- </el-form-item>-->
<el-col :span="8">
<el-form-item label="文件地址" prop="fileUrl">
<el-input v-model="form.fileUrl" placeholder="请输入文件地址" :disabled="true"/>
</el-form-item>
</el-col>
</el-row>
<!-- <el-form-item label="绝对路径" prop="fileAp">-->
<!-- <el-input v-model="form.fileAp" placeholder="请输入绝对路径"/>-->
<!-- </el-form-item>-->
<el-row>
<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="deptName">
<el-input v-model="form.deptName" placeholder="请输入所属部门"/>
</el-form-item>
</el-col>
<el-col :span="8">
<!-- <el-form-item label="所属部门id" prop="deptId">
<el-input v-model="form.deptId" placeholder="请输入所属部门id" />
</el-form-item> -->
</el-col>
<el-col :span="8">
<el-form-item label="归档状态" prop="archiveState">
<el-select v-model="form.archiveState" placeholder="请选择归档状态">
<el-option
v-for="dict in this.getDictDatas(
DICT_TYPE.ARCHIVES_FILE_STATUS
)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<!-- <el-form-item label="归档id" prop="recordId">
<el-input v-model="form.recordId" placeholder="请输入归档id" />
</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="note">
<el-input v-model="form.note" placeholder="请输入摘要" />
</el-form-item>
<el-form-item label="所属部门" prop="deptName">
<el-input v-model="form.deptName" placeholder="请输入所属部门" />
</el-form-item>
<el-form-item label="归档状态" prop="archiveState">
<el-input v-model="form.archiveState" placeholder="请输入归档状态" />
<el-input v-model="form.note" placeholder="请输入摘要" type="textarea"
:autosize="{ minRows: 1, maxRows: 4}"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -166,12 +315,19 @@
</template>
<script>
import { createElectronicOther, updateElectronicOther, deleteElectronicOther, getElectronicOther, getElectronicOtherPage, exportElectronicOtherExcel } from "@/api/ea/electronicOther/electronicOther";
import {
createElectronicOther,
updateElectronicOther,
deleteElectronicOther,
getElectronicOther,
getElectronicOtherPage,
exportElectronicOtherExcel
} from "@/api/ea/electronicOther/electronicOther";
import {getAccessToken, getTenantId} from "@/utils/auth";
export default {
name: "ElectronicOther",
components: {
},
components: {},
data() {
return {
//
@ -193,26 +349,38 @@ export default {
pageNo: 1,
pageSize: 10,
name: null,
flowCode: null,
source: null,
year: null,
period: null,
businessType: null,
createTime: [],
createBy: null,
companyId: null,
company: null,
delStatus: null,
suffix: null,
fileUrl: null,
fileAp: null,
flowId: null,
note: null,
deptId: null,
deptName: null,
recordId: null,
userId: null,
archiveState: null,
},
//
form: {},
//
rules: {
}
rules: {},
fileList: [], //
uploadUrl:
process.env.VUE_APP_BASE_API + "/admin-api/ea/electronic-other/upload", //
headers: {
Authorization: "Bearer " + getAccessToken(),
"tenant-id": getTenantId(),
}, //
};
},
created() {
@ -239,22 +407,43 @@ export default {
this.form = {
id: undefined,
name: undefined,
flowCode: undefined,
source: undefined,
year: undefined,
period: undefined,
businessType: undefined,
createBy: undefined,
companyId: undefined,
company: undefined,
delStatus: undefined,
suffix: undefined,
fileUrl: undefined,
fileAp: undefined,
flowId: undefined,
note: undefined,
deptId: undefined,
deptName: undefined,
recordId: undefined,
userId: undefined,
archiveState: undefined,
};
this.resetForm("form");
},
/**
* 文件预览
* @param fileUrl 地址
*/
openLink(fileUrl) {
const url =
process.env.VUE_APP_ONLINE_API +
`/onlinePreview?url=${encodeURIComponent(this.base64Encode(fileUrl))}`;
window.open(url);
},
//
handleSuccess(res) {
console.log(res);
this.form.fileUrl = res.data.url;
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
@ -268,6 +457,7 @@ export default {
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.fileList = [];
this.open = true;
this.title = "添加其他档案";
},
@ -307,12 +497,13 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除其他档案编号为"' + id + '"的数据项?').then(function() {
return deleteElectronicOther(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
this.$modal.confirm('是否确认删除其他档案编号为"' + id + '"的数据项?').then(function () {
return deleteElectronicOther(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
});
},
/** 导出按钮操作 */
handleExport() {
@ -321,12 +512,13 @@ export default {
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有其他档案数据项?').then(() => {
this.exportLoading = true;
return exportElectronicOtherExcel(params);
}).then(response => {
this.$download.excel(response, '其他档案.xls');
this.exportLoading = false;
}).catch(() => {});
this.exportLoading = true;
return exportElectronicOtherExcel(params);
}).then(response => {
this.$download.excel(response, '其他档案.xls');
this.exportLoading = false;
}).catch(() => {
});
}
}
};

Loading…
Cancel
Save