ZN
2026-03-20 8bf59ab1b9e97a0a7d2fa122746b287c185852ae
fix(排班管理): 修复导出文件下载时响应类型处理问题

将API导出函数的响应类型设置为blob,确保正确处理二进制数据。同时优化前端下载逻辑,根据响应自动创建Blob对象,并统一设置Excel文件类型。添加finally块确保加载状态正确重置。
已修改2个文件
15 ■■■■■ 文件已修改
src/api/personnelManagement/class.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/personnelManagement/classsSheduling/index.vue 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/personnelManagement/class.js
@@ -71,6 +71,7 @@
    url: "/personalShift/export",
    method: "get",
    params: query,
    responseType: "blob",
  });
}
@@ -114,4 +115,4 @@
        method: 'get',
        params: query,
    })
}
}
src/views/personnelManagement/classsSheduling/index.vue
@@ -674,10 +674,12 @@
    })
      .then(res => {
        proxy.$modal.msgSuccess("下载成功");
        downLoading.value = false;
        const blob = new Blob([res], {
          type: "application/force-download",
        });
        const blob =
          res instanceof Blob
            ? res
            : new Blob([res], {
                type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
              });
        let fileName = "";
        if (query.month) {
          fileName = year + "-" + query.month + " 班次信息";
@@ -687,6 +689,8 @@
        proxy.$download.saveAs(blob, fileName + ".xlsx");
      })
      .catch(err => {
      })
      .finally(() => {
        downLoading.value = false;
      });
  };