var _ = require('lodash'); var csvtojson = require('csvtojson'); var async = require('async'); var uuid = require('node-uuid'); // generate a uuid with "uuid.v1()" var path = require('path'); var fs = require("fs"); var moment = require('moment'); var helpers = module.exports; function puts(obj) { console.log(obj); } function putd(obj) { console.log(obj); } helpers.puts = puts; helpers.putd = putd; helpers.readCsv = function(filedir, filename, callback) { var Converter=csvtojson.Converter; var csvFileName=path.join(filedir,filename); var fileStream=fs.createReadStream(csvFileName); fileStream.on('error', function(err){ callback(err, null); }); var param={noheader:true, checkType:false}; var csvConverter=new Converter(param); csvConverter.on("end_parsed",function(jsonObj){ var returnValue = jsonObj; callback(null, returnValue); }); fileStream.on('error', function(err) { putd(err); callback(err,""); }); fileStream.pipe(csvConverter); } helpers.getParam = function(csv, matchField, matchValue, returnField) { dataRow=_.find(csv, matchField, matchValue); dataValue=dataRow[returnField]; return dataValue; } helpers.writeOutput = function(req, filename, jsonOutput, callback) { try { fs.writeFileSync(filename, jsonOutput); } catch(err){ callback(err); } } helpers.getFileName = function(req, defFilename) { var fileObj = null; for (var x=0; x < req.files.length; x++) { var fileObj = req.files[x]; if ( fileObj.filename.indexOf(defFilename) != -1 ){ return fileObj.filename; } } return null; }