From ea5686cada5a3e63edaa0d3e8c2db8def4f9ff31 Mon Sep 17 00:00:00 2001
From: Li Jun <buli@deloitte.com.cn>
Date: 星期一, 11 四月 2022 11:52:41 +0800
Subject: [PATCH] PIPLCloneButton

---
 force-app/main/default/classes/NewAndEditContactController.cls |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/force-app/main/default/classes/NewAndEditContactController.cls b/force-app/main/default/classes/NewAndEditContactController.cls
index b87b107..51152d2 100644
--- a/force-app/main/default/classes/NewAndEditContactController.cls
+++ b/force-app/main/default/classes/NewAndEditContactController.cls
@@ -6,7 +6,9 @@
         
         List<String> fieldList = new List<String>(Schema.getGlobalDescribe().get('Contact').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);
+        }
         Init(controller.getRecord());
         String contactId = controller.getRecord().Id;
         if(contactId != null){
@@ -16,6 +18,7 @@
         }else{
             Map<string,string> mso = ApexPages.currentPage().getParameters();
             system.debug('mso='+mso);
+            system.debug('url='+ApexPages.currentPage().getUrl());
             if(mso.containsKey('con4_lkid')){
                 controller.getRecord().put('AccountId',mso.get('con4_lkid'));
             }
@@ -29,15 +32,16 @@
         system.debug(mso);
         PageReference pg = null;
         mso.remove('sfdc.override');
+        mso.remove('save_new');
         system.debug('recordId='+recordId);
         if(string.isBlank(recordId)){
             pg = new PageReference('/003/e');
         }else{
             pg = new PageReference('/'+recordId+'/e');
         }
-        //pg.getParameters().putAll(mso);
-        pg.getParameters().put('RecordType',mso.get('RecordType'));
-        pg.getParameters().put('accid',mso.get('accid'));
+        pg.getParameters().putAll(mso);
+        //pg.getParameters().put('RecordType',mso.get('RecordType'));
+        //pg.getParameters().put('accid',mso.get('accid'));
         pg.getParameters().put('nooverride','1');
         pg.setRedirect(true);
         return pg;

--
Gitblit v1.9.1