From 9a717144ef086a92a34adfc0763dfa9f6cb4b0ba Mon Sep 17 00:00:00 2001 From: Li Jun <buli@deloitte.com.cn> Date: 星期六, 12 三月 2022 16:54:21 +0800 Subject: [PATCH] Merge PIPL Function code 20220311 --- force-app/main/default/classes/NFM624Rest.cls | 140 ++++++++++++++++++++++++++++++---------------- 1 files changed, 92 insertions(+), 48 deletions(-) diff --git a/force-app/main/default/classes/NFM624Rest.cls b/force-app/main/default/classes/NFM624Rest.cls index 254feb4..ada2b1b 100644 --- a/force-app/main/default/classes/NFM624Rest.cls +++ b/force-app/main/default/classes/NFM624Rest.cls @@ -10,6 +10,10 @@ @RestResource(urlMapping = '/NFM624/*') global with sharing class NFM624Rest { + //add to AWS 鍥炲 start sushanhu 20220225 + static Boolean SFStatus=true; + static String SFMessage=''; + //add to AWS 鍥炲 end sushanhu 20220225 private static final String LOG_TYPE = 'NFM624'; // global class GeDatasRest { // public GeDatas GeDatas; @@ -21,13 +25,15 @@ } global class GeData { - public String ContactId; //缁熶竴骞冲彴ID + public String ContactId; //缁熶竴骞冲彴ID//Update to aws 瀛樺偍鐨凙WSContactId 20220225 SUSHANHU public String ServiceUserId; //鏈嶅姟骞冲彴鐢ㄦ埛ID public String PersonManagementCode; //浜哄憳绠$悊缂栫爜 public String HospitalManagementCode2; //鍖婚櫌骞冲彴缂栫爜 骞冲彴缂栫爜 PlatformCode__c public String DepartmentManagementCode2; //绉戝骞冲彴缂栫爜 骞冲彴缂栫爜 PlatformCode__c public String Name; //濮撳悕 + public String NameEncrypted;//濮撳悕瀵嗘枃 add 20220215 public String Mobile; //鎵嬫満鍙风爜 + public String MobileEncrypted;//鎵嬫満鍙风爜瀵嗘枃 add 20220215 public String State; //鍗曚綅鎵�鍦ㄧ渷浠� public String City; //甯� public String AccountName; //鍖婚櫌鍚� @@ -37,10 +43,12 @@ public String RelatedDepartment; //鍏宠仈SFDC绉戝 瀹㈡埛绠$悊缂栫爜(鎵嬪啓) AgentCode_Ext__c public String Type; //鑱岀 public String ContactAddress; //鑱旂郴鍦板潃 - public Boolean ForbiddenStatus; //骞冲彴鐢ㄦ埛绂佺敤鏍囪瘑 + public String ContactAddressEncrypted;//鑱旂郴鍦板潃瀵嗘枃 + public Boolean ForbiddenStatus; //骞冲彴鐢ㄦ埛绂佺敤鏍囪瘑 public String RegSource; //娉ㄥ唽骞冲彴鏉ユ簮 public Boolean AgentFlag; //缁忛攢鍟嗘爣璇� public String ApproverID; //瀹℃牳浜哄憳鍛樺伐缂栫爜 + public String DataId;//aws瀛樺偍鍑嵁 } @HttpPost @@ -49,7 +57,7 @@ // 鍙栧緱鎺ュ彛浼犺緭鍐呭 String strData = RestContext.request.requestBody.toString(); GeDatas ges = (GeDatas) JSON.deserializeStrict(strData, GeDatas.class); - + system.debug('ges---'+ges); if (ges == null) { return; @@ -71,8 +79,16 @@ RestResponse res = RestContext.response; res.addHeader('Content-Type', 'application/json'); res.statusCode = 200; - String jsonResponse = '{"status": "Success", "Message":""}'; - res.responseBody = blob.valueOf(jsonResponse); + // String jsonResponse = '{"status": "Success", "Message":""}'; + // res.responseBody = blob.valueOf(jsonResponse); + //updata response toAWS 20220225 sushanhu start + NFMUtil.NFMResponse result = NFMUtil.getNFMResponse(); + result.SFStatus=SFStatus; + result.SFMessage=SFMessage; + String jsonResponse =JSON.serialize(result); + system.debug('result---'+jsonResponse); + res.responseBody = blob.valueOf(jsonResponse); + //updata response toAWS 20220225 sushanhu end return; } @@ -130,7 +146,11 @@ try { //鏍规嵁浼犺繃鏉ョ殑绠$悊缂栫爜鏌ヨ濡傛灉鍙互鏌ヨ寰楀埌缁撴灉鍒欐洿鏂帮紝鏌ヨ涓嶅埌鍒欐柊澧� List < Gedata > newGeDataList = new List < Gedata > (); for (Gedata gedata: GeDataList) { - string dataComplete = verify(gedata); + //for test + gedata.AgentFlag=false; + // string dataComplete = verify(gedata); + string dataComplete =null; + // test end for pi if (!String.isBlank(dataComplete)) { logstr += dataComplete; rowData.Is_Error__c = 1; @@ -282,12 +302,18 @@ ct.MobilePhone = gedata.Mobile; ct.RegSource__c = comefrom; ct.UnifiedI_Contact_ID__c = gedata.ContactId; //缁熶竴骞冲彴Id + // //UPDATE TO AWS 瀛樺偍鐨勭粺涓�骞冲彴id + // ct.AWS_UnifiedI_Contact_ID__c=gedata.ContactId; //缁熶竴骞冲彴Id ct.ServicePlatformCode__c = gedata.ServiceUserId; //鏈嶅姟骞冲彴鐢ㄦ埛Id ct.Contact_address__c = gedata.ContactAddress;//鑱旂郴鍦板潃 + ct.Contact_address_Encrypted__c=gedata.ContactAddressEncrypted;//鑱旂郴鍦板潃瀵嗘枃 add 20220215 ct.Platform_disabled_representation__c = gedata.ForbiddenStatus;//骞冲彴绂佺敤鏍囪瘑 //ct.IsFromPlatform__c = true; //鏉ヨ嚜鏅烘収鍖荤枟鍒涘缓 ct.Ignore_Same_Name__c = true; //涓嶆槸閲嶅鐨勫鎴峰悕 //ct.SendToComPlat__c = true; + ct.AWS_Data_Id__c =gedata.DataId;//add 20220215 aws瀛樺偍鍑瘉 + ct.MobilePhone_Encrypted__c =gedata.MobileEncrypted;//add 20220215 鎵嬫満瀵嗘枃 + ct.LastName_Encrypted__c =gedata.NameEncrypted;//add 20220215 濮撳悕瀵嗘枃 String personCode = gedata.PersonManagementCode; @@ -473,7 +499,7 @@ //2022/2/10 淇敼 鍦ㄦ柊寤鸿仈绯讳汉涔嬪悗鎵嬪姩鎵цNFM620RestBatch NFM623RestBatch // Database.executeBatch(new NFM620RestBatch(), 1); // Database.executeBatch(new NFM623RestBatch(), 1); - // supplement(gedata.ContactId); + supplement(gedata.ContactId); } } } @@ -518,11 +544,19 @@ if (string.isblank(gda.Name)) { result += 'DataError锛氬鍚嶄负绌篭n'; } + if (string.isblank(gda.NameEncrypted)) { + result += 'DataError锛氬鍚嶅瘑鏂囦负绌篭n'; + } if (string.isblank(gda.Mobile)) { result += 'DataError锛氭墜鏈哄彿涓虹┖\n'; } + if (string.isblank(gda.MobileEncrypted)) { + result += 'DataError锛氭墜鏈哄彿瀵嗘枃涓虹┖\n'; + } if (string.isblank(gda.RegSource)) { result += 'DataError锛氭敞鍐屽钩鍙版潵婧愪负绌篭n'; + }if (string.isblank(gda.DataId)) { + result += 'DataError锛欰WS鍔犲瘑鍑嵁涓虹┖\n'; } if (gda.AgentFlag) { if (string.isblank(gda.PersonManagementCode)) { @@ -612,6 +646,7 @@ //鎶�620Batch 鍜� 623Batch 鎼繃鏉� //琛ュ厖璇㈤棶鍗曢儴鍒� start //鏇存柊鐢� + List<CampaignMember__c> campaignMemberList = new List<CampaignMember__c>(); List<Inquiry_form__c> inquiryFormList = new List<Inquiry_form__c>(); //鏍规嵁缁熶竴鐢ㄦ埛Id鏌ヨ璇㈤棶鍗� List<Inquiry_form__c> InquiryList = [select Id,Inquiry_No__c,ContactId__c,Hospital_Name__c,Department_Class__c,Contact_Name__c from Inquiry_form__c where ContactId__c = :ContactId]; @@ -619,54 +654,63 @@ //鏍规嵁缁熶竴鐢ㄦ埛Id鏌ヨ鑱旂郴浜� List<Contact> contactList = [select Id,Name,UnifiedI_Contact_ID__c,Account.Id,Strategic_dept_Class__c,AccountId,Account.Name,Strategic_dept_Class__r.OwnerId from Contact where UnifiedI_Contact_ID__c = :ContactId]; system.debug('contactList' + contactList); - //缁熶竴鐢ㄦ埛ID瀛樺叆List銆佽闂崟ID瀛楳ap - Map<String, String> inquiryMap = new Map<String, String>(); - //List<String> contactIdList = new List<String>(); - for (Inquiry_form__c inquiryInfo : inquiryList) { - //contactIdList.add(inquiryInfo.ContactId__c); - inquiryMap.put(inquiryInfo.ContactId__c, inquiryInfo.Id); - } - if (contactList.size() >0 ) { - for (Contact contactInfo : contactList) { - Inquiry_form__c inquiry = new Inquiry_form__c(); - inquiry.Id = inquiryMap.get(contactInfo.UnifiedI_Contact_ID__c); //ID - inquiry.Hospital_Name__c = contactInfo.Account.Id; //绉戝鍚� - inquiry.Department_Class__c = contactInfo.Strategic_dept_Class__c; //鎴樼暐绉戝鍒嗙被 - inquiry.Contact_Name__c = contactInfo.Id; //瀹㈡埛濮撳悕 - inquiry.OwnerId = contactInfo.Strategic_dept_Class__r.OwnerId; //鎵�鏈変汉 - inquiryFormList.add(inquiry); + + if(InquiryList.size()>0){ + //缁熶竴鐢ㄦ埛ID瀛樺叆List銆佽闂崟ID瀛楳ap + Map<String, String> inquiryMap = new Map<String, String>(); + //List<String> contactIdList = new List<String>(); + for (Inquiry_form__c inquiryInfo : inquiryList) { + //contactIdList.add(inquiryInfo.ContactId__c); + inquiryMap.put(inquiryInfo.ContactId__c, inquiryInfo.Id); } - } - if(inquiryFormList.size()>0){ - update inquiryFormList; + if (contactList.size() >0 ) { + for (Contact contactInfo : contactList) { + Inquiry_form__c inquiry = new Inquiry_form__c(); + inquiry.Id = inquiryMap.get(contactInfo.UnifiedI_Contact_ID__c); //ID + inquiry.Hospital_Name__c = contactInfo.Account.Id; //绉戝鍚� + inquiry.Department_Class__c = contactInfo.Strategic_dept_Class__c; //鎴樼暐绉戝鍒嗙被 + inquiry.Contact_Name__c = contactInfo.Id; //瀹㈡埛濮撳悕 + inquiry.OwnerId = contactInfo.Strategic_dept_Class__r.OwnerId; //鎵�鏈変汉 + inquiryFormList.add(inquiry); + } + } + system.debug('inquiryFormList=========>'+inquiryFormList); + if(inquiryFormList.size()>0){ + update inquiryFormList; + } } //琛ュ厖璇㈤棶鍗曢儴鍒� end //琛ュ厖瀛︿細閮ㄥ垎 start - List<CampaignMember__c> campaignMemberList = new List<CampaignMember__c>(); + //List<CampaignMember__c> campaignMemberList = new List<CampaignMember__c>(); List<CampaignMember__c> capMemList = [select Id,Contact_ID__c,Campaign__c,Campaign__r.Num__c,ViewContactId__c from CampaignMember__c where Contact_ID__c = :ContactId]; - Map<String, String> capMemMap = new Map<String, String>(); - //缁熶竴鐢ㄦ埛ID瀛樺叆List,鍙備細浜哄憳璁板綍ID瀛樺叆MAP - //List<String> contactIdList = new List<String>(); - for (CampaignMember__c capMemInfo : capMemList) { - //contactIdList.add(capMemInfo.ViewContactId__c); - capMemMap.put(capMemInfo.ViewContactId__c,capMemInfo.Id); - } - //List<Contact> contactList = [select Id,Name,UnifiedI_Contact_ID__c,Account.Id,Strategic_dept_Class__c,AccountId,Account.Name,Strategic_dept_Class__r.OwnerId,Id from Contact where UnifiedI_Contact_ID__c = ContactId]; - if (contactList.size() > 0) { - for (Contact contactInfo : contactList) { - CampaignMember__c camMemberInfo = new CampaignMember__c(); - camMemberInfo.Id = capMemMap.get(contactInfo.UnifiedI_Contact_ID__c); - camMemberInfo.Contact_ID__c = contactInfo.ID; //鍙備細浜哄憳ID - camMemberInfo.Department_ID__c = contactInfo.AccountId; //鍖婚櫌绉戝 - camMemberInfo.Department__c = contactInfo.Account.Name; //鍖婚櫌绉戝锛堟枃鏈級 - camMemberInfo.Contact__c = contactInfo.Name; //瀹㈡埛浜哄憳濮撳悕 - campaignMemberList.add(camMemberInfo); + if(capMemList.size() > 0){ + system.debug('capMemList=================>'+capMemList); + Map<String, String> capMemMap = new Map<String, String>(); + //缁熶竴鐢ㄦ埛ID瀛樺叆List,鍙備細浜哄憳璁板綍ID瀛樺叆MAP + //List<String> contactIdList = new List<String>(); + for (CampaignMember__c capMemInfo : capMemList) { + //contactIdList.add(capMemInfo.ViewContactId__c); + capMemMap.put(capMemInfo.ViewContactId__c,capMemInfo.Id); } - - } - if (campaignMemberList.size() > 0) { - update campaignMemberList; + system.debug('capMemMap======>'+capMemMap); + //List<Contact> contactList = [select Id,Name,UnifiedI_Contact_ID__c,Account.Id,Strategic_dept_Class__c,AccountId,Account.Name,Strategic_dept_Class__r.OwnerId,Id from Contact where UnifiedI_Contact_ID__c = ContactId]; + if (contactList.size() > 0) { + for (Contact contactInfo : contactList) { + CampaignMember__c camMemberInfo = new CampaignMember__c(); + camMemberInfo.Id = capMemMap.get(contactInfo.UnifiedI_Contact_ID__c); + camMemberInfo.Contact_ID__c = contactInfo.Id; //鍙備細浜哄憳ID + camMemberInfo.Department_ID__c = contactInfo.AccountId; //鍖婚櫌绉戝 + camMemberInfo.Department__c = contactInfo.Account.Name; //鍖婚櫌绉戝锛堟枃鏈級 + camMemberInfo.Contact__c = contactInfo.Name; //瀹㈡埛浜哄憳濮撳悕 + campaignMemberList.add(camMemberInfo); + } + } + system.debug('campaignMemberList================>'+campaignMemberList); + if (campaignMemberList.size() > 0) { + System.debug('--------1-------'); + update campaignMemberList; + } } //琛ュ厖瀛︿細閮ㄥ垎 end } -- Gitblit v1.9.1