SyncMadeEasy/force-app/main/default/aura/MatchingCriteriaParent/MatchingCriteriaParentContr...

136 lines
5.6 KiB
JavaScript

({
doInit : function(component, event, helper) {
helper.addRowHelper(component, 1);
var options = [
{ value: "equals", label: "equals" },
{ value: "contains", label: "contains" },
{ value: "starts with", label: "starts with" },
{ value: "ends with", label: "ends with" }
];
component.set("v.operatorOptions", options);
},
handleOptionSelected: function (cmp, event) {
//Get the string of the "value" attribute on the selected option
var selectedValue = event.getParam("value");
alert("Selected Option: '" + selectedValue + "'");
},
loadAccountFields: function (component, event, helper) {
var options = [];
var action = component.get("c.accFields");
action.setCallback(this, function(response){
var state = response.getState();
if(state == 'SUCCESS') {
var arr = response.getReturnValue() ;
arr.forEach(function(element) {
options.push({ value: element, label: element });
});
component.set('v.AccountFields', options);
console.log('Acc fileds :: ',options);
}
});
$A.enqueueAction(action);
},
loadShopifyFields: function (component, event, helper) {
var options = [];
var action = component.get("c.getShopifyFields");
action.setParams({"objectName":"Account"});
action.setCallback(this, function(response){
var state = response.getState();
if(state == 'SUCCESS') {
var arr = JSON.parse(response.getReturnValue()) ;
arr.forEach(function(element) {
console.log('element :: ',element.Name);
options.push({ value: element.Name, label: element.Name });
});
component.set('v.shopifyFields', options);
console.log('Shop fileds :: ',options);
}
});
$A.enqueueAction(action);
},
addRow : function(component, event, helper) {
var loopVar = 1;
if(event.getSource().get('v.name') === 'multipleRows' && !$A.util.isEmpty('v.numberOfRows') ) {
loopVar = component.get('v.numberOfRows') > 10 ? 0 : component.get('v.numberOfRows');
}
helper.addRowHelper(component, loopVar);
console.log('value of combo:: ',component.find("accField").get("v.value"));
console.log('value of combo:: ',component.find("operatorField").get("v.value"));
console.log('value of combo:: ',component.find("shopifyField").get("v.value"));
var objectList = component.get("v.comboValue");
objectList.push({"AccountField":component.find("accField").get("v.value"),
"OperatorField":component.find("operatorField").get("v.value"),
"ShopifyField":component.find("shopifyField").get("v.value")});
component.set("v.comboValue", objectList);
console.log('value of comboValue:: ',component.get("v.comboValue"));
},
editRow : function(component, event, helper) {
var dynamicRowsList = component.get("v.dynamicRowsList");
var index = dynamicRowsList.findIndex(x => x.rowNumber === event.getSource().get('v.name'))
if(index != -1)
dynamicRowsList[index].editMode = !dynamicRowsList[index].editMode;
component.set("v.dynamicRowsList", dynamicRowsList);
},
deleteRow : function(component, event, helper) {
var dynamicRowsList = component.get("v.dynamicRowsList");
var index = dynamicRowsList.findIndex(x => x.rowNumber === event.getSource().get('v.name'))
if(index != -1)
dynamicRowsList.splice(index, 1);
component.set("v.dynamicRowsList", dynamicRowsList);
var deleteId = event.target.closest("[data-id]").dataset.id;
console.log('value of deleteId:: ',deleteId);
var deleteList = component.get("v.comboValue");
deleteList.splice(deleteId,1);
component.set("v.comboValue", deleteList);
console.log('value of deleteIndex:: ',deleteList);
},
cloneRow : function(component, event, helper) {
var dynamicRowsList = component.get("v.dynamicRowsList");
var index = dynamicRowsList.findIndex(x => x.rowNumber === event.getSource().get('v.name'))
if(index != -1) {
dynamicRowsList.push({
'Name': dynamicRowsList[index].Name,
'Phone': dynamicRowsList[index].Phone,
'AccountNumber': dynamicRowsList[index].AccountNumber,
'editMode': dynamicRowsList[index].editMode,
'rowNumber':dynamicRowsList.length + 1
});
}
component.set("v.dynamicRowsList", dynamicRowsList);
},
incrementRow: function(component, event, helper) {
var numberOfRows = component.get("v.numberOfRows");
component.set("v.numberOfRows", numberOfRows + 1);
},
decrementRow: function(component, event, helper) {
var numberOfRows = component.get("v.numberOfRows");
component.set("v.numberOfRows", numberOfRows - 1);
},
saveRecords : function(component, event, helper) {
var validExpense = component.find('dynamiRowsForm').reduce(function ( validSoFar, inputCmp ) {
inputCmp.showHelpMessageIfInvalid();
return validSoFar && inputCmp.get('v.validity').valid;
}, true);
if(validExpense){
helper.saveRecordsHelper(component, event, helper);
}
},
})