wujingjing
2025-03-10 0159386060edb946f29b5adcd9659dbfac06d6e1
src/utils/util.ts
@@ -10,6 +10,7 @@
import FileSaver from 'file-saver';
import * as XLSX from 'xlsx';
import { MAIN_URL } from '../constants';
import { saveAs } from 'file-saver';
/**
 * 普通对象转为 formData
@@ -547,7 +548,7 @@
   const endDate = new Date();
   const startDate = new Date();
   startDate.setTime(startDate.getTime() - 3600 * 1000 * 24 * dates);
   endDate.setHours(23,59,59,59)
   endDate.setHours(23, 59, 59, 59);
   startDate.setHours(0, 0, 0, 0);
   return [startDate, endDate];
};
@@ -629,8 +630,6 @@
   }
   return percent;
};
/**
 * 保留指定精度小数位,且不补零
@@ -751,7 +750,6 @@
   return decodedData;
}
/**
 * 休眠指定秒数
 * @param seconds 休眠秒数
@@ -762,3 +760,30 @@
      setTimeout(resolve, seconds * 1000);
   });
};
/**
 * 下载文件
 * @param url 文件地址
 * [{
      类型: item.OTYPE,
      名称: item.ONAME,
      位置: item.WKT,
}]
 * @param fileName 文件名
 */
export const downloadExcel = (tableData: any[], fileName: string) => {
   // 创建工作簿
   const wb = XLSX.utils.book_new();
   // 创建工作表
   const ws = XLSX.utils.json_to_sheet(tableData);
   // 将工作表添加到工作簿
   XLSX.utils.book_append_sheet(wb, ws, '查询结果');
   // 生成 Excel 文件
   const excelBuffer = XLSX.write(wb, { bookType: 'xlsx', type: 'array' });
   const blob = new Blob([excelBuffer], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });
   // 下载文件
   saveAs(blob, `${fileName}_${new Date().toLocaleDateString()}.xlsx`);
};