| | |
| | | <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/> |
| | | <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/> |
| | | <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/> |
| | | <script src="../../soap/ajax/53.0/connection.js" type="text/javascript"></script> |
| | | <apex:includeScript value="{!URLFOR($Resource.connection20)}"/> |
| | | <style> |
| | | .disabledbutton { |
| | | pointer-events: none; |
| | |
| | | var requiredAPIToChangedLabelMap = new Map(); |
| | | requiredAPIToChangedLabelMap.set('LastName', '{!PIPL_Name_Label}'); |
| | | console.log('{!contactsInfo}'); |
| | | var VLookUpFields = new Set(['Account__c', 'ContactId', 'Asset__c', 'prod__c', 'Competitor_info__c', 'AccountId', 'Field1_staff__c']); |
| | | var VLookUpFields = new Set(['Account__c', 'ContactId', 'Asset__c', 'prod__c', 'Competitor_info__c', 'AccountId', 'Field1_staff__c','OwnerId']); |
| | | //判断insert or update |
| | | function ProcessPI(caseJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(caseJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(caseJson, 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 nodelist = document.querySelectorAll("[data-id]"); |
| | | let result = {} |
| | | result.RecordTypeId = '{!rtTypeId}' |
| | | //富文本 |
| | | var describedbyAll = document.querySelectorAll("[aria-describedby = 'cke_34']"); |
| | | if(describedbyAll){ |
| | | for (let idx = 0; idx < describedbyAll.length; idx++) { |
| | | let describedby = describedbyAll[idx]; |
| | | if (describedby.title.indexOf('Text_attachement__c') > 0){ |
| | | result.Text_attachement__c = describedby.contentWindow.document.getElementsByTagName('body')[0].innerHTML; |
| | | if (result.Text_attachement__c == '<br>') { |
| | | result.Text_attachement__c = ''; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | for (let index = 0; index < nodelist.length; index++) { |
| | | if (VLookUpFields.has(nodelist[index].getAttribute("data-id"))) { |
| | | console.log(nodelist[index].id.indexOf('lkwgt')); |
| | | if (nodelist[index].id.indexOf('lkwgt') == -1) { |
| | | let vlookUpNodeId = nodelist[index].id + '_lkid'; |
| | | if (nodelist[index].tagName.toLowerCase() == 'div') { |
| | | vlookUpNodeId = nodelist[index].id.substring(0,nodelist[index].id.length-4) + '_lkid'; |
| | | } |
| | | let vlookUpNodeValue = document.getElementById(vlookUpNodeId).value; |
| | | result[nodelist[index].getAttribute("data-id")] = vlookUpNodeValue; |
| | | } |
| | |
| | | index++; |
| | | } |
| | | } |
| | | //针对id的手动添加 |
| | | if (document.getElementById("page:form:block:j_id31:0:j_id32:j_id33:1:j_id34_lkid") && (!result.hasOwnProperty("Field1_staff__c") || !result["Field1_staff__c"])){ |
| | | if(document.getElementById("page:form:block:j_id31:0:j_id32:j_id33:1:j_id34_lkid").value != '000000000000000'){ |
| | | result["Field1_staff__c"] = document.getElementById("page:form:block:j_id31:0:j_id32:j_id33:1:j_id34_lkid").value; |
| | | } |
| | | } |
| | | |
| | | return result; |
| | | } |
| | |
| | | //需要解密字段 |
| | | var queryBack = function queryBack(data) { |
| | | console.log('data = ' + data); |
| | | document.querySelector("[data-id='cic_telephone__c']").value = data.object.cicTelephone; |
| | | document.querySelector("[data-id='CASE_CUSTOMER__c']").value = data.object.caseCustomer; |
| | | document.querySelector("[data-id='Customer_manual__c']").value = data.object.customerManual; |
| | | if (document.querySelector("[data-id='cic_telephone__c']")) { |
| | | document.querySelector("[data-id='cic_telephone__c']").value = data.object.cicTelephone; |
| | | } |
| | | if (document.querySelector("[data-id='CASE_CUSTOMER__c']")) { |
| | | document.querySelector("[data-id='CASE_CUSTOMER__c']").value = data.object.caseCustomer; |
| | | } |
| | | if (document.querySelector("[data-id='Customer_manual__c']")) { |
| | | document.querySelector("[data-id='Customer_manual__c']").value = data.object.customerManual; |
| | | } |
| | | }; |
| | | |
| | | var insertOrUpdateBack = function insertOrUpdateBack(payloadJson, result, isNewMode) { |
| | |
| | | payloadJson.Customer_manual_Encrypted__c = r.object[0].customerManualEncrypt; |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | } |
| | |
| | | } |
| | | //按钮点击事件 |
| | | function saveCaseProcess(saveMode) { |
| | | EditButton(true); |
| | | |
| | | disableButtonStatus(); |
| | | redirectMode = saveMode; |
| | | console.log('redirectMode'+redirectMode); |
| | |
| | | //1. Get Case Information from Form |
| | | let caseJson = getCaseInformation(); |
| | | //2. Validate the Case field value formate, for example the email formate or phone formate |
| | | /* |
| | | let validationResultMessage = validateFieldValueFormate(); |
| | | console.log(validationResultMessage); |
| | | if (!validationResultMessage) { |
| | |
| | | alertErrorMessage('手机格式输入有误,请重新输入!'); |
| | | return |
| | | } |
| | | */ |
| | | // Check Required Field |
| | | let checkRequiredFieldMsgResult = checkRequiredFieldMsg(caseJson); |
| | | if (checkRequiredFieldMsgResult) { |
| | |
| | | errorMsgNode.innerText = errorMsg; |
| | | errorMsgNode.className = 'pbError'; |
| | | unblockUI(); |
| | | EditButton(false); |
| | | } |
| | | function hiddenErrorMsgNode() { |
| | | let errorMsgNode = document.getElementById("page:form:block:msgContent"); |
| | |
| | | accountValue = document.getElementById(accountNodeId).value; |
| | | } |
| | | console.log(accountValue); |
| | | if(accountValue !='000000000000000'){ |
| | | if(accountValue !='000000000000000' || true){ |
| | | if (accountValue == '000000000000000') { |
| | | accountValue = ''; |
| | | } |
| | | |
| | | let baseUrl = "/apex/SearchContactPage"; |
| | | let suffixUrl = "?contactId="+contactNodeId+"&accountId="+accountValue; |
| | | let searchContactKeyWord = document.querySelector("[data-id='ContactId']").value; |
| | | let suffixUrl = "?contactId=" + contactNodeId + "&accountId=" + accountValue+"&searchContactKeyWord=" + searchContactKeyWord; |
| | | let newSearchContactParam = 'height=600,width=800,left=100,top=100,dialogHide=true,resizable=no,scrollbars=yes,toolbar=no,status=no'; |
| | | newSearchContactWindow = window.open(baseUrl+suffixUrl, 'Popup', newSearchContactParam); |
| | | if (window.focus) { |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">CIC编辑</h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveCaseProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并关闭" onclick="saveCaseProcess('SaveAndClose')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveCaseProcess('SaveAndNew')" /> |
| | |
| | | <apex:pageBlockSection title="{!layoutSection.name}" showHeader="{!layoutSection.useHeader}" collapsible="{!layoutSection.allowCollapse}" columns="{!layoutSection.columns}"> |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Case[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Case[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" required="{!layoutField.isRequired}" /> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Case[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" required="{!layoutField.isRequired}" /> |
| | | <apex:outputField html-data-id="{!layoutField.fieldAPI}" value="{!Case[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" /> |
| | | |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | for (let n = 0; n < layoutSection.length; n++) { |
| | | let layoutField = layoutSection[n]; |
| | | if (layoutField.fieldAPI != '' && document.querySelector("[data-id='"+layoutField.fieldAPI+"']") != null) { |
| | | document.querySelector("[data-id='"+layoutField.fieldAPI+"']").disabled = !(layoutField.editableField); |
| | | let e = document.querySelector("[data-id='"+layoutField.fieldAPI+"']"); |
| | | e.disabled = !(layoutField.editableField); |
| | | /* |
| | | if (!(layoutField.editableField)) { |
| | | if (e.getAttribute("multiple") && e.getAttribute("multiple") == 'multiple') { |
| | | e.parentNode.classList.add("disabledbutton"); |
| | | }else if (e.tagName == 'DIV') { |
| | | e.classList.add("disabledbutton"); |
| | | }else if (VLookUpFields.indexOf(layoutField.fieldAPI) >= 0) { |
| | | e.parentNode.classList.add("disabledbutton"); |
| | | } |
| | | } |
| | | */ |
| | | } |
| | | } |
| | | } |
| | |
| | | //3. Set Readonly Attribute |
| | | document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); |
| | | document.querySelector("[data-id='RecordTypeId']").classList.add("disabledbutton"); |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | //需要隐藏 |
| | | // document.querySelector("[data-id='SuppliedEmail']").classList.add("displayblock"); |
| | | |
| | | jQuery('a[data-id="OwnerId"]').remove(); |
| | | |
| | | jQuery(".lookupInput").each(function(i,e){ |
| | | let je =jQuery(e).find('input'); |
| | | je.attr("readonly",""); |
| | | je.css("background","unset"); |
| | | |
| | | let previous_value = {}; |
| | | jQuery(".lookupInput input").each(function(i,e){ |
| | | let je =jQuery(e); |
| | | |
| | | let dataid = je.attr('data-id'); |
| | | if(['Hospital_Name__c','Department_Class__c','OwnerId'].indexOf(dataid) > -1) return; |
| | | jQuery(e).children(":last-child").before('<img class="closeIcon" data-id="'+dataid+'" generate="" alt="Clear" src="/s.gif" style="display: inline-block;">'); |
| | | }) |
| | | |
| | | jQuery(".lookupInput").on("mouseenter","img[generate]",function(e){ |
| | | this.className = "closeIconOn"; |
| | | }); |
| | | |
| | | jQuery(".lookupInput").on("mouseleave","img[generate]",function(e){ |
| | | this.className = "closeIcon" |
| | | }); |
| | | |
| | | jQuery(".lookupInput").on("click","img[generate]",function(e){ |
| | | let id = jQuery("input[data-id='"+jQuery(this).attr("data-id")+ "']").attr("id"); |
| | | let input = document.getElementById(id); |
| | | if(input){ |
| | | input.value = ''; |
| | | let hidden = document.getElementById(id+'_lkid'); |
| | | if(hidden){ |
| | | hidden.value = ''; |
| | | if(['ContactId'].indexOf(dataid) < 0) return; |
| | | |
| | | jQuery(e).focus(function(){ |
| | | previous_value[this.id] = this.value; |
| | | }) |
| | | |
| | | jQuery(e).change(function(){ |
| | | if (previous_value[this.id] != jQuery(this).val()) { |
| | | document.getElementById(this.id+'_lkid').value = ''; |
| | | } |
| | | } |
| | | }); |
| | | }) |
| | | }) |
| | | // jQuery(".lookupInput").each(function(i,e){ |
| | | // let je =jQuery(e).find('input'); |
| | | // je.attr("readonly",""); |
| | | // je.css("background","unset"); |
| | | |
| | | // let dataid = je.attr('data-id'); |
| | | // if(['Hospital_Name__c','Department_Class__c','OwnerId'].indexOf(dataid) > -1) return; |
| | | // jQuery(e).children(":last-child").before('<img class="closeIcon" data-id="'+dataid+'" generate="" alt="Clear" src="/s.gif" style="display: inline-block;">'); |
| | | // }) |
| | | |
| | | // jQuery(".lookupInput").on("mouseenter","img[generate]",function(e){ |
| | | // this.className = "closeIconOn"; |
| | | // }); |
| | | |
| | | // jQuery(".lookupInput").on("mouseleave","img[generate]",function(e){ |
| | | // this.className = "closeIcon" |
| | | // }); |
| | | |
| | | // jQuery(".lookupInput").on("click","img[generate]",function(e){ |
| | | // let id = jQuery("input[data-id='"+jQuery(this).attr("data-id")+ "']").attr("id"); |
| | | // let input = document.getElementById(id); |
| | | // if(input){ |
| | | // input.value = ''; |
| | | // let hidden = document.getElementById(id+'_lkid'); |
| | | // if(hidden){ |
| | | // hidden.value = ''; |
| | | // } |
| | | // } |
| | | // }); |
| | | }); |
| | | </script> |
| | | <div class="pbBottomButtons"> |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButton" id="bottomButtonRow"> |
| | | <td class="pbButton" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveCaseProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并关闭" onclick="saveCaseProcess('SaveAndClose')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveCaseProcess('SaveAndNew')" /> |