From f5a94e721ae5a26f817f0df75065b64f1f192eb3 Mon Sep 17 00:00:00 2001 From: Li Jun <buli@deloitte.com.cn> Date: 星期一, 28 三月 2022 21:43:51 +0800 Subject: [PATCH] PIPLFunctionDeploy0328 --- force-app/main/default/classes/NewAndEditInquiryFormController.cls | 46 +++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 45 insertions(+), 1 deletions(-) diff --git a/force-app/main/default/classes/NewAndEditInquiryFormController.cls b/force-app/main/default/classes/NewAndEditInquiryFormController.cls index 8019170..83308e8 100644 --- a/force-app/main/default/classes/NewAndEditInquiryFormController.cls +++ b/force-app/main/default/classes/NewAndEditInquiryFormController.cls @@ -11,7 +11,9 @@ public NewAndEditInquiryFormController(ApexPages.StandardController controller) { List<String> fieldList = new List<String>(Schema.getGlobalDescribe().get('Inquiry_form__c').getDescribe().fields.getMap().keyset()); // Add fields to controller. This is to avoid the SOQL error in visualforce page - controller.addFields(fieldList); + if (!Test.isRunningTest()) { + controller.addFields(fieldList); + } // contact lookup LookUpOverrideFields.add('Contact_Name__c'); LookUpOverrideFields.add('Lead_link__c'); @@ -36,6 +38,48 @@ return save(new Inquiry_form__c(),leadJson,transId,isNew); } + @RemoteAction + global static String queryAccount(String accountTypes,String accountId) { + System.debug('accountType='+accountTypes); + System.debug('accountId='+accountId); + List<Object> types = (List<Object>)JSON.deserializeUntyped(accountTypes); + System.debug('types='+types); + String soql = 'select Id,Name,'; + for (Object t : types) { + soql += (String)t+','; + } + soql = soql.substring(0,soql.length()-1); + soql += ' from Account where id=\''+accountId+'\''; + System.debug('soql='+soql); + Sobject account = Database.query(soql); + + Map<String, Map<String, String>> m = new Map<String, Map<String, String>>(); + + System.debug('account='+account); + for (Object ty : types) { + String t = (String)ty; + if (account.get(t) != null){ + Sobject acc = Database.query('select Id,Name from Account where id=\''+account.get(t)+'\''); + Map<String, String> n = new Map<String, String>(); + n.put('Id', (String)acc.get('Id')); + n.put('Name', (String)acc.get('Name')); + m.put(t, n); + } + } + // if (account.get('Hospital__c') != null){ + // m.put('Hospital__c', (String)account.get('Hospital__c')); + // m.put('Hospital__r.Name', (String)account.get('Hospital__r.Name')); + // } + // if (account.get('Department_Class__c') != null){ + // m.put('Department_Class__c', (String)account.get('Department_Class__c')); + // m.put('Department_Class__r.Name', (String)account.get('Department_Class__r.Name')); + // } + System.debug('m='+m); + return JSON.serialize(m); + + // return (String)account.get('Hospital__c'); + } + private void checkUrl(String urlStr, String sobjType){ Map<String, String> urlFieldMap = new Map<String, String>(); urlFieldMap = ApexPages.currentPage().getParameters(); -- Gitblit v1.9.1