Commit 221e9b4e authored by project's avatar project

--no commit message

--no commit message
parent a02953f6
...@@ -15,10 +15,8 @@ exports.getValues = function(dataSet, cb){ ...@@ -15,10 +15,8 @@ exports.getValues = function(dataSet, cb){
let values = []; let values = [];
//console.log(dataSet.length); //console.log(dataSet.length);
var i = 0; let json = parser.toJson(dataSet, {object: true});
async.whilst(function() { return i < dataSet.length;}, function(callbackFn) {
let json = parser.toJson(dataSet[i], {object: true});
i++;
dataTemplate.type = json.xhr.IO.Type; dataTemplate.type = json.xhr.IO.Type;
dataTemplate.unit = json.xhr.IO.Unit; dataTemplate.unit = json.xhr.IO.Unit;
dataTemplate.value_type = json.xhr.IO.ValueType; dataTemplate.value_type = json.xhr.IO.ValueType;
...@@ -31,7 +29,6 @@ exports.getValues = function(dataSet, cb){ ...@@ -31,7 +29,6 @@ exports.getValues = function(dataSet, cb){
}).catch((err) => { }).catch((err) => {
cb(err); cb(err);
}) })
callbackFn();
} }
else{ else{
var idx = 0; var idx = 0;
...@@ -53,25 +50,19 @@ exports.getValues = function(dataSet, cb){ ...@@ -53,25 +50,19 @@ exports.getValues = function(dataSet, cb){
if( err ) { if( err ) {
console.log(err); console.log(err);
} }
callbackFn();
});
}
}
else callbackFn();
}, function(err) {
if( err ) {
console.log(err);
} else {
if(values.length > 0){ if(values.length > 0){
dataTemplate.values = values; dataTemplate.values = values;
cb(dataTemplate); cb(dataTemplate);
} }
else cb(null); else cb(null);
}
}); });
}
}
else cb(null);
} }
......
...@@ -11,9 +11,8 @@ exports.getValues = function(dataSet, callback){ ...@@ -11,9 +11,8 @@ exports.getValues = function(dataSet, callback){
let values = []; let values = [];
for (var i = 0; i < dataSet.length; i++) {
let json = parser.toJson(dataSet[i], {object: true}); let json = parser.toJson(dataSet, {object: true});
dataTemplate.type = json.xhr.IO.Type; dataTemplate.type = json.xhr.IO.Type;
dataTemplate.unit = json.xhr.IO.Unit; dataTemplate.unit = json.xhr.IO.Unit;
dataTemplate.value_type = json.xhr.IO.ValueType; dataTemplate.value_type = json.xhr.IO.ValueType;
...@@ -30,7 +29,7 @@ exports.getValues = function(dataSet, callback){ ...@@ -30,7 +29,7 @@ exports.getValues = function(dataSet, callback){
} }
} }
}
if(values.length > 0){ if(values.length > 0){
dataTemplate.values = values; dataTemplate.values = values;
......
...@@ -12,9 +12,7 @@ exports.getValues = function(dataSet, callback){ ...@@ -12,9 +12,7 @@ exports.getValues = function(dataSet, callback){
let values = []; let values = [];
let json = parser.toJson(dataSet, {object: true});
for (var i = 0; i < dataSet.length; i++) {
let json = parser.toJson(dataSet[i], {object: true});
dataTemplate.type = json.xhr.IO.Type; dataTemplate.type = json.xhr.IO.Type;
dataTemplate.unit = json.xhr.IO.Unit; dataTemplate.unit = json.xhr.IO.Unit;
dataTemplate.value_type = json.xhr.IO.ValueType; dataTemplate.value_type = json.xhr.IO.ValueType;
...@@ -29,7 +27,7 @@ exports.getValues = function(dataSet, callback){ ...@@ -29,7 +27,7 @@ exports.getValues = function(dataSet, callback){
} }
} }
} }
}
if(values.length > 0){ if(values.length > 0){
dataTemplate.values = values; dataTemplate.values = values;
callback(dataTemplate); callback(dataTemplate);
......
...@@ -13,7 +13,17 @@ function perform_function(context,request,response){ ...@@ -13,7 +13,17 @@ function perform_function(context,request,response){
var output_type = "object/sds"; var output_type = "object/sds";
var di_data = request.data; var di_data = request.data;
let idx = 0;
let out = [];
var dataKeySeries = Object.keys(di_data.data);
// for (var i = 0; i < dataKeySeries.length; i++) {
// console.log(di_data.data[dataKeySeries[i]]);
// }
let i = 0;
async.whilst(function() { return i < dataKeySeries.length;}, function(cb) {
let result = { let result = {
"object_type": 'iBitz', "object_type": 'iBitz',
"station_id": di_data.station_id, "station_id": di_data.station_id,
...@@ -22,14 +32,16 @@ function perform_function(context,request,response){ ...@@ -22,14 +32,16 @@ function perform_function(context,request,response){
"altitude": "", "altitude": "",
"data":[] "data":[]
}; };
let vals = di_data.data[dataKeySeries[i]];
async.whilst(function() { return idx < di_data.data.length;}, function(callback) { i++;
let dtype = di_data.data[idx].data_types; let idx = 0;
//console.log('[DT] di_data length = ' + di_data.data[idx].value.length); async.whilst(function() { return idx < vals.length;}, function(callback) {
if(typeof di_data.data[idx].value.length !== "undefined"){ let dtype = vals[idx].data_types;
//console.log('data = ' + di_data.data[idx].value[0]); //console.log('[DT] di_data length = ' + vals[idx].value.length);
let json = parser.toJson(di_data.data[idx].value[0], {object: true}); let json = parser.toJson(vals[idx].value, {object: true});
agriParser.getParser(json.xhr.IO.Type).getValues(di_data.data[idx].value, function(values) { //console.log('Type = ' + json.xhr.IO.Type);
agriParser.getParser(json.xhr.IO.Type).getValues(vals[idx].value, function(values) {
//console.log('data = ' + vals[idx].value);
idx++; idx++;
if(values !== null){ if(values !== null){
result.latitude = json.xhr.IO.Latitude; result.latitude = json.xhr.IO.Latitude;
...@@ -37,29 +49,38 @@ function perform_function(context,request,response){ ...@@ -37,29 +49,38 @@ function perform_function(context,request,response){
result.data.push(values); result.data.push(values);
//console.log(`STAMP : ${di_data.station_id}-${dtype} = `+ values.values[values.values.length-1].observeddatetime); //console.log(`STAMP : ${di_data.station_id}-${dtype} = `+ values.values[values.values.length-1].observeddatetime);
memstore.setItem(`${di_data.station_id}-${dtype}`, values.values[values.values.length-1].observeddatetime, (err) =>{ memstore.setItem(`${di_data.station_id}-${dtype}`, values.values[values.values.length-1].observeddatetime, (err) =>{
if(err) throw err; if(err){
throw err;
callback(err); callback(err);
});
} }
else callback(); else callback();
}); });
} }
else{ else callback();
idx++; });
callback();
}
}, function(err) {
if( err ) {
console.log(err);
cb(err);
//response.error(err);
} else {
if(result.data.length > 0){
out.push(result);
}
cb();
}
});
}, function(err) { }, function(err) {
if( err ) { if( err ) {
console.log(err); console.log(err);
//response.error(err); //response.error(err);
} else { } else {
//fs.writeFileSync("./result.json", JSON.stringify(result)); //fs.writeFileSync("./result.json", JSON.stringify(out));
//console.log(JSON.stringify(result)); //console.log(JSON.stringify(out));
if(result.data.length > 0) if(out.length > 0)
response.success(result, output_type); response.success(out, output_type);
else response.reject(); else response.reject();
} }
}); });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment