From a2f7f78e8b02e3613c9ff9cf584de2ec0bda075d Mon Sep 17 00:00:00 2001
From: 李彤 <litong@prec-tech.com>
Date: 星期四, 12 五月 2022 09:34:08 +0800
Subject: [PATCH] 替换字段

---
 force-app/main/default/classes/NFM703Controller.cls |   48 +++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 43 insertions(+), 5 deletions(-)

diff --git a/force-app/main/default/classes/NFM703Controller.cls b/force-app/main/default/classes/NFM703Controller.cls
index c9c6791..4c4be18 100644
--- a/force-app/main/default/classes/NFM703Controller.cls
+++ b/force-app/main/default/classes/NFM703Controller.cls
@@ -37,7 +37,7 @@
 		public String ActivityTypeName; //娲诲姩褰㈠紡
 		public String ExpectedOlympusAttendance; //棰勮鍙備細Olympus浜烘暟
 		public String ExpectedHcpAttendance; //棰勮鍙備細HCP浜烘暟
-		public String BudgetType; //棰勭畻绫诲瀷=Budget_Type__c
+		public String BudgetType; //棰勭畻绫诲瀷=Implementation_Purpose__c
 		public String OfficeCategory; //绉戝鍒嗙被=OfficeCategory__c
 		public String MeetingType; //浼氳绫诲瀷=Meeting_Type__c
 		public String StateMaster; //鐪�=State_Master__c
@@ -71,7 +71,7 @@
 	    								Name,Num__c,
 	    								StartDate,
 	    								EndDate,
-	    								Budget_Type__c,
+	    								Implementation_Purpose__c,
 	    								OfficeCategory__c,
 	    								Meeting_Type__c,
 	    								State_Master__r.Name,
@@ -83,6 +83,8 @@
 	    								HostName__c,
 	    								cooperatorCompany__c, 
                                         Owner.Employee_No__c, 
+                                        Shared_Editing__c, 
+                                        Carbon_Copy__c, 
 	    								IF_Approved__c from Campaign where id in: camIdList];
 	    String logstr = ' ' + 'NumberOfRecord=' + camList.size() + '\n';
 
@@ -97,6 +99,19 @@
 		mon.TransmissionDateTime = nowStr;
 		mon.Text = '';
 
+        Map<String, String> transferMap = new Map<String, String>();
+        List<BatchIF_Transfer__c> transferList = [select Table__c,
+                                  Column__c,
+                                  External_value__c,
+                                  Internal_value__c
+                                  from BatchIF_Transfer__c
+                                  where Dropped_Flag__c = false
+                                          and (Table__c = 'Application_for_Conference_Adjudication__c')
+                                          ];
+        for (BatchIF_Transfer__c t : transferList) {
+            transferMap.put(t.Column__c + t.Internal_value__c, t.External_value__c);
+        }
+
         try {
         		
         	for (Campaign cam : camList) {
@@ -106,8 +121,8 @@
                 ged.Name 			  = cam.Name;
         		ged.StartDate 		  = NFMUtil.formatDate2StrSpo(cam.StartDate);
         		ged.EndDate 		  = NFMUtil.formatDate2StrSpo(cam.EndDate);
-                ged.BudgetType        = cam.Budget_Type__c;
-				ged.OfficeCategory 	  = cam.OfficeCategory__c;
+                ged.BudgetType        = cam.Implementation_Purpose__c;
+				ged.OfficeCategory 	  = NFMUtil.getMapValue(transferMap, 'OfficeCategory__c', cam.OfficeCategory__c, iflog);
 				ged.MeetingType 	  = cam.Meeting_Type__c;
                 ged.ActivityTypeName  = cam.Activity_Type_Name__c;
 				ged.StateMaster 	  = cam.State_Master__r.Name;                 
@@ -118,7 +133,7 @@
                 ged.ExpectedOlympusAttendance = String.valueOf(cam.Expected_Olympus_Attendance__c);
                 ged.ExpectedHcpAttendance = String.valueOf(cam.Expected_Hcp_Attendance__c);
                 // 鏆傛椂瀹氫箟涓轰富鎷呭綋锛屽悗缁坊鍔犲叾浠栧叡浜汉
-                ged.SharedEditing     = cam.Owner.Employee_No__c;
+                ged.SharedEditing     = Modify_Sharing(cam.Owner.Employee_No__c, cam.Shared_Editing__c, cam.Carbon_Copy__c);
                 gds.GeData.add(ged);
 
     		}
@@ -231,4 +246,27 @@
         upsert rowDataSFDC;
 
     }
+
+    public static String Modify_Sharing(String owner, String shared_editors, String carbon_copies) {
+        if (String.isBlank(owner) && String.isBlank(shared_editors) && String.isBlank(carbon_copies)) {
+            return '';
+        }
+        String ret = '';
+        if (String.isNotBlank(owner)) {
+            ret = owner;
+        }
+        if (String.isNotBlank(shared_editors)) {
+            if (ret.length() > 0) {
+                ret = ret + ',';
+            }
+            ret = ret + shared_editors;
+        }
+        if (String.isNotBlank(carbon_copies)) {
+            if (ret.length() > 0) {
+                ret = ret + ',';
+            }
+            ret = ret + carbon_copies;
+        }
+        return ret;
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.1