Advertisement
Guest User

Untitled

a guest
Mar 29th, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. export function importDataSet(filePaths, fileType) {
  2.   return (dispatch, getState) => {
  3.     //const {timePeriod} = getState().main;
  4.  
  5.     Promise.all(filePaths.map((item, i) => {
  6.       return SomeFormatDataReader(item);
  7.     })).then((results) => {
  8.       results.map((item, i) => {
  9.         saveDataSet(item);
  10.       });
  11.       console.log(results);
  12.     });
  13.  
  14.     //const totalRows = result.columns.length * result.columns[0].length;
  15.   }
  16. }
  17.  
  18. function saveDataSet(data) {
  19.   return Promise.all(data.columns.map((item, i) => {
  20.     if (i > 0 && item.name !== '') {
  21.       return db.DataSet.findOrCreate({
  22.         where: {name: item.name},
  23.         defaults: {
  24.           name: item.name,
  25.           si: item.si,
  26.         }
  27.       }).then((dataSet) => {
  28.         saveDataSetValue(dataSet[0].id, data.columns[0].values, data.columns[i].values);
  29.       }).catch((e) => {
  30.         console.log('DataSet: ' + e.result.trace());
  31.       });
  32.     }
  33.   }));
  34. }
  35.  
  36. function saveDataSetValue(dataSetId, times, values) {
  37.   db.disableLogging = true;
  38.   return Promise.all(values.map((value, i) => {
  39.     const time = times[i].format(formatSqlTime);
  40.     return db.sequelize.query(`INSERT INTO DataSetValues (id, dataSetId, time, value) VALUES (NULL,${dataSetId},'${time}', ${value});`, {raw: true});
  41.   })).then((results) => {
  42.     db.disableLogging = false;
  43.   });
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement