最近需要將客戶的一個上萬條記錄的Excel文件按規則重新計算價格,如果手工一條一條計算的話估計需要一個月,如果使用JS來讀取,生成結算表,最多30分鐘。
var fs = require("fs");
fs.readFile('202007.csv', function (err, data) {
var table = new Array();
if (err) {
console.log(err.stack);
return;
}
ConvertToTable(data, function (table) {
// console.log(table);
})
});
let types = {};
function ConvertToTable(data, callBack) {
data = data.toString();
var table = new Array();
var rows = new Array();
rows = data.split("\r\n");
for (var i = 0; i < rows.length; i++) { //rows.length
table.push(rows[i].split(","));
if(table[i][3]){
types[table[i][3]] = true;
if(prices[table[i][3]] || prices[table[i][3]] === 0){
nums += prices[table[i][3]] * parseInt(table[i][2].replace(/\"/g, "")) + 3;
}
if(!prices[table[i][3]] && prices[table[i][3]] !== 0){
console.log("缺少價格:"+table[i][3]);
}
}
}
console.log(Object.getOwnPropertyNames(types).length);
console.log('total: '+nums);
}
nums為最終計算的價格信息。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/222984.html