JSFiddle - React, Tailwind, and code Playground
by houssamk
HTML
<div id="test_payload">
</div>
<hr/>
<div id="test_payload1">
</div>
JavaScript
// var payload = mc.getPayloadJSON;
var payload = {"Assets":{"Asset":[{"Id":"AAFOqvAEQAABNUHAAM","OrderNo":"1534494","PurchaseOrderNo":"4500348118","ItemNo":"5890-47ZC-00A0","SerialNo":"X012GW02A0065","AccountCode":"4588933","PtoModelNo":"SRS-LYNC-M-DUALX","ShippedDate":"2015-06-05-06:00","WarrantyEndDate":null,"OrderedQuantity":"1","OrderDate":"2015-05-28-06:00"},{"Id":"AAFOqvAEQAABNUHAAN","OrderNo":"1534494","PurchaseOrderNo":"4500348118","ItemNo":"5890-47ZC-00A0","SerialNo":"X012GW14A0044","AccountCode":"4588933","PtoModelNo":"SRS-LYNC-M-DUAL","ShippedDate":"2015-06-05-06:00","WarrantyEndDate":null,"OrderedQuantity":"1","OrderDate":"2015-05-28-06:00"}]}}
// 2018-01-15-07:00
//define the start and end
var products = {"totalSize":1,"done":true,"records":[{"attributes":{"type":"Product2","url":"/services/data/v39.0/sobjects/Product2/01tU0000001WCeTIAW"},"Id":"01tU0000001WCeTIAW","ProductCode":"SRS-LYNC-M-DUAL"}]};
var productIds = {};
products.records.forEach(function(element){
productIds[element.ProductCode] = element.Id ;
});
// set the product2Id for all resolved PtoModelNo in salesforce
payload.Assets.Asset.forEach(function(element){
if (productIds[element.PtoModelNo]) // if this is != undefined then it is resolved
element.Product2Id = productIds[element.PtoModelNo]
});
$('#test_payload').text(JSON.stringify(payload.Assets.Asset));
$('#test_payload1').text(JSON.stringify(productIds));