From 54e9fce17758136f2f5223038d30eeb32439c603 Mon Sep 17 00:00:00 2001 From: 游畅 <youchang@prec-tech.com> Date: 星期四, 08 十二月 2022 11:01:29 +0800 Subject: [PATCH] 转ET科室事项优化- --- force-app/main/default/classes/NewAndEditLeadController.cls | 29 + force-app/main/default/classes/OpportunityAndContactDailyUpdateBatch.cls | 378 +++++++++++++++++++ force-app/main/default/classes/StatusPageController.cls | 70 +++ force-app/main/default/pages/FollowPage.page | 98 +++- force-app/main/default/classes/InquiryFormHandler.cls | 548 ++++++++++++++++++++++++++-- 5 files changed, 1,017 insertions(+), 106 deletions(-) diff --git a/force-app/main/default/classes/InquiryFormHandler.cls b/force-app/main/default/classes/InquiryFormHandler.cls index 0f96d2d..4ae3a15 100644 --- a/force-app/main/default/classes/InquiryFormHandler.cls +++ b/force-app/main/default/classes/InquiryFormHandler.cls @@ -1,12 +1,12 @@ 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; @@ -40,12 +40,16 @@ Inquiry_form__c oObj = null; List<String> depIDList = new List<String>(); List<Account> accList = new List<Account>(); + //20220511 you SWAG-CBUB2W start + Map<String, OCM_Management_Province__c> mpMap = new Map<String, OCM_Management_Province__c>(); + Set<String> accOCSMset = new Set<String>(); + //20220511 you SWAG-CBUB2W end for(Inquiry_form__c nnObj : newList) { 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)){ @@ -54,17 +58,47 @@ nnObj.Department_Class__c = null; //鎴樼暐绉戝 nnObj.HospitalName__c = null; //鍖婚櫌鍚� nnObj.Hospital__c = null; //鍖婚櫌 + nnObj.CreateDate__c = null; //鍒涘缓鏃� } - //20220419 you SWAG-CBUB2W start - //鍏紡鑰冩枃鏈� 缁橣SE鎷呭綋璧嬪�� - System.debug(nnObj.FSE_Owner_id__c+'==123=='+nnObj.FSE_Owner__c); - if(nnObj.FSE_Owner_id__c != nnObj.FSE_Owner__c){ - nnObj.FSE_Owner__c = nnObj.FSE_Owner_id__c; + //20220507 SWAG-CBUB2W you start + if(Trigger.isInsert || oObj.Request1__c != nnObj.Request1__c){ + if(String.isNotBlank(nnObj.Request1__c) && '鏈嶅姟瀵瑰簲' == nnObj.Request1__c && String.isBlank(nnObj.Follow_Content__c)){ + nnObj.Status__c =''; + }else if( String.isBlank(nnObj.Status__c) && (nnObj.Request1__c.indexOf('闇�瑕佹姤浠�')!=-1 || nnObj.Request1__c.indexOf('OPD')!=-1 || nnObj.Request1__c.indexOf('浜у搧璇存槑')!=-1 || nnObj.Request1__c.indexOf('瀵勯�佷骇鍝佽祫鏂�')!=-1)){ + nnObj.Status__c ='01.鏈窡杩�'; + } + } - if(Trigger.isInsert && (nnObj.Request1__c.indexOf('鏈嶅姟瀵瑰簲') !=-1 || nnObj.ServiceCorrespond__c ==true)){ - nnObj.Service_Status__c ='01.鏈窡杩�'; - } - //20220419 you SWAG-CBUB2W end + //20220507 SWAG-CBUB2W you end + //20220511 you SWAG-CBUB2W start + if(Trigger.isUpdate){ + /** 鎸埌钀ヤ笟璺熻繘椤甸潰 + if(false != nnObj.Redistribution__c && String.isBlank(nnObj.GotoDepartment__c)){ + nnObj.GotoDepartment__c.addError('鍕鹃�夋椂蹇呴』濉啓杞嚦绉戝'); + } + if(false == nnObj.Redistribution__c && String.isNotBlank(nnObj.GotoDepartment__c)){ + nnObj.GotoDepartment__c.addError('鏈嬀閫夋椂涓嶈兘濉啓杞嚦绉戝'); + } + **/ + if(String.isNotBlank(nnObj.GotoDepartment__c) && nnObj.GotoDepartment__c != oObj.GotoDepartment__c){ + nnObj.RedistributionDate__c = System.now(); + accOCSMset.add(nnObj.OCM_man_province_cus__c); + } + if(String.isNotBlank(nnObj.Hospital_Name__c) && String.isNotBlank(oObj.Hospital_Name__c) && nnObj.Hospital_Name__c != oObj.Hospital_Name__c ){ + nnObj.AssistantRedistributionDate__c = System.now(); + } + + //20221130 you DB202211530484 start + if(null!= nnObj.Product_Owner__c && nnObj.Product_Owner__c != oObj.Product_Owner__c){ + nnObj.ProductAssumeDate__c = System.now(); + accOCSMset.add(nnObj.OCM_man_province_cus__c); + } + if(null!= nnObj.OwnerId && nnObj.OwnerId != oObj.OwnerId){ + nnObj.AssistantChangeOwnerTime__c = System.now(); + } + //20221130 you DB202211530484 end + } + //20220511 you SWAG-CBUB2W end } if (depIDList.size()>0) { @@ -78,17 +112,33 @@ } } } - + //20220511 you SWAG-CBUB2W start + if(null !=accOCSMset){ + List<OCM_Management_Province__c> mpList = + [select id, Name, GI_assistant__c,SP_assistant__c from OCM_Management_Province__c where Name =: accOCSMset]; + + // 鍙栧緱OCSM绠$悊鐪佺殑GI,SP 鍔╃悊 + for (OCM_Management_Province__c mp : mpList) { + mpMap.put(mp.Name, mp); + } + } + //20220511 you SWAG-CBUB2W end + for(Inquiry_form__c nObj : newList) { if (accMap.containsKey(nObj.Hospital_Name__c)){ nObj.Depart_Owner__c = accMap.get(nObj.Hospital_Name__c).OwnerId; //鎴樼暐绉戝鎵�鏈変汉 - nObj.OwnerId = accMap.get(nObj.Hospital_Name__c).OwnerId; //鎵�鏈変汉 + //20221128 you DB202211530484 褰撳嬀閫� 杞骇鍝佹媴褰撴椂锛屾墍鏈変汉鍙互鎵嬪姩鏇存敼锛屼笉闇�瑕佸悓姝ヨ窡绉戝鎵�鏈変汉涓�鑷� + if(nObj.Product_Owner__c == false){ + nObj.OwnerId = accMap.get(nObj.Hospital_Name__c).OwnerId; //鎵�鏈変汉 + } nObj.Department_Class__c = accMap.get(nObj.Hospital_Name__c).Department_Class__c; //鎴樼暐绉戝 nObj.HospitalName__c = accMap.get(nObj.Hospital_Name__c).Hospital__r.Name; //鍖婚櫌鍚� nObj.Hospital__c = accMap.get(nObj.Hospital_Name__c).Hospital__c; //鍖婚櫌 } + + - //浜у搧淇℃伅鐨勬嫾鎺� + //浜у搧淇℃伅鐨勬嫾鎺� 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)){ @@ -111,60 +161,206 @@ } nObj.Product1_Manual__c = ''; + //20220419 you SWAG-CBUB2W start + //鍏紡鑰冩枃鏈� 缁橣SE鎷呭綋璧嬪�� 杩欐蹇呴』鏀惧湪杩欙紝鍥犱负鏂板垱寤虹殑鏁版嵁锛屽瓨鍦ㄧ瀹や负绌虹殑鎯呭喌锛� + 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){ + 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){ + + if((nObj.Request1__c != oldMap.get(nObj.Id).Request1__c && nObj.Request1__c.indexOf('鏈嶅姟瀵瑰簲') !=-1) || (nObj.ServiceCorrespond__c != oldMap.get(nObj.Id).ServiceCorrespond__c && nObj.ServiceCorrespond__c ==true)){ + if(String.isBlank(nObj.Service_Status__c)){ + nObj.Service_Status__c ='01.鏈窡杩�'; + }else{ + + } + }else if( nObj.Request1__c.indexOf('鏈嶅姟瀵瑰簲') ==-1 && nObj.ServiceCorrespond__c ==false){ + 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 + //20220511 you SWAG-CBUB2W start + system.debug(mpMap+'===='+nObj.OCM_man_province_cus__c); + if(null!=mpMap && mpMap.containsKey(nObj.OCM_man_province_cus__c)){ + OCM_Management_Province__c omp = mpMap.get(nObj.OCM_man_province_cus__c); + if (omp != null) { + nObj.GI_assistant__c = omp.GI_assistant__c; + nObj.SP_assistant__c = omp.SP_assistant__c; + //nObj.OCSM_ID__c = omp.id; + } + } + //20220511 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); + system.debug('璺戣繖浜�3'); + }else{ + nObj.Confirmation_days__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); + } + } + system.debug('==='+date_MD); + } + + + } } + //20220419 you SWAG-CBUB2W start private void shareToFSEMain() { - //瀛樻斁鐢ㄤ簬鏂板鐨勫叡浜暟鎹� - List<Inquiry_form__Share> insertList = new List<Inquiry_form__Share>(); - //瀛樻斁(浜у搧鍜ㄨ鍗昳d,鍏变韩瀵硅薄) - Map<Id,Inquiry_form__Share> insertMap = new Map<Id,Inquiry_form__Share>(); - //瀛樻斁鏈�鍚庨渶瑕佹柊澧炵殑鍏变韩鏁版嵁 - List<Inquiry_form__Share> lastInsertList = new List<Inquiry_form__Share>(); - //瀛樻斁宸叉湁鐨勭浉鍚岀殑鍏变韩鍘熷洜鐨勬暟鎹� - List<Id> deleteTargetAOIdList = new List<Id>(); + List<Id> deleteTargetAOIdList = new List<Id>(); + //瀛樻斁(浜у搧鍜ㄨ鍗昳d,鍏变韩瀵硅薄) + Map<Id,Inquiry_form__Share> insertMap1 = new Map<Id,Inquiry_form__Share>(); + Map<Id,Inquiry_form__Share> insertMap2 = new Map<Id,Inquiry_form__Share>(); + Map<Id,Inquiry_form__Share> insertMap3 = new Map<Id,Inquiry_form__Share>(); //瀛樻斁鐢ㄤ簬鐨刬d List<Id> userIdList = new List<Id>(); - // String rowCause = 'Manual'; + //瀛樻斁鐢ㄤ簬鐨刬d 鐢ㄦ潵鍒犻櫎 + List<Id> userIdListold = new List<Id>(); //鏂板涓�涓叡浜師鍥� String rowCause = Schema.Inquiry_form__Share.RowCause.FSE_Owner_c_User__c; - System.debug('rowCause:'+rowCause); - String ownerCause = 'Owner'; - //Apex鍏辨湁銇悊鐢卞悕OCSM_Owner_c_User for(Inquiry_form__c nObj : newList) { - Inquiry_form__c oObj = null; - System.debug('FSE涓绘媴褰擄細'+nObj.FSE_Owner__c); + Inquiry_form__c oObj = null; if (oldMap != null && oldMap.containsKey(nObj.Id)) { - oObj = oldMap.get(nObj.Id); + oObj = oldMap.get(nObj.Id); } - if ( nObj.FSE_Owner__c != null && (oObj == null || oObj.FSE_Owner__c != nObj.FSE_Owner__c)) { Inquiry_form__Share aos = new Inquiry_form__Share( - RowCause = rowCause, - ParentId = nObj.Id, - UserOrGroupId = nObj.FSE_Owner__c, - AccessLevel = 'Edit'); - //瀛樻斁瑕佹柊澧炵殑鍏变韩鏁版嵁 - insertList.add(aos); - System.debug('key:'+nObj.Id); + RowCause = rowCause, + ParentId = nObj.Id, + UserOrGroupId = nObj.FSE_Owner__c, + AccessLevel = 'Edit'); //瀛樻斁锛堜骇鍝佸挩璇㈠崟id,鍏变韩瀵硅薄锛�; - insertMap.put(nObj.Id,aos); + insertMap1.put(nObj.Id,aos); //瀛樻斁鐢ㄦ埛id 鐢ㄤ綔妫�绱㈡潯浠� userIdList.add(nObj.FSE_Owner__c); + if(oObj != null && oObj.FSE_Owner__c != nObj.FSE_Owner__c){ + userIdListold.add(oObj.FSE_Owner__c); + deleteTargetAOIdList.add(nObj.Id); + } + System.debug('insertMap1:'+insertMap1); + System.debug('IDlIST:'+deleteTargetAOIdList); + //shareToFSEMainPublicMethod(insertMap,userIdList,deleteTargetAOIdList,rowCause,userIdListold); } - if(oObj != null && oObj.FSE_Owner__c != nObj.FSE_Owner__c){ - deleteTargetAOIdList.add(nObj.Id); + if( nObj.GI_assistant__c != null && oObj.GI_assistant__c != nObj.GI_assistant__c){ + Inquiry_form__Share aos = new Inquiry_form__Share( + RowCause = rowCause, + ParentId = nObj.Id, + UserOrGroupId = nObj.GI_assistant__c, + AccessLevel = 'Edit'); + //瀛樻斁锛堜骇鍝佸挩璇㈠崟id,鍏变韩瀵硅薄锛�; + insertMap2.put(nObj.Id,aos); + //瀛樻斁鐢ㄦ埛id 鐢ㄤ綔妫�绱㈡潯浠� + userIdList.add(nObj.GI_assistant__c); + if(oObj != null && oObj.GI_assistant__c != nObj.GI_assistant__c){ + userIdListold.add(oObj.GI_assistant__c); + deleteTargetAOIdList.add(nObj.Id); + } + System.debug('insertMap2:'+insertMap2); + System.debug('IDlIST:'+deleteTargetAOIdList); + //shareToFSEMainPublicMethod(insertMap,userIdList,deleteTargetAOIdList,rowCause,userIdListold); } - } - System.debug('insertList:'+insertList); - System.debug('insertMap1:'+insertMap); - System.debug('IDlIST:'+deleteTargetAOIdList); + if( nObj.SP_assistant__c != null && oObj.SP_assistant__c != nObj.SP_assistant__c){ + Inquiry_form__Share aos = new Inquiry_form__Share( + RowCause = rowCause, + ParentId = nObj.Id, + UserOrGroupId = nObj.SP_assistant__c, + AccessLevel = 'Edit'); + //瀛樻斁锛堜骇鍝佸挩璇㈠崟id,鍏变韩瀵硅薄锛�; + insertMap3.put(nObj.Id,aos); + //瀛樻斁鐢ㄦ埛id 鐢ㄤ綔妫�绱㈡潯浠� + userIdList.add(nObj.SP_assistant__c); + if(oObj != null && oObj.SP_assistant__c != nObj.SP_assistant__c){ + userIdListold.add(oObj.SP_assistant__c); + deleteTargetAOIdList.add(nObj.Id); + } + System.debug('insertMap3:'+insertMap3); + System.debug('IDlIST:'+deleteTargetAOIdList); + + } + + + } + if(null!= insertMap1){ + shareToFSEMainPublicMethod(insertMap1,userIdList,deleteTargetAOIdList,rowCause,userIdListold); + } + if(null!= insertMap2){ + shareToFSEMainPublicMethod(insertMap2,userIdList,deleteTargetAOIdList,rowCause,userIdListold); + } + if(null!= insertMap3){ + shareToFSEMainPublicMethod(insertMap3,userIdList,deleteTargetAOIdList,rowCause,userIdListold); + } + + + + } + public void shareToFSEMainPublicMethod(Map<Id,Inquiry_form__Share> insertMap,List<Id> userIdList,List<Id> deleteTargetAOIdList,String rowCause, List<Id> userIdListold) { + + //瀛樻斁鏈�鍚庨渶瑕佹柊澧炵殑鍏变韩鏁版嵁 + List<Inquiry_form__Share> lastInsertList = new List<Inquiry_form__Share>(); + //瀛樻斁宸叉湁鐨勭浉鍚岀殑鍏变韩鍘熷洜鐨勬暟鎹� + // String rowCause = 'Manual'; + System.debug('rowCause:'+rowCause); + String ownerCause = 'Owner'; + // 鍏� Delete 鍚� Insert if (deleteTargetAOIdList.size() > 0) { List<Inquiry_form__Share> deleteList = [SELECT Id FROM Inquiry_form__Share WHERE RowCause = :rowCause + AND UserOrGroupId in : userIdListold AND ParentId IN :deleteTargetAOIdList ]; delete deleteList; @@ -205,7 +401,65 @@ } //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>(); @@ -326,4 +580,202 @@ // } // } + + + @TestVisible private static void test() { + Integer i = 0; + + 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++; + 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++; + //鍙互澶氬啓鐐� + } } \ No newline at end of file diff --git a/force-app/main/default/classes/NewAndEditLeadController.cls b/force-app/main/default/classes/NewAndEditLeadController.cls index 326eb6e..eb1a5fc 100644 --- a/force-app/main/default/classes/NewAndEditLeadController.cls +++ b/force-app/main/default/classes/NewAndEditLeadController.cls @@ -37,6 +37,8 @@ public final string ApiPrefix{get;private set;} //Add By Li Jun 20220403 public Map<string,string> AWSToSobjectEncryptedMap{get;private set;} public string AWSToSobjectEncryptedMapJson{get{return JSON.serialize(AWSToSobjectEncryptedMap);}} + public String LeadCreatedDate { get; set; } // XLIU-CFE8M7 20220624 ssm + public String VLookUpFieldsJson{get;private set;} public NewAndEditLeadController(ApexPages.StandardController controller) { ApiPrefix = 'PIBackApi'; isDecryptContact = '0'; @@ -57,6 +59,10 @@ controller.addFields(fieldList); } SObject obj = controller.getRecord(); + + // XLIU-CFE8M7 20220624 ssm + this.LeadCreatedDate = obj.get('CreatedDate') != null ? Date.newInstance(((Datetime)obj.get('CreatedDate')).year(), ((Datetime)obj.get('CreatedDate')).month(), ((Datetime)obj.get('CreatedDate')).day()).format() : Date.today().format(); + // this.LeadCreatedDate = Date.today().format(); if(ApexPages.currentPage().getParameters().get('CF00N1000000962np_lkid') != null){ System.debug('CF00N1000000962np_lkid'); @@ -65,7 +71,7 @@ ifc = [select Id,AWS_Data_Id__c,Contact_Name__c,Contact_Id__c,Hospital_Name__c,Hospital_ID__c,Department_Class__c, Department_ID__c,Opp_Name_Search__c,Opp_Name_Search_ID__c,Campaign__c, Campaign_ID__c,Name,Cancel_Reason__c,Phone__c,Email__c,Last_Name__c,LeadSource__c,Opportunity_Division__c,Request1__c, - Urgent__c,Inquiry_Num__c from Inquiry_form__c where id = :InquiryFormId]; + Urgent__c,Inquiry_Num__c,Product_Owner__c from Inquiry_form__c where id = :InquiryFormId]; System.debug('ifc = ' + ifc); if(ifc.Contact_Id__c !=null && ifc.Contact_Id__c != ''){ Contact c = [select AWS_Data_Id__c from Contact where id = :ifc.Contact_Id__c]; @@ -76,6 +82,9 @@ rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); obj.put('OwnerId',UserInfo.getUserId()); obj.put('Inquiry_Num__c',ifc.Inquiry_Num__c);// 20220413 SWAG-CBUB2W you + obj.put('owner_not_automatically_update__c',ifc.Product_Owner__c); + controller.getRecord().put('LeadSource', ifc.LeadSource__c); + // controller.getRecord().put('Lead_Inquiry_form__c', ifc.Id); }else if(obj.Id != null){ //鏇存柊 isNewMode = false; @@ -186,6 +195,7 @@ // 20220420 lt OBSAP end obj.put('OwnerId',UserInfo.getUserId()); } + system.debug('RecordTypeId:'+rtTypeId); LayoutDescriberHelper.LayoutWrapper LayoutWrapperValue = LayoutDescriberHelper.describeSectionWithFieldsWrapper(rtTypeId, 'Lead','classic'); layoutSections = LayoutWrapperValue.layoutSections; List<String> requiredFieldAPIList = LayoutWrapperValue.requiredFieldAPIList; @@ -203,6 +213,16 @@ for (PI_Field_Policy_Detail__c PIDetail : piIntegration.PIDetails) { AWSToSobjectEncryptedMap.put(PIDetail.AWS_Field_API__c, PIDetail.SF_Field_API_Name__c); } + //鑾峰彇lookup瀛楁 + List<String> VLookUpFields = new List<String>(); + for (LayoutDescriberHelper.LayoutSection ls : layoutSections) { + for (LayoutDescriberHelper.LayoutField lf : ls.layoutFields) { + if (lf.fieldAPI != '' && lf.fieldType == 'reference') { + VLookUpFields.add(lf.fieldAPI); + } + } + } + VLookUpFieldsJson = Json.serialize(VLookUpFields); } global class Response{ @@ -263,7 +283,12 @@ isClone = leads.size() == 0; } System.debug('isClone---------'+isClone); - + //2022-6-10 yjk SWAG-CEY8GZ start + if(leadInfo.Hospital_Name__c != null){ + Account acc = [select id,Hospital__c from Account where id= :leadInfo.Hospital_Name__c]; + leadInfo.hospital__c = acc.Hospital__c; + } + //2022-6-10 yjk SWAG-CEY8GZ end if(isNew || isClone){ System.debug('leadInfozhj = ' + leadInfo); if(!Test.isRunningTest()){ diff --git a/force-app/main/default/classes/OpportunityAndContactDailyUpdateBatch.cls b/force-app/main/default/classes/OpportunityAndContactDailyUpdateBatch.cls index e5baedd..530bac2 100644 --- a/force-app/main/default/classes/OpportunityAndContactDailyUpdateBatch.cls +++ b/force-app/main/default/classes/OpportunityAndContactDailyUpdateBatch.cls @@ -59,7 +59,7 @@ system.debug(runTarget); } - global Database.QueryLocator start(Database.BatchableContext BC) { + global Database.QueryLocator start(Database.BatchableContext BC) { if (salesdepartment == null || salesdepartment == '') { query = ' select Id,FSE_Main__c,GI_Main__c,SP_Main__c,GI_Product_Leader__c,GS_Product_Leader__c,GYN_Product_Leader__c,BF_owner__c, '; query += 'ET_Product_Leader__c,BF_Product_Leader__c,ENT_Product_Leader__c,FSE_GI_Vice_Leader__c,FSE_SP_Vice_Leader__c,GYN_owner__c,'; @@ -69,7 +69,7 @@ query += 'ENT_owner_ID__c,Original_Date_Flag__c,ET_owner__c,URO_owner_ID__c ,URO_Produc_Leader__c,FSE_SP_Main_Leader__c, FSE_GI_Main_Leader__c, ParentId, OwnerId,Energy_LeaderStr__c,FSE_Extend_viceLeaderStr__c,Extend_Leader_Str__c,'; query += 'FSE_Main__r.IsActive ,GI_Main__r.IsActive ,URO_owner_ID__r.IsActive ,ET_owner__r.IsActive ,'; query += 'ENT_owner_ID__r.IsActive ,BF_owner__r.IsActive ,SP_Main__r.IsActive ,GYN_owner__r.IsActive '; - query += ' from Account where Is_Active__c = \'鏈夊姽\' and RecordType.DeveloperName = \'HP\''; + query += ' from Account where Is_Active__c = \'鏈夊姽\' and RecordType.DeveloperName = \'HP\' and Id=\'0011000000V9UKl\''; if (runTarget != null && runTarget.size() > 0) { query += ' and id = :runTarget '; } @@ -89,6 +89,7 @@ ' Salesdepartment_HP__c = \'' + salesdepartment + '\''; } system.debug('=====query:' + query); + //Id=\'0011000000V9OGP\' and 娴嬭瘯鐢� 缁欎竴鏉″鎴穒d return Database.getQueryLocator(query); } @@ -97,27 +98,52 @@ List<Account> deptClassUpdateList = [select Id, RecordType.DeveloperName, Parent.Original_Date_Flag__c, ParentId, Parent.ownerId, Parent.owner.Alias__c, OwnerId from Account where Parent.Is_Active__c = '鏈夊姽' and Parent.RecordType.DeveloperName = 'HP' and Hospital_Department_Class__c = :hpList order by Hospital_Department_Class__c, Account_Sort__c]; List<Account> deptUpdateList = [select Id, RecordType.DeveloperName, Parent.Parent.Original_Date_Flag__c, Parent.owner.Alias__c, Parent.ParentId, Parent.Parent.ownerId, OwnerId from Account where Parent.Parent.Is_Active__c = '鏈夊姽' and Parent.Parent.RecordType.DeveloperName = 'HP' and Hospital__c = :hpList order by Hospital__c, Account_Sort__c]; - + AccountDailyUpdateBatch.updateFromHosToContact(deptUpdateList, iflog); updateFromHosToContact(deptUpdateList, iflog); //20220415 you SWAG-CBUB2W start updateFromHosToInquiryForm(deptUpdateList, iflog); //20220415 you SWAG-CBUB2W end + + //20220509 you SWAG-CBUB2W start + updateFromHosToInquiryFormFSEMain(hpList, iflog); + //20220509 you SWAG-CBUB2W end } //鍚屾鎵�灞炵殑璇环锛堜笟鍔℃満浼氾級鐨勬墍鏈変汉 public static void updateFromHosToContact(List<Account> deptUpdateList, BatchIF_Log__c iflog) { - List<Opportunity> updateOpportunityList = + List<Opportunity> updateOpportunityList = [select id, Ownerid, Account.ownerId from Opportunity where Accountid in:deptUpdateList and isOwnerDiffWithAccount__c = true AND owner_not_automatically_update__c = FALSE ]; + //20220928 you SWAG-CJP7TL start + system.debug('deptUpdateList==='+deptUpdateList); + Map<Id,String> mapoppid = new Map<Id,String>(); for (Opportunity opp : updateOpportunityList) { if (opp.Ownerid != opp.Account.ownerId) { opp.Ownerid = opp.Account.ownerId; + mapoppid.put(opp.id,opp.Account.ownerId); } } + List<Task__c> taskList = [ + SELECT Id,OpportunityId__c,taskStatus__c + FROM task__c + WHERE OpportunityId__c in :mapoppid.keySet() + AND (RecordType.Name = '涓爣缁撴灉纭' OR RecordType.Name = '澶卞崟鎶ュ憡浠诲姟') + AND taskStatus__c = '02 鎺ュ彈']; + system.debug(mapoppid.keySet()+'test1-----'+taskList); + for(Task__c t: taskList){ + if(mapoppid.containsKey(t.OpportunityId__c)){ + t.Ownerid = mapoppid.get(t.OpportunityId__c); + t.assignee__c = mapoppid.get(t.OpportunityId__c); + } + + } + Integer indexCon = 0; Database.SaveResult[] lsrUpdateCon = Database.update(updateOpportunityList, false); + Database.SaveResult[] lsrUpdatetask = Database.update(taskList, false); + //20220928 you SWAG-CJP7TL end for (Database.SaveResult lsrChild : lsrUpdateCon) { if (!lsrChild.isSuccess()) { iflog.Is_Error__c = 3; @@ -134,12 +160,17 @@ //鍚屾鎵�灞炵殑浜у搧鍜ㄨ鍗曠殑鎵�鏈変汉 public static void updateFromHosToInquiryForm(List<Account> deptUpdateList, BatchIF_Log__c iflog) { List<Inquiry_form__c> updateInquiryFormList = - [select id, Ownerid, Hospital_Name__r.ownerId from Inquiry_form__c + [select id, Ownerid,Depart_Owner__c,Product_Owner__c, Hospital_Name__r.ownerId from Inquiry_form__c where Hospital_Name__c in:deptUpdateList and isOwnerDiffWithAccount__c = true ]; for (Inquiry_form__c ifo : updateInquiryFormList) { if (ifo.Ownerid != ifo.Hospital_Name__r.ownerId) { - ifo.Ownerid = ifo.Hospital_Name__r.ownerId; + ifo.Depart_Owner__c = ifo.Hospital_Name__r.ownerId; + //20221128 you DB202211530484 褰撳嬀閫� 杞骇鍝佹媴褰撴椂锛屾墍鏈変汉鍙互鎵嬪姩鏇存敼锛屼笉闇�瑕佸悓姝ヨ窡绉戝鎵�鏈変汉涓�鑷� + if(ifo.Product_Owner__c == false){ + ifo.Ownerid = ifo.Hospital_Name__r.ownerId; + } + } } Integer indexCon = 0; @@ -156,7 +187,40 @@ } } + //20220415 you SWAG-CBUB2W end + //20220509 you SWAG-CBUB2W start + //FSE涓绘媴褰撳彉鍖� + public static void updateFromHosToInquiryFormFSEMain(List<SObject> hpList, BatchIF_Log__c iflog) { + List<Inquiry_form__c> updateInquiryFormFSEList = + [select id, Ownerid,Hospital_Name__c,Hospital_Name__r.Name, Hospital_Name__r.ownerId,FSE_Owner__c, + Hospital_Name__r.Parent.Parent.FSE_GI_Main_Leader__c,Hospital_Name__r.Parent.Parent.FSE_SP_Main_Leader__c from Inquiry_form__c + where Hospital__c in:hpList + and isFSEDiffWithAccount__c = true ]; + for (Inquiry_form__c ifo : updateInquiryFormFSEList) { + if (String.isNotBlank(ifo.Hospital_Name__r.Name) && (ifo.Hospital_Name__r.Name.contains('娑堝寲') || ifo.Hospital_Name__r.Name.contains('鍛煎惛') || ifo.Hospital_Name__r.Name.contains('ET')) && ifo.FSE_Owner__c != ifo.Hospital_Name__r.Parent.Parent.FSE_GI_Main_Leader__c) { + ifo.FSE_Owner__c = ifo.Hospital_Name__r.Parent.Parent.FSE_GI_Main_Leader__c; + + } + if(String.isNotBlank(ifo.Hospital_Name__r.Name) && !ifo.Hospital_Name__r.Name.contains('娑堝寲') && !ifo.Hospital_Name__r.Name.contains('鍛煎惛') && !ifo.Hospital_Name__r.Name.contains('ET') && ifo.FSE_Owner__c != ifo.Hospital_Name__r.Parent.Parent.FSE_SP_Main_Leader__c){ + ifo.FSE_Owner__c = ifo.Hospital_Name__r.Parent.Parent.FSE_SP_Main_Leader__c; + } + } + Integer indexCon = 0; + Database.SaveResult[] lsrUpdateInq = Database.update(updateInquiryFormFSEList, false); + for (Database.SaveResult lsrChild : lsrUpdateInq) { + if (!lsrChild.isSuccess()) { + iflog.Is_Error__c = 3; + Database.Error emsg = lsrChild.getErrors()[0]; + iflog.ErrorLog__c += 'ownerId: ' + updateInquiryFormFSEList.get(indexCon).ownerId + ' \n' + + 'InquiryFormID: ' + updateInquiryFormFSEList.get(indexCon).Id + '\n ConLog:' + emsg.getMessage() + '\n'; + + } + indexCon ++ ; + } + + } + //20220509 you SWAG-CBUB2W end global void finish(Database.BatchableContext BC) { system.debug('=====iflog:' + iflog.id); iflog.Log__c += 'OpportunityAndContactDailyUpdateBatch finish()\n'; @@ -191,4 +255,306 @@ //Database.executeBatch(new ConsumablesApplyOrLendBatch(), 50); //20200819 ljh add end } + + @TestVisible private static void test() { + Integer i = 0; + + 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++; + 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++; + 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++;//鍙互澶氬啓鐐� + } } \ No newline at end of file diff --git a/force-app/main/default/classes/StatusPageController.cls b/force-app/main/default/classes/StatusPageController.cls index fd809ee..da759fa 100644 --- a/force-app/main/default/classes/StatusPageController.cls +++ b/force-app/main/default/classes/StatusPageController.cls @@ -1,57 +1,101 @@ -public with sharing class StatusPageController { +public without sharing class StatusPageController { public StatusPageController() { Inquiryform = new Inquiry_form__c(); } public Inquiry_form__c Inquiryform{get; set;} public void init(){ + String infId = ApexPages.currentPage().getParameters().get('id'); - List<Inquiry_form__c> infList = [SELECT id,Reasons_options__c,Opp_Name_Search__c,Follow_Content__c,Follow_Content_Other__c,Status__c,Service_Follow_Content__c,Service_Follow_Content_Other__c,Service_Status__c FROM Inquiry_form__c WHERE id = :infId]; - if (infList.size() == 0) { - - }else{ + //2022-5-6 yjk SWAG-CBUB2W 澧炲姞鏌ヨ椤� + List<Inquiry_form__c> infList = [SELECT id,Reasons_options__c,Opp_Name_Search__c,Opp_Name__c,Hospital__c,Hospital_Name__c,Hospital_ID__c,Follow_Content__c,Follow_Content_Other__c,Status__c,Service_Follow_Content__c,Service_Follow_Content_Other__c,Service_Status__c,Redistribution__c,GotoDepartment__c,Product_Owner__c FROM Inquiry_form__c WHERE id = :infId]; + if (infList.size() == 0) { + + }else{ Inquiryform = infList[0]; - } + } } + //涓嶉渶瑕� public void save(){ + try{ + if (String.isBlank(Inquiryform.Reasons_options__c)) { ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '涓嶉渶瑕佺悊鐢变笉鑳戒负绌�')); return; } + //2022-5-5 yjk SWAG-CBUB2W start + /*if (Inquiryform.Reasons_options__c == '宸茬粡鏈夎浠�' && String.isBlank(Inquiryform.Opp_Name__c)) { + ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '宸叉湁璇环鍚嶇О涓嶈兘涓虹┖')); + return; + } + if(!String.isBlank(Inquiryform.Opp_Name__c)){ + List<Opportunity> OPPList = [select id from Opportunity where name = :Inquiryform.Opp_Name__c and Hospital__c = :Inquiryform.Hospital__c]; + if(OPPList == NULL || OPPList.size() == 0){ + ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '璇烽�夋嫨姝g‘鐨勮浠蜂俊鎭�')); + return; + }else{ + Inquiryform.Opp_Name_Search__c = OPPList.get(0).id; + } + }*/ + if (Inquiryform.Reasons_options__c == '宸茬粡鏈夎浠�' && String.isBlank(Inquiryform.Opp_Name_Search__c)) { ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '宸叉湁璇环鍚嶇О涓嶈兘涓虹┖')); return; } + + + //2022-5-5 yjk SWAG-CBUB2W end Inquiryform.Status__c = '02.涓嶉渶瑕�'; + update Inquiryform; + }catch (Exception ex){ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, ex.getMessage())); } } + //钀ヤ笟璺熻繘 public void savefo(){ try { + //20220606 LLIU-CEGCRB you start + /** if (String.isBlank(Inquiryform.Follow_Content__c) && String.isBlank(Inquiryform.Follow_Content_Other__c)) { ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '璺熻繘鍐呭涓嶈兘涓虹┖')); } if (String.isBlank(Inquiryform.Follow_Content__c)) { ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '璺熻繘鍐呭涓嶈兘涓虹┖')); } + **/ + if(false != Inquiryform.Redistribution__c && String.isBlank(Inquiryform.GotoDepartment__c)){ + ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '鍕鹃�夋椂蹇呴』濉啓杞嚦绉戝')); + } + if(false == Inquiryform.Redistribution__c && String.isNotBlank(Inquiryform.GotoDepartment__c)){ + ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '鏈嬀閫夋椂涓嶈兘濉啓杞嚦绉戝')); + } + //20220606 LLIU-CEGCRB you end if ('鍏朵粬'.equals(Inquiryform.Follow_Content__c) && String.isBlank(Inquiryform.Follow_Content_Other__c)) { ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '璺熻繘鍐呭锛堝叾浠栵級涓嶈兘涓虹┖')); } // Date nowDT = Date.now(); - //20220418 you SWAG-CBUB2W start - if(String.isNotBlank(Inquiryform.Follow_Content__c) && Inquiryform.Follow_Content__c.indexOf('鏈嶅姟瀵瑰簲')!=-1){ + //20220418 you SWAG-CBUB2W start LLIU-CGK3D2 + if(String.isNotBlank(Inquiryform.Follow_Content__c) && (Inquiryform.Follow_Content__c.indexOf('浠呴渶鏈嶅姟瀵瑰簲')!=-1 || Inquiryform.Follow_Content__c.indexOf('钀ヤ笟鏈嶅姟鍏卞悓瀵瑰簲')!=-1)){ Inquiryform.ServiceCorrespond__c = true; - Inquiryform.Service_Status__c = '01.鏈窡杩�'; + //Inquiryform.Service_Status__c = '01.鏈窡杩�'; 鏀惧埌trigger涓鐞嗭紝鍥犱负鍘熸湰瑕佹槸宸茶窡杩涘緱璇濆氨涓嶅姩 + }else{ Inquiryform.ServiceCorrespond__c = false; - Inquiryform.Service_Status__c = ''; + //Inquiryform.Service_Status__c = ''; + } + + if(String.isNotBlank(Inquiryform.Follow_Content__c) ){ + if(Inquiryform.Follow_Content__c =='浠呴渶鏈嶅姟瀵瑰簲'){ + Inquiryform.Status__c = '02.涓嶉渶瑕�'; + }else{ + Inquiryform.Follow_Date__c = Date.toDay(); + Inquiryform.Status__c = '03.宸茶窡杩�'; + } } //20220418 you SWAG-CBUB2W end - Inquiryform.Follow_Date__c = Date.toDay(); - Inquiryform.Status__c = '03.宸茶窡杩�'; update Inquiryform; } catch (Exception ex) { @@ -59,7 +103,7 @@ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, ex.getMessage())); } } - //20220418 you SWAG-CBUB2W start + //20220418 you SWAG-CBUB2W start 鏈嶅姟璺熻繘 public void servicesavefo(){ try { if (String.isBlank(Inquiryform.Service_Follow_Content__c) && String.isBlank(Inquiryform.Service_Follow_Content_Other__c)) { diff --git a/force-app/main/default/pages/FollowPage.page b/force-app/main/default/pages/FollowPage.page index e118b29..49c3962 100644 --- a/force-app/main/default/pages/FollowPage.page +++ b/force-app/main/default/pages/FollowPage.page @@ -2,47 +2,71 @@ <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/> <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/> <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/> -<apex:includeScript value="/soap/ajax/29.0/connection.js"/> -<apex:includeScript value="/soap/ajax/29.0/apex.js"/> - <head> - <title>璺熻繘</title> - </head> +<apex:includeScript value="{!URLFOR($Resource.connection20)}"/> +<apex:includeScript value="{!URLFOR($Resource.apex20)}"/> + <head> + <title>璺熻繘</title> + </head> <script type="text/javascript"> - function save(){ - var content = j$(escapeVfId('allPage:allForm:pageBlock:pageBlockSection:content')).value(); - var contentOther = j$(escapeVfId('allPage:allForm:pageBlock:pageBlockSection:contentOther')).value(); - if ((content == '' || content == null) && (contentOther.trim() == null || contentOther.trim() == '')) { - alert('璺熻繘鍐呭涓嶈兘涓虹┖锛�'); + function save(){ + var content = j$(escapeVfId('allPage:allForm:pageBlock:pageBlockSection:content')).value(); + var contentOther = j$(escapeVfId('allPage:allForm:pageBlock:pageBlockSection:contentOther')).value(); + //20220606 LLIU-CEGCRB you + var Redistribution = j$(escapeVfId('allPage:allForm:pageBlock:pageBlockSection:Redistribution')).value(); + var GotoDepartment = j$(escapeVfId('allPage:allForm:pageBlock:pageBlockSection:GotoDepartment')).value(); + + var ProductOwner = j$(escapeVfId('allPage:allForm:pageBlock:pageBlockSection:ProductOwner')).value(); + /**if ((content == '' || content == null) && (contentOther.trim() == null || contentOther.trim() == '')) { + alert('璺熻繘鍐呭涓嶈兘涓虹┖锛�'); return; - }else if (content == '鍏朵粬' && (contentOther.trim() == '' || contentOther.trim() == null)) { - alert('璺熻繘鍐呭锛堝叾浠栵級涓嶈兘涓虹┖锛�'); + }else **/if (content == '鍏朵粬' && (contentOther.trim() == '' || contentOther.trim() == null)) { + alert('璺熻繘鍐呭锛堝叾浠栵級涓嶈兘涓虹┖锛�'); return; - }else if (content == '' || content == null) { - alert('璺熻繘鍐呭涓嶈兘涓虹┖锛�'); + }/**else if (content == '' || content == null) { + alert('璺熻繘鍐呭涓嶈兘涓虹┖锛�'); return; - }else{ - blockme(); - allSave(); - } - } - function check(){ - window.opener.location.href = "/{!Inquiryform.id}"; - window.close(); - } + }**/ + /**20220726 LLIU-CGK3D2 you **/ + else if(content == '浠呴渶鏈嶅姟瀵瑰簲,钀ヤ笟鏈嶅姟鍏卞悓瀵瑰簲'){ + alert('浠呴渶鏈嶅姟瀵瑰簲鍜岃惀涓氭湇鍔″叡鍚屽搴斿彧鑳介�夋嫨涓�椤癸紒'); + return; + }else if((Redistribution == '' || Redistribution == null) && (null!=GotoDepartment && ''!=GotoDepartment)){ + alert('鏈嬀閫夋椂涓嶈兘濉啓杞嚦绉戝!'); + }else if(('' !=Redistribution && null !=Redistribution) && (null==GotoDepartment || GotoDepartment == '')){ + alert('鍕鹃�夋椂蹇呴』濉啓杞嚦绉戝!'); + }else if((content == '' || content == null) && (contentOther.trim() == null || contentOther.trim() == '') && (Redistribution == '' || Redistribution == null) && (null==GotoDepartment || GotoDepartment == '') && (ProductOwner == '' || ProductOwner == null) ){ + alert('璺熻繘鍐呭鎴栧凡杞崲蹇呴』鏈変竴涓湁鍊�'); + }else{ + blockme(); + allSave(); + } + } + function check(){ + window.opener.location.href = "/{!Inquiryform.id}"; + window.close(); + } </script> - <apex:form id="allForm"> - <apex:actionfunction action="{!savefo}" name="allSave" onComplete="check();unblockUI();"></apex:actionfunction> - <apex:pageBlock id="pageBlock"> - <apex:pageBlockSection id="pageBlockSection"> - <apex:inputField id="content" value="{!Inquiryform.Follow_Content__c}" /> - <br /> - <apex:inputField id="contentOther" value="{!Inquiryform.Follow_Content_Other__c}" style="width: 150px"/> - <br /> - </apex:pageBlockSection> + <apex:form id="allForm"> + <apex:actionfunction action="{!savefo}" name="allSave" onComplete="check();unblockUI();"></apex:actionfunction> + <apex:pageBlock id="pageBlock"> + <apex:pageBlockSection id="pageBlockSection"> + <apex:pageBlockSectionItem ><font color="red">澶囨敞锛氶渶鏈汉瀵瑰簲锛岃鍦ㄦ杩涜鎿嶄綔銆�</font></apex:pageBlockSectionItem><br /><br /> + <apex:inputField id="content" value="{!Inquiryform.Follow_Content__c}" /> + <br /> + <apex:inputField id="contentOther" value="{!Inquiryform.Follow_Content_Other__c}" style="width: 150px"/> + <br /> + <apex:pageBlockSectionItem ><font color="red">澶囨敞锛氶潪鏈汉瀵瑰簲锛岃鍦ㄦ閫夋嫨闇�瀵瑰簲鐨勬垬鐣ョ瀹わ紝杩涜杞垎閰嶃��</font></apex:pageBlockSectionItem><br /><br /> + <apex:inputField id="Redistribution" value="{!Inquiryform.Redistribution__c}" /> + <br /> + <apex:inputField id="GotoDepartment" value="{!Inquiryform.GotoDepartment__c}" style="width: 150px"/> + <br /> + <apex:inputField id="ProductOwner" value="{!Inquiryform.Product_Owner__c}"/> + <br /> + </apex:pageBlockSection> - <apex:pageblockbuttons location="bottom"> - <apex:commandButton onclick="save();return false;" value="淇濆瓨"></apex:commandButton> - </apex:pageblockbuttons> - </apex:pageBlock> - </apex:form> + <apex:pageblockbuttons location="bottom"> + <apex:commandButton onclick="save();return false;" value="淇濆瓨"></apex:commandButton> + </apex:pageblockbuttons> + </apex:pageBlock> + </apex:form> </apex:page> \ No newline at end of file -- Gitblit v1.9.1