JSFiddle - React, Tailwind, and code Playground
by Heena Mahour
JavaScript
var fxMapping={'EUR':1.1388,'GBP':1.4373};
var dealData=[{'NoOfDeals':33,'GAV':13225634399.00000000,'Equity':0.00000000,'Currency':'EUR'},{'NoOfDeals':14,'GAV':7220525668.00000000,'Equity':81106000.00000000,'Currency':'GBP'}];
var DealData = getUSDEquivalent(dealData, fxMapping, ["GAV", "Equity"], "", "", "Currency", ["NoOfDeals"]);
function getUSDEquivalent(data, fxMapping, measure, group, childgroup, currencyParam, others) {
debugger;
var _measure = measure; //measure in array
var finalData = [];
var _final = {};
for (var _temp = 0; _temp < _measure.length; _temp++) {
var keyName;
for (var _i = 0; _i < data.length; _i++) {
keyName = _measure[_temp]
if (childgroup.length > 0) {
if (data[_i][childgroup] == null) {
keyName += "NULL"
}
else {
keyName += data[_i][childgroup]
}
}
data[_i][_measure[_temp]] = (data[_i][_measure[_temp]] == null) ? 0 : data[_i][_measure[_temp]]
if (group.length > 0) {
if (data[_i][group] == null) {
keyName += "NULL"
} else {
keyName += data[_i][group]
}
}
//keyName = ((data[_i][group]) ? "NULL" : data[_i][group]) + _measure[_temp]
if (_final.hasOwnProperty(keyName) == false) {
_final[keyName] = 0;
_final[keyName + "visited"] = false;
_final[keyName + "currencies"] = [];
}
_final[keyName + "currencies"].push(data[_i][currencyParam] ? data[_i][currencyParam] : "Null")
if (fxMapping.hasOwnProperty(data[_i][currencyParam]) == true) {
_final[keyName] += fxMapping[data[_i][currencyParam]] * data[_i][_measure[_temp]];
} else {
_final[keyName] += data[_i][_measure[_temp]];
}
...