| | |
| | | public without sharing class InquiryFormHandler extends Oly_TriggerHandler { |
| | | private Map<Id, Inquiry_form__c> newMap; |
| | | private Map<Id, Inquiry_form__c> oldMap; |
| | | private List<Inquiry_form__c> newList; |
| | | private List<Inquiry_form__c> oldList; |
| | | private Map<Id, Inquiry_form__c> newMap; |
| | | private Map<Id, Inquiry_form__c> oldMap; |
| | | private List<Inquiry_form__c> newList; |
| | | private List<Inquiry_form__c> oldList; |
| | | |
| | | public InquiryFormHandler(){ |
| | | |
| | | this.newMap = (Map<Id, Inquiry_form__c>) Trigger.newMap; |
| | | this.newMap = (Map<Id, Inquiry_form__c>) Trigger.newMap; |
| | | this.oldMap = (Map<Id, Inquiry_form__c>) Trigger.oldMap; |
| | | this.newList = (List<Inquiry_form__c>) Trigger.new; |
| | | this.oldList = (List<Inquiry_form__c>) Trigger.old; |
| | |
| | | if (oldMap != null && oldMap.containsKey(nnObj.Id)) { |
| | | oObj = oldMap.get(nnObj.Id); |
| | | } |
| | | if (String.isNotBlank(nnObj.Hospital_Name__c) && (Trigger.isInsert || oObj.Hospital_Name__c != nnObj.Hospital_Name__c || System.Label.Inquiry_form_flag == 'True')) { |
| | | if (String.isNotBlank(nnObj.Hospital_Name__c) && (Trigger.isInsert || oObj.Hospital_Name__c != nnObj.Hospital_Name__c)) {// || System.Label.Inquiry_form_flag == 'True') |
| | | depIDList.add(nnObj.Hospital_Name__c); |
| | | } |
| | | if (Trigger.isUpdate && String.isBlank(nnObj.Hospital_Name__c)){ |
| | |
| | | nnObj.Department_Class__c = null; //战略科室 |
| | | nnObj.HospitalName__c = null; //医院名 |
| | | nnObj.Hospital__c = null; //医院 |
| | | nnObj.CreateDate__c = null; //创建日 |
| | | } |
| | | |
| | | } |
| | |
| | | |
| | | |
| | | |
| | | //产品信息的拼接 |
| | | //产品信息的拼接 |
| | | if (String.isNotBlank(nObj.Product1__c) && String.isNotBlank(nObj.Product1_Manual__c)){ |
| | | nObj.Product1__c = nObj.Product1__c +';'+nObj.Product1_Manual__c; |
| | | }else if (String.isBlank(nObj.Product1__c) && String.isNotBlank(nObj.Product1_Manual__c)){ |
| | |
| | | |
| | | nObj.Product1_Manual__c = ''; |
| | | //20220419 you SWAG-CBUB2W start |
| | | //公式考文本 给FSE担当赋值 |
| | | //公式考文本 给FSE担当赋值 这段必须放在这,因为新创建的数据,存在科室为空的情况, |
| | | System.debug(nObj.FSE_Owner_id__c+'==123=='+nObj.FSE_Owner__c); |
| | | if(nObj.FSE_Owner_id__c != nObj.FSE_Owner__c){ |
| | | nObj.FSE_Owner__c = nObj.FSE_Owner_id__c; |
| | | } |
| | | if(Trigger.isInsert && (nObj.Request1__c.indexOf('服务对应') !=-1 || nObj.ServiceCorrespond__c ==true)){ |
| | | nObj.Service_Status__c ='01.未跟进'; |
| | | if(Trigger.isInsert){ |
| | | if( nObj.Request1__c.indexOf('服务对应') !=-1 || nObj.ServiceCorrespond__c ==true){ |
| | | nObj.Service_Status__c ='01.未跟进'; |
| | | } |
| | | if(String.isBlank(nObj.Hospital_Name__c)){ |
| | | nObj.CreateDate__c = null; //创建日 |
| | | }else{ |
| | | nObj.CreateDate__c = Date.today(); |
| | | } |
| | | } |
| | | if(Trigger.isUpdate){ |
| | | |
| | |
| | | |
| | | } |
| | | }else if( nObj.Request1__c.indexOf('服务对应') ==-1 && nObj.ServiceCorrespond__c ==false){ |
| | | nObj.Service_Status__c =''; |
| | | nObj.Service_Status__c =''; |
| | | } |
| | | } |
| | | if(nObj.Hospital_Name__c != oldMap.get(nObj.Id).Hospital_Name__c && String.isBlank(oldMap.get(nObj.Id).Hospital_Name__c)){ |
| | | nObj.CreateDate__c = Date.today(); |
| | | } |
| | | //20220419 you SWAG-CBUB2W end |
| | | |
| | | //不需要日期,跟进日期,服务跟进日期,创建意向日期,比较最早日期 |
| | | String date1; |
| | | String date2; |
| | | String date3; |
| | | String date4; |
| | | if(null != nObj.No_Need_Date__c){ |
| | | date1=String.valueOf(nObj.No_Need_Date__c); |
| | | } |
| | | if(null != nObj.Follow_Date__c){ |
| | | date2=String.valueOf(nObj.Follow_Date__c); |
| | | } |
| | | if(null != nObj.Confirmation_Date__c){ |
| | | date3=String.valueOf(nObj.Confirmation_Date__c); |
| | | } |
| | | if(null != nObj.Service_Follow_Date__c){ |
| | | date4=String.valueOf(nObj.Service_Follow_Date__c); |
| | | } |
| | | |
| | | //方法调用 |
| | | Date date_MD; |
| | | if((String.isNotBlank(date1) && nObj.No_Need_Date__c !=oldMap.get(nObj.Id).No_Need_Date__c) || (String.isNotBlank(date2) && nObj.Follow_Date__c !=oldMap.get(nObj.Id).Follow_Date__c) || (String.isNotBlank(date3) && nObj.Confirmation_Date__c !=oldMap.get(nObj.Id).Confirmation_Date__c) || (String.isNotBlank(date4) && nObj.Service_Follow_Date__c !=oldMap.get(nObj.Id).Service_Follow_Date__c)){ |
| | | date_MD =getBigTime(date1,date2,date3,date4); |
| | | nObj.MinimumDate__c = date_MD;//最小日期 |
| | | String date5 = nObj.CreateDate__c==null?'':String.valueOf(nObj.CreateDate__c); |
| | | if(null != nObj.CreateDate__c){ |
| | | String confdate=calendarUtil.getWorkDayNum(date5,String.valueOf(date_MD)); |
| | | //nObj.addError(s+'=='+date5+'==='+String.valueOf(date_MD)+'=='+e+'=='+confdate); |
| | | nObj.Confirmation_days__c =Integer.valueOf(confdate); |
| | | if(Integer.valueOf(confdate) > 5){ |
| | | nObj.TimeoutDays__c = Integer.valueOf(confdate)-5; |
| | | }else{ |
| | | nObj.TimeoutDays__c = null; |
| | | } |
| | | system.debug('跑这了3'); |
| | | }else{ |
| | | nObj.Confirmation_days__c = null; |
| | | nObj.TimeoutDays__c = null; |
| | | system.debug('跑这了1'); |
| | | } |
| | | |
| | | } |
| | | //处理老数据 |
| | | if( System.Label.Inquiry_form_flag == 'True' && null != nObj.CreateDate__c){ |
| | | if(String.isNotBlank(date1) || String.isNotBlank(date2) || String.isNotBlank(date3) || String.isNotBlank(date4)){ |
| | | date_MD =getBigTime(date1,date2,date3,date4); |
| | | nObj.MinimumDate__c = date_MD;//最小日期 |
| | | String date5 = nObj.CreateDate__c==null?'':String.valueOf(nObj.CreateDate__c); |
| | | String confdate=calendarUtil.getWorkDayNum(date5,String.valueOf(date_MD)); |
| | | system.debug('跑这了2'+date5+'==='+String.valueOf(date_MD)+'=='+confdate); |
| | | nObj.Confirmation_days__c =Integer.valueOf(confdate); |
| | | if(Integer.valueOf(confdate) > 5){ |
| | | nObj.TimeoutDays__c = Integer.valueOf(confdate)-5; |
| | | }else{ |
| | | nObj.TimeoutDays__c = null; |
| | | } |
| | | } |
| | | } |
| | | system.debug('==='+date_MD); |
| | | } |
| | | |
| | | //20220419 you SWAG-CBUB2W end |
| | | |
| | | |
| | | } |
| | | } |
| | | //20220419 you SWAG-CBUB2W start |
| | |
| | | |
| | | } |
| | | //20220419 you SWAG-CBUB2W end |
| | | //多个日期比较最小日期 |
| | | public static Date getBigTime(String date1, String date2, String date3, String date4) { |
| | | system.debug(date1+'======'+date2+'====='+date3); |
| | | long millis1 =0; |
| | | Long millis2 =0; |
| | | Long millis3 =0; |
| | | Long millis4 =0; |
| | | List<Long> list_dateDecimal = new List<Long>(); |
| | | if(String.isNotBlank(date1)){ |
| | | millis1 = Datetime.valueOf(date1+' 08:00:05').getTime(); |
| | | list_dateDecimal.add(millis1); |
| | | } |
| | | if(String.isNotBlank(date2)){ |
| | | millis2 = Datetime.valueOf(date2+' 08:00:05').getTime(); |
| | | list_dateDecimal.add(millis2); |
| | | } |
| | | if(String.isNotBlank(date3)){ |
| | | millis3 = Datetime.valueOf(date3+' 08:00:05').getTime(); |
| | | list_dateDecimal.add(millis3); |
| | | } |
| | | if(String.isNotBlank(date4)){ |
| | | millis4 = Datetime.valueOf(date4+' 08:00:05').getTime(); |
| | | list_dateDecimal.add(millis4); |
| | | } |
| | | |
| | | list_dateDecimal.sort(); |
| | | Date date_Mid; |
| | | if(null !=list_dateDecimal && list_dateDecimal.size()>0){ |
| | | Long aaa=list_dateDecimal[0]; |
| | | DateTime dt =DateTime.newInstance(aaa); |
| | | date_Mid = dt.dateGmt(); |
| | | // DateTime.newInstance |
| | | system.debug('最小的==='+date_Mid+list_dateDecimal); |
| | | } |
| | | |
| | | return date_Mid; |
| | | |
| | | } |
| | | //俩个日期之间的工作日 |
| | | public integer diff(Datetime sdate, Datetime edate){ |
| | | integer count=0; |
| | | Date d1 = Date.valueOf(sdate); |
| | | Date d2 = Date.valueOf(edate); |
| | | integer wDay = d1.daysBetween(d2) ; |
| | | |
| | | do{ |
| | | if(sdate.format('EEEE') == 'Saturday') { |
| | | count++; |
| | | } |
| | | if(sdate.format('EEEE') == 'Sunday') { |
| | | count++; |
| | | } |
| | | sdate= sdate.adddays(1); |
| | | }while(sdate<=edate); |
| | | |
| | | wDay = wDay-count+1; |
| | | system.debug('*************'+wDay); |
| | | return wDay; |
| | | } |
| | | //客户人员录入后,【电话】【邮箱】自动录入 thh 20220321 start |
| | | // private void getContactInformation(){ |
| | | // List<String> ContactIdList = new List<String>(); |
| | |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++; |
| | | i++;//可以多写点 |
| | | } |
| | | } |