Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public with sharing class LightningUtility {
- public static List<Schema.FieldSetMember> getFieldSetFields(String ObjectApiName,String fieldSetName) {
- return Schema.getGlobalDescribe().get(ObjectApiName).getDescribe().FieldSets.getMap().get(fieldSetName).getFields();
- }
- public static Boolean isCustomField(String ObjectApiName, String fieldApiName) {
- return Schema.getGlobalDescribe().get(ObjectApiName).getDescribe().fields.getMap().get(fieldApiName).getDescribe().isCustom();
- }
- public static String getFieldApiNames4QueryString(List<Schema.FieldSetMember> oppFields, String objectApiName) {
- String fieldsSel = '';
- for(Schema.FieldSetMember fsm : oppFields) {
- if(String.isBlank(fieldsSel)) {
- if(String.valueOf(fsm.getType()) == 'REFERENCE') {
- String str = fsm.getFieldPath();
- if(isCustomField(objectApiName,fsm.getFieldPath())) {
- fieldsSel = str+','+str.left(str.length()-1)+'r.Name';
- }
- else {
- fieldsSel = str+','+str.left(str.length()-2)+'.Name';
- }
- }
- else {
- fieldsSel = fsm.getFieldPath();
- }
- }
- else {
- if(String.valueOf(fsm.getType()) == 'REFERENCE') {
- String str = fsm.getFieldPath();
- if(isCustomField(objectApiName,fsm.getFieldPath())) {
- fieldsSel += ','+str+','+str.left(str.length()-1)+'r.Name';
- }
- else {
- fieldsSel += ','+str+','+str.left(str.length()-2)+'.Name';
- }
- }
- else {
- fieldsSel += ','+fsm.getFieldPath();
- }
- }
- }
- return fieldsSel;
- }
- public static List<String> getFieldApisLstOfFieldSet(List<Schema.FieldSetMember> oppFields) {
- List<String> fieldApiNames = new List<String>();
- for(Schema.FieldSetMember fsm : oppFields) {
- fieldApiNames.add(fsm.getFieldPath());
- }
- return fieldApiNames;
- }
- public static List<KayAndValue> getFieldApisAndDTyesLstOfFieldSet(List<Schema.FieldSetMember> oppFields, String objectApi) {
- List<KayAndValue> fieldApiDataTypes = new List<KayAndValue>();
- for(Schema.FieldSetMember fsm : oppFields) {
- KayAndValue kv = new KayAndValue(fsm.getFieldPath(),String.valueOf(fsm.getType()),isCustomField(objectApi,fsm.getFieldPath()));
- fieldApiDataTypes.add(kv);
- }
- return fieldApiDataTypes;
- }
- public static List<String> getFieldLabelsLstOfFieldSet(List<Schema.FieldSetMember> oppFields, String objectApiName) {
- List<String> fieldLabelNames = new List<String>();
- for(Schema.FieldSetMember fsm : oppFields) {
- if(String.valueOf(fsm.getType()) == 'REFERENCE' && !isCustomField(objectApiName,fsm.getFieldPath())) {
- fieldLabelNames.add(fsm.getLabel().left(fsm.getLabel().length()-2)+' Name');
- }
- else if(String.valueOf(fsm.getType()) == 'ID') {
- fieldLabelNames.add('Actions');
- }
- else {
- fieldLabelNames.add(fsm.getLabel());
- }
- }
- return fieldLabelNames;
- }
- public static String getQueryString(String objectApiName, String selFieldsString, String limitSize, String offsetSize) {
- system.debug('@@limitSize: '+limitSize);
- String limitSizeStr;
- if(limitSize == null) {
- limitSizeStr = String.valueOf(Limits.getLimitQueryRows());
- }
- else {
- limitSizeStr = limitSize;
- }
- system.debug('limitSizeStr: '+limitSizeStr);
- String finalOffset = '';
- if(String.isNotBlank(offsetSize)) {
- finalOffset = ' offset '+offsetSize;
- }
- return 'select '+selFieldsString+' from '+objectApiName + ' Limit '+limitSizeStr+finalOffset;
- }
- public class KayAndValue {
- @AuraEnabled
- public String fieldDataType;
- @AuraEnabled
- public String fieldApiName;
- @AuraEnabled
- public Boolean isCustom;
- public KayAndValue(String fieldApiName, String fieldDataType, Boolean isCustom) {
- this.fieldApiName = fieldApiName;
- this.fieldDataType = fieldDataType;
- this.isCustom = isCustom;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement