/* eslint-disable no-return-await */ /* eslint-disable camelcase */ import XLSX from 'xlsx' /** * excel文件转json数据 */ class Excel2JsonService { /** * 解析excel表格 * @param {File} file 文件 */ async export2excel(file) { return await new Promise((resolve, reject) => { try { const reader = new FileReader() reader.onload = (e) => { const wb = XLSX.read(e.target.result, { type: 'binary' }) // 读取完成的数据 // 转成json header解析第一行标题 const data = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]], { header: 1 }) resolve(data) } reader.readAsBinaryString(file) } catch (error) { console.log('解析错误') reject(error) } }) } /** * 解析后的浮点数转时间戳 * @param num 时间浮点 */ number2times(num) { const utc_value = (num - 25569) * 86400 const date_info = new Date(utc_value * 1000).getTime() const newtime = (date_info - 8 * 3600 * 1000) return newtime } } export default new Excel2JsonService()