提交代码

This commit is contained in:
zlwu committed 2025-08-17 09:50:57 +08:00
1 parent 5e0af12650
commit 7c78b3cf29
9 files changed
+791 -11

No files matched your search

@@ -1,8 +1,8 @@
import request from '@/utils/request';
import { AxiosPromise } from 'axios';
import {
DormHygieneCheckVO,
DormHygieneCheckForm,
import {
DormHygieneCheckVO,
DormHygieneCheckForm,
DormHygieneCheckQuery,
DormHygieneCheckCompleteForm,
DormHygieneStudentScoreVO,
@@ -201,3 +201,17 @@ export const getRoomOptions = (buildingId?: string | number): AxiosPromise<any[]
params: buildingId ? { buildingId } : undefined
});
};
/**
* 导出宿舍卫生检查数据(包含学生卫生情况)
* @param query 查询条件
* @returns Blob 导出文件数据
*/
export const exportDormHygieneCheck = (query?: DormHygieneCheckQuery) => {
return request({
url: '/dormHygieneCheck/dormHygieneCheck/advancedExport',
method: 'post',
data: query,
responseType: 'blob'
});
};
@@ -4,7 +4,7 @@
<transition :enter-active-class="proxy?.animate.searchAnimate.enter" :leave-active-class="proxy?.animate.searchAnimate.leave">
<div v-show="showSearch" class="search-form-container">
<el-card shadow="hover">
<el-form ref="queryFormRef" :model="queryParams" :inline="true">
<el-form ref="queryFormRef" :model="queryParams">
<el-row :gutter="20">
<el-col :span="6">
<el-form-item label="检查标题" prop="checkTitle">
@@ -12,7 +12,7 @@
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="检查日期" prop="checkDate">
<el-form-item label="检查日期" prop="checkDate" style="width: 100%">
<el-date-picker clearable v-model="queryParams.checkDate" type="date" value-format="YYYY-MM-DD" placeholder="请选择检查日期" />
</el-form-item>
</el-col>
@@ -74,7 +74,7 @@
>导出</el-button
>
</el-col>
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
<right-toolbar v-model="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
</template>
@@ -136,7 +136,7 @@
<!-- 宿舍卫生检查弹窗组件 -->
<DormHygieneCheckDialog
v-model:visible="dialog.visible"
v-model="dialog.visible"
:title="dialog.title"
:form-data="form"
@submit="handleDialogSubmit"
@@ -155,7 +155,8 @@ import {
getDormHygieneCheck,
delDormHygieneCheck,
addDormHygieneCheck,
updateDormHygieneCheck
updateDormHygieneCheck,
exportDormHygieneCheck
} from '@/api/xg/xgss/dormHygieneCheck/dormHygieneCheck';
import {
DormHygieneCheckVO,
@@ -383,13 +384,37 @@ const handleDelete = async (row?: DormHygieneCheckVO) => {
};
/** 导出按钮操作 */
const handleExport = () => {
const handleExport = async () => {
// try {
// ElMessage.info('正在导出数据,请稍候...');
// const res = await exportDormHygieneCheck(queryParams.value);
// // 创建下载链接
// const blob = new Blob([res.data], {
// type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
// });
// const url = window.URL.createObjectURL(blob);
// const link = document.createElement('a');
// link.href = url;
// link.download = `宿舍卫生检查数据_${new Date().toISOString().slice(0, 10)}.xlsx`;
// // 触发下载
// document.body.appendChild(link);
// link.click();
// document.body.removeChild(link);
// window.URL.revokeObjectURL(url);
// ElMessage.success('导出成功');
// } catch (error) {
// console.error('导出失败:', error);
// ElMessage.error('导出失败,请重试');
// }
proxy?.download(
'dormHygieneCheck/dormHygieneCheck/export',
'dormHygieneCheck/dormHygieneCheck/advancedExport',
{
...queryParams.value
},
`dormHygieneCheck_${new Date().getTime()}.xlsx`
`宿舍卫生检查数据_${new Date().getTime()}.xlsx`
);
};