162 lines
3.6 KiB
JavaScript
162 lines
3.6 KiB
JavaScript
//https://www.npmjs.com/package/csvtojson
|
|
//https://www.npmjs.com/package/json-2-csv
|
|
//https://stackoverflow.com/questions/72218301/transforming-large-array-of-objects-to-csv-using-json2csv
|
|
const path = require("path");
|
|
const json2csv = require("json2csv");
|
|
const fs = require("fs");
|
|
const trialUsers = require("../Constants/trialSignupData.js");
|
|
const njFocusList = require("../Constants/njFocusData.js");
|
|
const csv = require("csvtojson");
|
|
|
|
const converter = csv({
|
|
noheader: true,
|
|
trim: true,
|
|
});
|
|
|
|
//const csvFilePath = "data2.csv";
|
|
|
|
const codeRoot = "novofreedom-fl24-0";
|
|
const number = 201;
|
|
function convertCsvToJson(csvFilePath, codeRoot) {
|
|
converter
|
|
.fromFile(csvFilePath)
|
|
.then((jsonArr) => {
|
|
let num = number;
|
|
const newArr = [];
|
|
jsonArr.forEach((obj) => {
|
|
let newObj = {};
|
|
const valueArr = Object.values(obj);
|
|
const keysArr = [
|
|
"firstName",
|
|
"lastName",
|
|
"firm",
|
|
"email",
|
|
"city",
|
|
"state",
|
|
];
|
|
valueArr.forEach((value, i) => {
|
|
newObj[keysArr[i]] = value;
|
|
});
|
|
num = num + 1;
|
|
newObj["description"] = `${codeRootNJ}${num}`;
|
|
newArr.push(newObj);
|
|
});
|
|
return newArr;
|
|
})
|
|
.then((res) => {
|
|
const filePath = path.join(__dirname, "..", "Userinfo");
|
|
const data = JSON.stringify(res);
|
|
fs.writeFile(`./njFocuslist.json`, data, function (err) {
|
|
if (err) {
|
|
return console.log("err in csvJson writeFile:", err);
|
|
}
|
|
});
|
|
});
|
|
}
|
|
|
|
const codeRootNJ = "novolens-nj24-";
|
|
const csvFilePath = "./data.csv";
|
|
|
|
//convertCsvToJson(csvFilePath, codeRootNJ);
|
|
|
|
//const data = JSON.parse(fileData);
|
|
//works for array of objects. one object => one csv row
|
|
|
|
function convertJsonToCsv(data, fileName) {
|
|
let csv;
|
|
data.forEach((obj, i) => {
|
|
json2csv
|
|
.parseAsync(obj)
|
|
.then((line) => {
|
|
csv += line + "\n";
|
|
|
|
return csv;
|
|
})
|
|
.then((csv) => {
|
|
fs.writeFile(`./${fileName}.csv`, csv, function (err) {
|
|
if (err) throw err;
|
|
console.log("File Saved!");
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
const fileName = "njFocusList";
|
|
convertJsonToCsv(njFocusList.njFocusList, fileName);
|
|
|
|
/*
|
|
function convertJsonToCsv2(data) {
|
|
|
|
data.forEach((obj) => {
|
|
json2csv
|
|
.parseAsync(obj, {
|
|
fields: [
|
|
"uuid",
|
|
"firstName",
|
|
"LastName",
|
|
"firm",
|
|
"email",
|
|
"city",
|
|
"state",
|
|
"zip",
|
|
"description",
|
|
],
|
|
})
|
|
.then((csv) => {
|
|
fs.writeFile("./flRemainingProspects.csv", csv, function (err) {
|
|
if (err) throw err;
|
|
console.log("File Saved!");
|
|
});
|
|
});
|
|
});
|
|
}
|
|
function convertJsonToCsv(data) {
|
|
json2csv.parseAsync(data).then((csv) => {
|
|
fs.writeFile("flRemainingProspects.csv", csv, function (err) {
|
|
if (err) throw err;
|
|
console.log("File Saved!");
|
|
});
|
|
});
|
|
}
|
|
|
|
*/
|
|
|
|
/*
|
|
function convertJsonToCsv2(data) {
|
|
let csv;
|
|
data.forEach((obj, i) => {
|
|
json2csv
|
|
.parseAsync(obj, {
|
|
fields: [
|
|
"uuid",
|
|
"firstName",
|
|
"lastName",
|
|
"firm",
|
|
"email",
|
|
"city",
|
|
"state",
|
|
"zip",
|
|
"signupCode",
|
|
],
|
|
})
|
|
.then((line) => {
|
|
csv += line + "\n";
|
|
return csv;
|
|
})
|
|
.then((csv) => {
|
|
console.log(csv);
|
|
});
|
|
|
|
|
|
.then((csv) => {
|
|
fs.writeFile("./flRemainingProspects.csv", csv, function (err) {
|
|
if (err) throw err;
|
|
console.log("File Saved!");
|
|
});
|
|
});
|
|
|
|
});
|
|
}
|
|
|
|
*/
|