From 2f183a6b0a83ec3f7d35375d5d25d200efc2a3e1 Mon Sep 17 00:00:00 2001 From: Li Jun <buli@deloitte.com.cn> Date: 星期二, 19 四月 2022 18:46:18 +0800 Subject: [PATCH] 20220419FixIssue --- force-app/main/default/pages/NewAndEditInquiryForm.page | 54 +++++++++++++++++++++++++++++++++--------------------- 1 files changed, 33 insertions(+), 21 deletions(-) diff --git a/force-app/main/default/pages/NewAndEditInquiryForm.page b/force-app/main/default/pages/NewAndEditInquiryForm.page index b3e7658..6e125ae 100644 --- a/force-app/main/default/pages/NewAndEditInquiryForm.page +++ b/force-app/main/default/pages/NewAndEditInquiryForm.page @@ -65,6 +65,7 @@ payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; if (isNewMode || {!isCloneMode}) { payloadJson.AWS_Data_Id__c = r.object[0].dataId; + delete payloadJson.OwnerId; } else { payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; } @@ -228,20 +229,26 @@ } else if (ele.type == 'checkbox') { result[field_api_name] = ele.checked; } else if (ele.type == 'select-multiple') { - //field_api_name - let multiple = field_api_name; - let targets = ""; - //InquiryForm鐗规畩澶勭悊 - if(multiple == "Product1__c"){ - targets = GetEleByClass(config.ApiPrefix+'_'+field_api_name).parentNode.children[1].rows[1].cells[2].innerText; - }else if(multiple == "Request1__c"){ - targets = GetEleByClass(config.ApiPrefix+'_'+field_api_name).parentNode.children[2].rows[1].cells[2].innerText; - }else{ - targets = GetEleByClass(config.ApiPrefix+'_'+field_api_name).parentNode.children[1].children[0].children[1].children[2].children[0].innerText; + //After Update By zhj 20220411 Start + let multiple = nodelist[index].getAttribute("data-id"); + let targets = document.querySelector("[data-id=" + multiple + "]").options; + let selValues = []; + for(i=0; i < targets.length; i++){ + if(targets[i].selected){ + selValues.push(targets[i].value); + } } - targets = targets.replace(/\n/g, ";"); - console.log('targets = ' + targets); - result[field_api_name] = targets; + let setValuesStr = JSON.stringify(selValues); + setValuesStr = setValuesStr.substring(1,setValuesStr.length-1); + if(setValuesStr){ + setValuesStr = setValuesStr.replace(/"/g,""); + if(setValuesStr.indexOf(',')!=-1){ + setValuesStr = setValuesStr.replace(/,/g,";"); + } + } + console.log('targets = ' + setValuesStr); + result[nodelist[index].getAttribute("data-id")] = setValuesStr; + //After Update By zhj 20220411 end } else { result[field_api_name] = ele.value; } @@ -415,7 +422,7 @@ function replaceSearchContactLookup() { let lookUpNode = htmlToElement(contactHtmlString); console.log(lookUpNode); - let eleContactValue = document.querySelector("[data-id='Contact_Name__c']").parentNode.parentNode.children[1].value; + let eleContactValue = document.querySelector("[data-id='Contact_Name__c']").parentNode.parentNode.children[0].value; if (eleContactValue) { if (!{!isNewMode} || (eleContactValue != '000000000000000')) { //1. Query Contact from AWS by AWSDataId @@ -549,7 +556,7 @@ <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText></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="{!$Label.Save}" onclick="saveSobjectProcess()" /> <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess(1)" /> <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> @@ -571,8 +578,9 @@ <!--Each section has layoutFields, let's iterate them as well--> <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> - <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inquiry_form__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" - required="{!layoutField.isRequired}" /> + <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inquiry_form__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" required="{!layoutField.isRequired}" /> + <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inquiry_form__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" required="{!layoutField.isRequired}" /> + <apex:outputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inquiry_form__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" /> <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> </apex:pageblocksectionitem> </apex:repeat> @@ -639,7 +647,8 @@ replaceSearchLeadLookup(); document.querySelectorAll("[data-id='OwnerId']")[0].classList.add("disabledbutton"); // document.querySelectorAll("[data-id='OwnerId']")[1].classList.add("disabledbutton"); - + document.getElementById('topButtonRow').style = ''; + document.getElementById('bottomButtonRow').style = ''; jQuery('a[data-id="OwnerId"]').remove(); //Updated by Li Jun 20220322 Start @@ -707,7 +716,7 @@ JSON.stringify(lookups), lookup_id, function (result, event) { console.log("result = " + result); - if (result != null ){ + if (result != null && result != '{}'){ var obj = JSON.parse(result.replaceAll('&'+'quot;','"')); for (let i = 0; i < lookups.length; i++) { let lookup = lookups[i]; @@ -730,7 +739,10 @@ } } - } + }else { + clearVlookup('Department_Class__c'); + clearVlookup('Hospital__c'); + } }, { escape: true } ); @@ -759,7 +771,7 @@ <tr> <td class="pbTitle"> <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> - <td class="pbButtonb" id="bottomButtonRow"> + <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess()" /> <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> -- Gitblit v1.9.1