| | |
| | | // global class GeDatasRest { |
| | | // public GeDatas GeDatas; |
| | | // } |
| | | |
| | | |
| | | global class GeDatas { |
| | | public NFMUtil.Monitoring Monitoring; |
| | | public GeData[] GeData; |
| | |
| | | } |
| | | |
| | | global static void main(String rowData_Id) { |
| | | |
| | | // Map<String,String> RecordTypeMap = new Map<String,String>(); |
| | | // RecordTypeMap.put('','') |
| | | //List<RecordType> rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName IN ('Department_OTH','Department_GI', 'Department_BF','Department_GYN','Department_GS','Department_URO','Department_ENT','Department_Class_ET') order by DeveloperName desc]; |
| | |
| | | List < Contact > peopleList = [select Id, |
| | | Account.Name, |
| | | Department__c, |
| | | UnifiedI_Contact_ID__c, |
| | | Account.parent.Name, |
| | | Account.PlatformCode__c, |
| | | Account.Management_Code__c, |
| | |
| | | Account.Parent_Management_Code__c, |
| | | Account.Parent_PlatformCode__c, |
| | | CManageCode__c, |
| | | AccountId |
| | | AccountId, |
| | | // 通过姓名+手机号判断人员是否重复 thh 20220518 start |
| | | MobilePhone_Encrypted__c |
| | | // 通过姓名+手机号判断人员是否重复 thh 20220518 end |
| | | from Contact |
| | | where CManageCode__c IN: PersonManagementCodeList |
| | | OR (Account.Parent_PlatformCode__c IN: ManagementList AND LastName_Encrypted__c IN:NameList) |
| | |
| | | } |
| | | snameMap.put(namekey, ct); |
| | | snameMap.put(nameKey2,ct); |
| | | snameMap.put(ct.LastName_Encrypted__c.trim(), ct); |
| | | // 通过姓名+手机号判断人员是否重复 thh 20220518 start |
| | | snameMap.put(ct.LastName_Encrypted__c.trim() + ct.MobilePhone_Encrypted__c.trim(), ct); |
| | | // 通过姓名+手机号判断人员是否重复 thh 20220518 end |
| | | nameMap.put(ct.Account.parent.Name, snameMap); |
| | | system.debug('snameMap'+snameMap); |
| | | } |
| | |
| | | Map < String, Contact > sMap = nameMap.get(DepartmentClasskey); |
| | | System.debug('sMap'+sMap); |
| | | System.debug('sMap.containsKey(namekey)'+sMap.containsKey(namekey)); |
| | | if (sMap.containsKey(namekey)) { |
| | | System.debug('sMap.containsKey(gedata.NameEncrypted)'+sMap.containsKey(gedata.NameEncrypted)); |
| | | if (sMap.containsKey(namekey) && sMap.get(namekey).UnifiedI_Contact_ID__c == null) { |
| | | system.debug('Id赋值'+sMap); |
| | | ct.id = sMap.get(namekey).id; |
| | | } else if(sMap.containsKey(gedata.NameEncrypted)){ |
| | | ct.id = sMap.get(gedata.NameEncrypted).id; |
| | | // 通过姓名+手机号判断人员是否重复 thh 20220518 start |
| | | } else if(sMap.containsKey(gedata.NameEncrypted + gedata.MobileEncrypted) && sMap.get(gedata.NameEncrypted + gedata.MobileEncrypted).UnifiedI_Contact_ID__c == null){ |
| | | ct.id = sMap.get(gedata.NameEncrypted + gedata.MobileEncrypted).id; |
| | | // 通过姓名+手机号判断人员是否重复 thh 20220518 end |
| | | }else { // 7 完成 |
| | | system.debug('7逻辑 无人员管理编码 有医院 有科室 人名查找无 动作:新建联系人 '); |
| | | } |
| | |
| | | system.debug('战略科室存在' + nameMap.get(DepartmentClasskey)); |
| | | Map < String, Contact > sMap = nameMap.get(DepartmentClasskey); |
| | | system.debug('namekey'+namekey); |
| | | system.debug('sMap.containsKey(namekey)'+sMap.containsKey(namekey)); |
| | | if (sMap.containsKey(namekey)) { //查找存在 8 完成 |
| | | system.debug('sMap.containsKey(namekey)'+sMap.containsKey(namekey) ); |
| | | if (sMap.containsKey(namekey) && sMap.get(namekey).UnifiedI_Contact_ID__c == null) { //查找存在 8 完成 |
| | | system.debug('8逻辑'); |
| | | system.debug('该联系人存在'); |
| | | ct.id = sMap.get(namekey).id; |
| | |
| | | // if(sMap.containsKey(gedata.Name)){ |
| | | // ct.Id = sMap.get(gedata.Name).Id; |
| | | // } |
| | | }else if(sMap.containsKey(gedata.NameEncrypted)){ |
| | | // 通过姓名+手机号判断人员是否重复 thh 20220518 start |
| | | }else if(sMap.containsKey(gedata.NameEncrypted + gedata.MobileEncrypted) && sMap.get(gedata.NameEncrypted + gedata.MobileEncrypted).UnifiedI_Contact_ID__c == null){ |
| | | system.debug('1234567890'); |
| | | ct.Id = sMap.get(gedata.NameEncrypted).Id; |
| | | ct.Id = sMap.get(gedata.NameEncrypted + gedata.MobileEncrypted).Id; |
| | | //upsertAccountList.add(dpt); |
| | | upsertContactList.add(ct); |
| | | } |
| | | // 通过姓名+手机号判断人员是否重复 thh 20220518 end |
| | | system.debug('contactMap ' + contactMap); |
| | | System.debug('9逻辑'); |
| | | contactMap.put(Gedata.DepartmentManagementCode2, ct); |
| | |
| | | //List<String> contactIdList = new List<String>(); |
| | | for (Inquiry_form__c inquiryInfo : inquiryList) { |
| | | //contactIdList.add(inquiryInfo.ContactId__c); |
| | | inquiryMap.put(inquiryInfo.ContactId__c, inquiryInfo.Id); |
| | | // map的k-v改造 thh 20220517 start |
| | | inquiryMap.put(inquiryInfo.Id, inquiryInfo.ContactId__c); |
| | | // map的k-v改造 thh 20220517 end |
| | | } |
| | | if (contactList.size() >0 ) { |
| | | for (Contact contactInfo : contactList) { |
| | | // map的k-v改造 thh 20220517 start |
| | | if (contactList.size() >0 && inquiryMap.size() > 0) { |
| | | for(String Id : inquiryMap.keySet()){ |
| | | 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); |
| | | for (Contact contactInfo : contactList) { |
| | | if(inquiryMap.get(Id) == contactInfo.UnifiedI_Contact_ID__c){ |
| | | inquiry.Id = Id; //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); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | // map的k-v改造 thh 20220517 end |
| | | system.debug('inquiryFormList=========>'+inquiryFormList); |
| | | if(inquiryFormList.size()>0){ |
| | | update inquiryFormList; |