diff --git a/exportSED.js b/exportSED.js new file mode 100644 index 0000000..328a696 --- /dev/null +++ b/exportSED.js @@ -0,0 +1,66 @@ +const xlsx = require('xlsx') +const fs = require('fs') +const dayjs = require('dayjs') + +const dayFromExcel=(value) => +dayjs('1900-01-01') + .add(value + 2 * 365, 'day') + .format('YYYY-MM-DD') + + +const handle = { + topSpeed: (value) => Number(Number(value).toFixed(1)), + acceleration: (value) => Number(Number(value).toFixed(2)), + handling: (value) => Number(Number(value).toFixed(2)), + nitro: (value) => Number(Number(value).toFixed(2)), + nitroDuration: (value) => Number(Number(value).toFixed(2)), + car_id: (value) => '' + value, + 注册日期: dayFromExcel, + 合同开始日期: dayFromExcel, + 合同到期日期: dayFromExcel, +} + +const copy = (obj) => JSON.parse(JSON.stringify(obj)) + +const useHandle = (obj, handle) => { + let res = copy(obj) + Object.keys(handle).forEach((key) => { + if (res[key]) { + res[key] = handle[key](res[key]) + } + }) + return res +} + +const exportJsonLines = (xlsxFilePath, sheetName) => { + const table = xlsx.readFile(xlsxFilePath) + const dataPath = `dist\\${xlsxFilePath}.${sheetName}.line.json` + const dataJson = xlsx.utils.sheet_to_json(table.Sheets[sheetName]) + // console.log(table.Sheets[sheetName]["!merges"]) + const dataLines = dataJson.map((obj) => ({ + car_id: obj.car_id, + fullName: obj.fullName, + nickName: obj.nickName, + isKeyCar: !!obj.keyCar, + rankLimits: [], + star: obj.star, + })) + const dataBuffer = Buffer.from(JSON.stringify(dataLines)) + + fs.writeFileSync(dataPath, dataBuffer) +} + +//运行命令 node exportJson文件名 表名,即可导出文件 + +// node ./exportJson.js ./狂野飙车9生涯数据-地图.xlsx forJson + +const [, , xlsxFilePath, sheetName] = process.argv + +try { + if (xlsxFilePath && sheetName) { + exportJsonLines(xlsxFilePath, sheetName) + console.log('执行成功') + } +} catch (e) { + console.log(e) +} diff --git a/国服小助手.xlsx b/国服小助手.xlsx index 2ee1576..9f44f68 100644 Binary files a/国服小助手.xlsx and b/国服小助手.xlsx differ diff --git a/国际服小助手.xlsx b/国际服小助手.xlsx index e045db8..86b301b 100644 Binary files a/国际服小助手.xlsx and b/国际服小助手.xlsx differ diff --git a/生涯地图.xlsx b/生涯地图.xlsx index 96f12b4..26ed97c 100644 Binary files a/生涯地图.xlsx and b/生涯地图.xlsx differ