|  |  | 
 |  |  | <apex:page standardController="Lead" extensions="NewAndEditLeadController" id="page"> | 
 |  |  | <apex:page lightningStylesheets="true" standardController="Lead" extensions="NewAndEditLeadController" id="page"> | 
 |  |  |     <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}" /> | 
 |  |  |     <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" /> | 
 |  |  |     <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}" /> | 
 |  |  |     <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}" /> | 
 |  |  |     <script src="../../soap/ajax/53.0/connection.js" type="text/javascript"></script> | 
 |  |  |     <apex:includeScript value="{!URLFOR($Resource.connection20)}"/> | 
 |  |  |     <style> | 
 |  |  |         .disabledbutton { | 
 |  |  |             pointer-events: none; | 
 |  |  | 
 |  |  |         var redirectMode = 'Save';//1. Save 2. SaveAndNew | 
 |  |  |         var requiredAPIToChangedLabelMap = new Map(); | 
 |  |  |         requiredAPIToChangedLabelMap.set('LastName', '{!PIPL_Name_Label}'); | 
 |  |  |         var VLookUpFields = new Set(['Hospital_Name__c', 'Department_Class__c', 'Contact_Name__c', 'Campaign__c', 'Lead_Inquiry_form__c', 'Opp_Name_Search__c']); | 
 |  |  |         //var VLookUpFields = new Set(['Hospital_Name__c', 'Department_Class__c', 'Contact_Name__c', 'Campaign__c', 'Lead_Inquiry_form__c', 'Opp_Name_Search__c', 'Tender_information__c', 'Agency_Opportunity__c']); | 
 |  |  |         var VLookUpFields = {! VLookUpFieldsJson}; | 
 |  |  |         function ProcessPI(leadJson, payloadForNewPI) { | 
 |  |  |             blockme(); | 
 |  |  |             if ({!isNewMode} || {!isCloneMode}) { | 
 |  |  |             NewPIToAWS(leadJson, payloadForNewPI) | 
 |  |  |         }else { | 
 |  |  |             UpdatePIToAWS(leadJson, payloadForNewPI) | 
 |  |  |         } | 
 |  |  |                 NewPIToAWS(leadJson, payloadForNewPI) | 
 |  |  |             }else { | 
 |  |  |                 UpdatePIToAWS(leadJson, payloadForNewPI) | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         function EditButton(isDisabled){ | 
 |  |  |             var topele = document.getElementById('topButtonRow'); | 
 |  |  |             var bottomele = document.getElementById('bottomButtonRow'); | 
 |  |  |  | 
 |  |  |             if (isDisabled) { | 
 |  |  |                 topele.classList.add("disabledbutton"); | 
 |  |  |                 bottomele.classList.add("disabledbutton"); | 
 |  |  |             }else { | 
 |  |  |                 topele.classList.remove("disabledbutton"); | 
 |  |  |                 bottomele.classList.remove("disabledbutton"); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |          | 
 |  |  |         function enableButton(obj) { | 
 |  |  |             obj.classList.remove("btnDisabled"); | 
 |  |  |         } | 
 |  |  | 
 |  |  |             let result = {} | 
 |  |  |             result.RecordTypeId = '{!rtTypeId}'; | 
 |  |  |             for (let index = 0; index < nodelist.length; index++) { | 
 |  |  |                 if (VLookUpFields.has(nodelist[index].getAttribute("data-id"))) { | 
 |  |  |                 let tag_name = nodelist[index].tagName.toLowerCase(); | 
 |  |  |                 if(tag_name == 'div'){ | 
 |  |  |                     console.log(nodelist[index]) | 
 |  |  |                 } | 
 |  |  |                 if (VLookUpFields.indexOf(nodelist[index].getAttribute("data-id")) >= 0) { | 
 |  |  |                     console.log(nodelist[index].id.indexOf('lkwgt')); | 
 |  |  |                     if (nodelist[index].id.indexOf('lkwgt') == -1) { | 
 |  |  |                         let vlookUpNodeId = nodelist[index].id + '_lkid'; | 
 |  |  |                         let vlookUpNodeValue = document.getElementById(vlookUpNodeId).value; | 
 |  |  |                         result[nodelist[index].getAttribute("data-id")] = vlookUpNodeValue; | 
 |  |  |                         if (tag_name == 'div') { | 
 |  |  |                             vlookUpNodeId = nodelist[index].id.substring(0,nodelist[index].id.length-4) + '_lkid'; | 
 |  |  |                         } | 
 |  |  |                         let vlookUpNodeValue = document.getElementById(vlookUpNodeId); | 
 |  |  |                         let v = ''; | 
 |  |  |                         if(vlookUpNodeValue){ | 
 |  |  |                             v = vlookUpNodeValue.value; | 
 |  |  |                         }else{ | 
 |  |  |                             v = nodelist[index].value; | 
 |  |  |                         } | 
 |  |  |                         result[nodelist[index].getAttribute("data-id")] = v; | 
 |  |  |                     } | 
 |  |  |                 } else if (nodelist[index].type == 'checkbox') { | 
 |  |  |                     result[nodelist[index].getAttribute("data-id")] = nodelist[index].checked; | 
 |  |  | 
 |  |  |         } | 
 |  |  |         var queryBack = function queryBack(data) { | 
 |  |  |             console.log('data = ' + data); | 
 |  |  |             document.querySelector("[data-id='LastName']").value = data.object.lastName == null ? '' : data.object.lastName; | 
 |  |  |             document.querySelector("[data-id='Phone']").value = data.object.phone == null ? '' : data.object.phone; | 
 |  |  |             document.querySelector("[data-id='Email']").value = data.object.email == null ? '' : data.object.email; | 
 |  |  |             if(document.querySelector("[data-id='LastName']")) | 
 |  |  |                 document.querySelector("[data-id='LastName']").value = data.object.lastName == null ? '' : data.object.lastName; | 
 |  |  |             if(document.querySelector("[data-id='Phone']")) | 
 |  |  |                 document.querySelector("[data-id='Phone']").value = data.object.phone == null ? '' : data.object.phone; | 
 |  |  |             if(document.querySelector("[data-id='Email']")) | 
 |  |  |                 document.querySelector("[data-id='Email']").value = data.object.email == null ? '' : data.object.email; | 
 |  |  |             unblockUI(); | 
 |  |  |         }; | 
 |  |  |         var queryBackIFS = function queryBackIFS(data) { | 
 |  |  |             console.log('data = ' + data); | 
 |  |  |             //document.querySelector("[data-id='LastName']").value = document.querySelector("[data-id='Contact_Name__c']").value | 
 |  |  |             document.querySelector("[data-id='Phone']").value = data.object.phone == null ? '' : data.object.phone; | 
 |  |  |             document.querySelector("[data-id='Email']").value = data.object.email == null ? '' : data.object.email; | 
 |  |  |             if(document.querySelector("[data-id='Phone']")) | 
 |  |  |                 document.querySelector("[data-id='Phone']").value = data.object.phone == null ? '' : data.object.phone; | 
 |  |  |             if(document.querySelector("[data-id='Email']"))   | 
 |  |  |                 document.querySelector("[data-id='Email']").value = data.object.email == null ? '' : data.object.email; | 
 |  |  |             unblockUI(); | 
 |  |  |         }; | 
 |  |  |  | 
 |  |  | 
 |  |  |                 delete payloadJson.OwnerId; | 
 |  |  |             } else { | 
 |  |  |                 payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; | 
 |  |  |             } | 
 |  |  |             if('{!rtTypeId}'){ | 
 |  |  |                 payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 | 
 |  |  |             }else{ | 
 |  |  |                 delete payloadJson.RecordTypeId; | 
 |  |  |             } | 
 |  |  |             return payloadJson; | 
 |  |  |         } | 
 |  |  | 
 |  |  |         function checkRequiredFieldMsg(formData) { | 
 |  |  |             let blankRequiredFields = ''; | 
 |  |  |             for (i = 0; i < requiredFieldAPIList.length; i++) { | 
 |  |  |                 if (formData[requiredFieldAPIList[i]]) { | 
 |  |  |                 if (formData[requiredFieldAPIList[i]] && (VLookUpFields.indexOf(requiredFieldAPIList[i]) == -1)) { | 
 |  |  |                     continue; | 
 |  |  |                 }else if((VLookUpFields.indexOf(requiredFieldAPIList[i]) != -1) && formData[requiredFieldAPIList[i]] != '000000000000000'&&formData[requiredFieldAPIList[i]] != ''){ | 
 |  |  |                     continue; | 
 |  |  |                 } else { | 
 |  |  |                     let fieldAPIValue = requiredFieldAPIList[i] | 
 |  |  | 
 |  |  |             return blankRequiredFields; | 
 |  |  |         } | 
 |  |  |         function saveLeadProcess(saveMode) { | 
 |  |  |  | 
 |  |  |             // 预测签约日check | 
 |  |  |             var days = 100; | 
 |  |  |             var cfdate = document.querySelector("[data-id='Close_Forecasted_Date__c']").value; | 
 |  |  |             var crdate = '{!LeadCreatedDate}'; | 
 |  |  |             if (cfdate != undefined && cfdate != '') { | 
 |  |  |                 days = (Date.parse(cfdate) - Date.parse(crdate)) / (1000 * 3600 *24); | 
 |  |  |                 // alert(days); | 
 |  |  |             } | 
 |  |  |  | 
 |  |  |             if (days < 75) { | 
 |  |  |                 if (!confirm('预测签约日对比创建日不能小于75天,请确认是否按75天保存?')){ | 
 |  |  |                     return | 
 |  |  |                 } | 
 |  |  |             } | 
 |  |  |              | 
 |  |  |             EditButton(true); | 
 |  |  |  | 
 |  |  |             disableButtonStatus(); | 
 |  |  |             redirectMode = saveMode; | 
 |  |  | 
 |  |  |                 alertErrorMessage('{!Input_Required_Field_Msg}' + checkRequiredFieldMsgResult); | 
 |  |  |                 return | 
 |  |  |             } | 
 |  |  |  | 
 |  |  |             //3. Prepare the payload for New PI API To AWS - To Do | 
 |  |  |             let payloadForNewPI = getPIPayload(leadJson); | 
 |  |  |  | 
 |  |  | 
 |  |  |             errorMsgNode.innerText = errorMsg; | 
 |  |  |             errorMsgNode.className = 'pbError'; | 
 |  |  |             unblockUI(); | 
 |  |  |             EditButton(false); | 
 |  |  |         } | 
 |  |  |         function hiddenErrorMsgNode() { | 
 |  |  |             let errorMsgNode = document.getElementById("page:form:block:msgContent"); | 
 |  |  | 
 |  |  |                 return; | 
 |  |  |             } | 
 |  |  |             let queryBackContactName = function queryBackContactName(result){ | 
 |  |  |                 document.querySelector("[data-id='Contact_Name__c']").value = result.object.lastName; | 
 |  |  |                 document.querySelector("[data-id='LastName']").value = result.object.lastName; | 
 |  |  |                 if(document.querySelector("[data-id='Contact_Name__c']")) | 
 |  |  |                     document.querySelector("[data-id='Contact_Name__c']").value = result.object.lastName; | 
 |  |  |                 if(document.querySelector("[data-id='LastName']")) | 
 |  |  |                     document.querySelector("[data-id='LastName']").value = result.object.lastName; | 
 |  |  |             }; | 
 |  |  |             AWSService.query(staticResourcesContact.queryUrl, dataId, queryBackContactName, staticResourcesContact.token); | 
 |  |  |         } | 
 |  |  | 
 |  |  |                                 <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> | 
 |  |  |                                 <h2 class="mainTitle">意向编辑</h2> | 
 |  |  |                             </td> | 
 |  |  |                             <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> | 
 |  |  |                             <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 1.0;"> | 
 |  |  |                                 <input class="btn" type="Button" value="保存" onclick="saveLeadProcess('Save')" /> | 
 |  |  |                                 <input class="btn" type="Button" value="保存并新建" onclick="saveLeadProcess('SaveAndNew')" /> | 
 |  |  |                                 <apex:commandButton action="{!cancel}" value="取消" /> | 
 |  |  | 
 |  |  |                 if ('{!ifc}' != '') { | 
 |  |  |                     blockme(); | 
 |  |  |                     //状态 | 
 |  |  |                     document.querySelector("[data-id='Status']").value = '未跟进' | 
 |  |  |                     if(document.querySelector("[data-id='Status']")) | 
 |  |  |                         document.querySelector("[data-id='Status']").value = '未跟进' | 
 |  |  |                     //会议询问单 | 
 |  |  |                     if ('{!ifc.Id}') | 
 |  |  |                     if ('{!ifc.Id}' && document.querySelector("[data-id='Lead_Inquiry_form__c']")) | 
 |  |  |                         document.getElementById(document.querySelector("[data-id='Lead_Inquiry_form__c']").id+'_lkid').value = '{!ifc.Id}' | 
 |  |  |                     if ('{!ifc.Name}') | 
 |  |  |                     if ('{!ifc.Name}' && document.querySelector("[data-id='Lead_Inquiry_form__c']")) | 
 |  |  |                         document.querySelector("[data-id='Lead_Inquiry_form__c']").value = '{!ifc.Name}' | 
 |  |  |                     //客户姓名 | 
 |  |  |                     if ('{!ifc.Contact_Id__c}') | 
 |  |  |                     if ('{!ifc.Contact_Id__c}' && document.querySelector("[data-id='Contact_Name__c']")) | 
 |  |  |                         document.getElementById(document.querySelector("[data-id='Contact_Name__c']").id + '_lkid').value = '{!ifc.Contact_Id__c}' | 
 |  |  |                     //医院 | 
 |  |  |                     if ('{!ifc.Hospital_Name__c}') | 
 |  |  |                     if ('{!ifc.Hospital_Name__c}' && document.querySelector("[data-id='Hospital_Name__c']")) | 
 |  |  |                         document.getElementById(document.querySelector("[data-id='Hospital_Name__c']").id+'_lkold').value = '{!ifc.Hospital_Name__c}' | 
 |  |  |                     if ('{!ifc.Hospital_ID__c}') | 
 |  |  |                     if ('{!ifc.Hospital_ID__c}' && document.querySelector("[data-id='Hospital_Name__c']")) | 
 |  |  |                         document.getElementById(document.querySelector("[data-id='Hospital_Name__c']").id+'_lkid').value = '{!ifc.Hospital_ID__c}' | 
 |  |  |                     //战略科室分类 | 
 |  |  |                     if ('{!ifc.Department_Class__c}') | 
 |  |  |                     if ('{!ifc.Department_Class__c}' && document.querySelector("[data-id='Department_Class__c']")) | 
 |  |  |                         document.getElementById(document.querySelector("[data-id='Department_Class__c']").id+'_lkold').value = '{!ifc.Department_Class__c}' | 
 |  |  |                     if ('{!ifc.Department_ID__c}') | 
 |  |  |                     if ('{!ifc.Department_ID__c}' && document.querySelector("[data-id='Department_Class__c']")) | 
 |  |  |                         document.getElementById(document.querySelector("[data-id='Department_Class__c']").id+'_lkid').value = '{!ifc.Department_ID__c}' | 
 |  |  |                     //已有询价名称 | 
 |  |  |                     if ('{!ifc.Opp_Name_Search__c}') | 
 |  |  |                     if ('{!ifc.Opp_Name_Search__c}' && document.querySelector("[data-id='Opp_Name_Search__c']")) | 
 |  |  |                         document.getElementById(document.querySelector("[data-id='Opp_Name_Search__c']").id + '_lkold').value = '{!ifc.Opp_Name_Search__c}' | 
 |  |  |                     if ('{!ifc.Opp_Name_Search_ID__c}') | 
 |  |  |                     if ('{!ifc.Opp_Name_Search_ID__c}' && document.querySelector("[data-id='Opp_Name_Search__c']")) | 
 |  |  |                         document.getElementById(document.querySelector("[data-id='Opp_Name_Search__c']").id + '_lkid').value = '{!ifc.Opp_Name_Search_ID__c}' | 
 |  |  |                     //主要学会 | 
 |  |  |                     if ('{!ifc.Campaign__c}') | 
 |  |  |                     if ('{!ifc.Campaign__c}' && document.querySelector("[data-id='Campaign__c']")) | 
 |  |  |                         document.getElementById(document.querySelector("[data-id='Campaign__c']").id +'_lkold').value = '{!ifc.Campaign__c}' | 
 |  |  |                     if ('{!ifc.Campaign_ID__c}') | 
 |  |  |                     if ('{!ifc.Campaign_ID__c}' && document.querySelector("[data-id='Campaign__c']")) | 
 |  |  |                         document.getElementById(document.querySelector("[data-id='Campaign__c']").id +'_lkid').value = '{!ifc.Campaign_ID__c}' | 
 |  |  |                     //取消原因 | 
 |  |  |                     if ('{!ifc.Cancel_Reason__c}') | 
 |  |  |                     if ('{!ifc.Cancel_Reason__c}' && document.querySelector("[data-id='Cancel_Reason__c']")) | 
 |  |  |                         document.querySelector("[data-id='Cancel_Reason__c']").value = '{!ifc.Cancel_Reason__c}' | 
 |  |  |                     //电话 | 
 |  |  |                     if ('{!ifc.Phone__c}') | 
 |  |  |                     if ('{!ifc.Phone__c}' && document.querySelector("[data-id='Phone']")) | 
 |  |  |                         document.querySelector("[data-id='Phone']").value = '{!ifc.Phone__c}' | 
 |  |  |                     //邮件 | 
 |  |  |                     if ('{!ifc.Email__c}') | 
 |  |  |                     if ('{!ifc.Email__c}' && document.querySelector("[data-id='Email']")) | 
 |  |  |                         document.querySelector("[data-id='Email']").value = '{!ifc.Email__c}' | 
 |  |  |                     //咨询单来源 | 
 |  |  |                     if ('{!ifc.LeadSource__c}' && document.querySelector("[data-id='LeadSource']")) | 
 |  |  |                         document.querySelector("[data-id='LeadSource']").value = '{!ifc.LeadSource__c}' | 
 |  |  |                     //意向区分 | 
 |  |  |                     if ('{!ifc.Opportunity_Division__c}') | 
 |  |  |                     if ('{!ifc.Opportunity_Division__c}' && document.querySelector("[data-id='Opportunity_Division__c']")) | 
 |  |  |                         document.querySelector("[data-id='Opportunity_Division__c']").value = '{!ifc.Opportunity_Division__c}' | 
 |  |  |                     //委托事项 | 
 |  |  |                     if ('{!ifc.Request1__c}') { | 
 |  |  |                     if ('{!ifc.Request1__c}' && document.querySelector("[data-id='Request__c']")) { | 
 |  |  |                         var Request1__c = '{!ifc.Request1__c}'; | 
 |  |  |                         //赋值给第二个多选框 | 
 |  |  |                         var array = Request1__c.split(';'); | 
 |  |  | 
 |  |  |                         } | 
 |  |  |                     } | 
 |  |  |                     //紧急 | 
 |  |  |                     if ('{!ifc.Urgent__c}') | 
 |  |  |                     if ('{!ifc.Urgent__c}' && document.querySelector("[data-id='urgent__c']")) | 
 |  |  |                         document.querySelector("[data-id='urgent__c']").checked = '{!ifc.Urgent__c}' == 'false' ? false : true; | 
 |  |  |                     //公司(科室) = 科室名称 | 
 |  |  |                     if(document.querySelector("[data-id='Company']") && document.querySelector("[data-id='Hospital_Name__c']").value != ''){ | 
 |  |  | 
 |  |  |                      | 
 |  |  |                     unblockUI(); | 
 |  |  |                 } | 
 |  |  |                      | 
 |  |  |                 debugger   | 
 |  |  |                 document.getElementById('topButtonRow').style = ''; | 
 |  |  |            document.getElementById('bottomButtonRow').style = ''; | 
 |  |  |            document.getElementById('bottomButtonRow').style = ''; | 
 |  |  |                 let previous_value = {}; | 
 |  |  |                     jQuery(".lookupInput input").each(function(i,e){ | 
 |  |  |                         let je =jQuery(e); | 
 |  |  | 
 |  |  |                         <tr> | 
 |  |  |                             <td class="pbTitle"> | 
 |  |  |                                 <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> | 
 |  |  |                             <td class="pbButton" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> | 
 |  |  |                             <td class="pbButton" id="bottomButtonRow" style="pointer-events: none; opacity: 1.0;"> | 
 |  |  |                                 <input class="btn" type="Button" value="保存" onclick="saveLeadProcess('Save')" /> | 
 |  |  |                                 <input class="btn" type="Button" value="保存并新建" onclick="saveLeadProcess('SaveAndNew')" /> | 
 |  |  |                                 <apex:commandButton action="{!cancel}" value="取消" /> |