From 515a8f4d3ceebd79cc6617ad44cb500b8d99ea6e Mon Sep 17 00:00:00 2001 From: zhouwx <1175765986@qq.com> Date: 星期四, 03 四月 2025 11:13:24 +0800 Subject: [PATCH] 专家导出 --- src/views/safetyReview/projectManage/index.vue | 50 +++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 45 insertions(+), 5 deletions(-) diff --git a/src/views/safetyReview/projectManage/index.vue b/src/views/safetyReview/projectManage/index.vue index 5a0245a..e494238 100644 --- a/src/views/safetyReview/projectManage/index.vue +++ b/src/views/safetyReview/projectManage/index.vue @@ -137,11 +137,20 @@ </div> </template> <template #footer> - <div style="flex: auto"> - <el-button type="primary" @click="searchClick">查询</el-button> - <el-button type="warning" @click="reset">重置</el-button> - <el-button @click="confirmClick">取消</el-button> + <div style="display: flex;align-items: center;justify-content: space-between"> + <vue3-json-excel + :json-data="expertList" + :fields="fields" + name="专家汇总表.xlsx" + > + <el-button type="primary" plain @click="handleExport">导出专家汇总表</el-button> + </vue3-json-excel> + <div> + <el-button type="primary" @click="searchClick">查询</el-button> + <el-button type="warning" @click="reset">重置</el-button> + <el-button @click="confirmClick">取消</el-button> + </div> </div> </template> </el-drawer> @@ -154,7 +163,7 @@ // import {delProject, getProjectList, getProjectStatistics} from "@/api/projectManage/project"; import {ElMessage, ElMessageBox} from "element-plus"; import Cookies from "js-cookie" -import {delProject, exportData, getProjectList, getProjectNum} from "@/api/projectManage"; +import {delProject, exportData, exportExpertData, getProjectList, getProjectNum} from "@/api/projectManage"; // import * as XLSX from 'xlsx'; import XLSX from 'xlsx-js-style'; import {listDept} from "@/api/system/dept"; @@ -191,6 +200,16 @@ } }); +const expertList = ref([]) +// 导出表格 +const fields = ref({ + '姓名':'expertName', + '处室':'deptName', + '专家费': 'expertFee', + '申请时间': 'createTime', + '事由': 'projectName', +}); + const searchTime = ref([]); const area = ref([]); const stateList = ref([ @@ -224,6 +243,7 @@ getList() getDeptList() getStatistics() + exportEData() // getArea(); // getBusinessList(); // getRiskList(); @@ -254,6 +274,25 @@ } } +const exportEData = async () => { + const {pageSize,pageNum,step,...data} = search.queryParams + const res = await exportExpertData(data); + if (res.code == 200) { + + if(res.data && res.data.length > 0){ + expertList.value = res.data + }else { + expertList.value = [] + } + } else { + ElMessage.warning(res.message) + } +} +const handleExport = () => { + if(expertList.value && expertList.value.length == 0){ + ElMessage.warning('暂无数据导出') + } +} function getDeptList() { listDept({ deptName: undefined, @@ -472,6 +511,7 @@ } getList(); getStatistics(); + exportEData() showDrawer.value = false; } const reset = () => { -- Gitblit v1.9.2