From 059068863edbc71beb9d289d3d66b608e287db26 Mon Sep 17 00:00:00 2001 From: Manish Choudhari <19778677+choudharymanish8585@users.noreply.github.com> Date: Wed, 15 May 2019 00:31:55 +0530 Subject: [PATCH] Add files via upload --- AutoComplete/AutoCompleteController.cls | 16 ++++++++++++++++ AutoComplete/AutoCompleteController.cls-meta.xml | 5 +++++ AutoComplete/AutoCompleteControllerTest.cls | 16 ++++++++++++++++ .../AutoCompleteControllerTest.cls-meta.xml | 5 +++++ 4 files changed, 42 insertions(+) create mode 100644 AutoComplete/AutoCompleteController.cls create mode 100644 AutoComplete/AutoCompleteController.cls-meta.xml create mode 100644 AutoComplete/AutoCompleteControllerTest.cls create mode 100644 AutoComplete/AutoCompleteControllerTest.cls-meta.xml diff --git a/AutoComplete/AutoCompleteController.cls b/AutoComplete/AutoCompleteController.cls new file mode 100644 index 0000000..f4247db --- /dev/null +++ b/AutoComplete/AutoCompleteController.cls @@ -0,0 +1,16 @@ +public with sharing class AutoCompleteController { + @AuraEnabled(cacheable=true) + public static List getRecords(String searchString, String objectApiName, String idFieldApiName, String valueFieldApiName, String extendedWhereClause, Integer maxRecords){ + searchString = String.escapeSingleQuotes(searchString); + objectApiName = String.escapeSingleQuotes(objectApiName); + idFieldApiName = String.escapeSingleQuotes(idFieldApiName); + valueFieldApiName = String.escapeSingleQuotes(valueFieldApiName); + + if(extendedWhereClause == null){ + extendedWhereClause = ''; + } + + String query = 'SELECT '+idFieldApiName+', '+valueFieldApiName+' FROM '+objectApiName+' WHERE '+valueFieldApiName+' LIKE \'%'+searchString+'%\' '+extendedWhereClause+' LIMIT '+maxRecords; + return Database.query(query); + } +} diff --git a/AutoComplete/AutoCompleteController.cls-meta.xml b/AutoComplete/AutoCompleteController.cls-meta.xml new file mode 100644 index 0000000..8d73c37 --- /dev/null +++ b/AutoComplete/AutoCompleteController.cls-meta.xml @@ -0,0 +1,5 @@ + + + 45.0 + Active + diff --git a/AutoComplete/AutoCompleteControllerTest.cls b/AutoComplete/AutoCompleteControllerTest.cls new file mode 100644 index 0000000..2754182 --- /dev/null +++ b/AutoComplete/AutoCompleteControllerTest.cls @@ -0,0 +1,16 @@ +@isTest +public with sharing class AutoCompleteControllerTest { + @TestSetup + static void makeData(){ + Account acc = new Account(Name='Salesforce'); + insert acc; + } + + @isTest + public static void testGetRecords(){ + List accounts = AutoCompleteController.getRecords('sales', 'Account', 'Id', 'Name', null, 10); + System.assertEquals(1, accounts.size()); + accounts = AutoCompleteController.getRecords('abc', 'Account', 'Id', 'Name', '', 100); + System.assertEquals(0, accounts.size()); + } +} diff --git a/AutoComplete/AutoCompleteControllerTest.cls-meta.xml b/AutoComplete/AutoCompleteControllerTest.cls-meta.xml new file mode 100644 index 0000000..33950cb --- /dev/null +++ b/AutoComplete/AutoCompleteControllerTest.cls-meta.xml @@ -0,0 +1,5 @@ + + + 45.0 + Active +