From 559771a80cf779dc13a84ecd2f178e6ca5a8353a Mon Sep 17 00:00:00 2001 From: FUYU <fuyu@prec-tech.com> Date: 星期五, 19 五月 2023 15:52:16 +0800 Subject: [PATCH] 备份省目标录入 --- force-app/main/default/pages/NewOnCall.page | 118 +++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 94 insertions(+), 24 deletions(-) diff --git a/force-app/main/default/pages/NewOnCall.page b/force-app/main/default/pages/NewOnCall.page index 5d53a7f..9ad6843 100644 --- a/force-app/main/default/pages/NewOnCall.page +++ b/force-app/main/default/pages/NewOnCall.page @@ -1,16 +1,9 @@ -<!-- - @description : - @author : ChangeMeIn@UserSettingsUnder.SFDoc - @group : - @last modified on : 03-24-2022 - @last modified by : ChangeMeIn@UserSettingsUnder.SFDoc ---> <apex:page standardController="On_Call__c" extensions="OnCallController" id="page"> <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" /> <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/> <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; @@ -21,6 +14,9 @@ //Initial Required Information AWSService.sfSessionId = '{!GETSESSIONID()}'; var staticResources = JSON.parse('{!staticResource}'); + //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start + var staticResourcesV2 = JSON.parse('{!staticResourceV2}'); + //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end var requiredFieldAPIList = JSON.parse('{!requiredFieldAPIListStr}'); var fieldAPIToLabelMap = JSON.parse('{!fieldAPIToLabelMapStr}'); var VLookUpFields = new Set(['segment__c','Hospital__c','Oncall_Equipment__c','OwnerId']); @@ -44,8 +40,10 @@ var queryBack = function queryBack(data) { console.log('data = ' + data); //document.querySelector("[id='page:form:pageBlock:pageBlockSection:j_id1:0:j_id2']").value = data.object.callerPhone; - document.querySelector("[id='page:form:block:j_id34:0:j_id35:j_id36:5:j_id37']").value = data.object.callerPhone; //20220404 By Chen Yanan - document.querySelector("[data-id='Responsible_Person_HP__c']").value = data.object.responsiblePersonHP; + if(document.getElementById(api_id_map['Caller_phone__c'])) + document.getElementById(api_id_map['Caller_phone__c']).value = data.object.callerPhone; //20220404 By Chen Yanan + if(document.querySelector("[data-id='Responsible_Person_HP__c']")) + document.querySelector("[data-id='Responsible_Person_HP__c']").value = data.object.responsiblePersonHP; unblockUI(); }; @@ -58,23 +56,30 @@ console.log('payloadJson=' + JSON.stringify(payloadJson)); payloadJson.Caller_phone__c = r.object[0].callerPhone; payloadJson.Responsible_Person_HP__c = r.object[0].responsiblePersonHP; - payloadJson.Caller_Phone_Encrypt__c = r.object[0].callerPhoneEncrypt; - payloadJson.Responsible_PersonHP_Encrypt__c = r.object[0].responsiblePersonHPEncrypt; + //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start + // payloadJson.Caller_Phone_Encrypt__c = r.object[0].callerPhoneEncrypt; + // payloadJson.Responsible_PersonHP_Encrypt__c = r.object[0].responsiblePersonHPEncrypt; + //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; - if (isNewMode) { + if (isNewMode|| {!isCloneMode} ||!'{!AWSDataId}') {//Add by Li Jun for PIPL 20220413 payloadJson.AWS_Data_Id__c = r.object[0].dataId; + delete payloadJson.OwnerId; } else { payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; } - debugger + if('{!sfRecordIdForEdit}'){ + payloadJson.Id = '{!sfRecordIdForEdit}'; + } + if('{!rtTypeId}'){ + payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 + } return payloadJson; } // New Or Edit function ProcessPI(onCallJson, payloadForNewPI) { blockme(); - if ({!isNewMode - }) { + if ({!isNewMode} || {!isCloneMode} ||!'{!AWSDataId}') {//Add by Li Jun for PIPL 20220413 NewPIToAWS(onCallJson, payloadForNewPI) }else { UpdatePIToAWS(onCallJson, payloadForNewPI) @@ -110,8 +115,14 @@ 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; + 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; @@ -145,20 +156,28 @@ let obj = JSON.parse(payloadForNewPI); obj[0].dataId = '{!AWSDataId}'; let payloadForNewPIJson = JSON.stringify(obj); - AWSService.update(staticResources.updateUrl, onCallJson, payloadForNewPIJson, controllerSaveMethod, staticResources.token, staticResources.transactionUrl, false, insertOrUpdateBack, redirectCallBack); + //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start + //AWSService.update(staticResources.updateUrl, onCallJson, payloadForNewPIJson, controllerSaveMethod, staticResources.token, staticResources.transactionUrl, false, insertOrUpdateBack, redirectCallBack); + AWSService.update(staticResourcesV2.updateUrl, onCallJson, payloadForNewPIJson, controllerSaveMethod, staticResources.token, staticResourcesV2.transactionUrl, false, insertOrUpdateBack, redirectCallBack); + //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end } //Insert Sensitive Information to AWS function NewPIToAWS(onCallJson, payloadForNewPI) { let controllerSaveMethod = '{!$RemoteAction.OnCallController.saveOnCall}'; - AWSService.insert(staticResources.newUrl, onCallJson, payloadForNewPI, controllerSaveMethod, staticResources.token, staticResources.transactionUrl, true, insertOrUpdateBack, redirectCallBack); + //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start + //AWSService.insert(staticResources.newUrl, onCallJson, payloadForNewPI, controllerSaveMethod, staticResources.token, staticResources.transactionUrl,{!isNewMode}, insertOrUpdateBack, redirectCallBack); + AWSService.insert(staticResourcesV2.newUrl, onCallJson, payloadForNewPI, controllerSaveMethod, staticResourcesV2.token, staticResources.transactionUrl,{!isNewMode}, insertOrUpdateBack, redirectCallBack); + //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end } //Check Required Fields function checkRequiredFieldMsg(formData) { let blankRequiredFields = ''; for (i = 0; i < requiredFieldAPIList.length; i++) { - if (formData[requiredFieldAPIList[i]]) { + if (formData[requiredFieldAPIList[i]] && !VLookUpFields.has(requiredFieldAPIList[i])) { + continue; + }else if(VLookUpFields.has(requiredFieldAPIList[i]) && formData[requiredFieldAPIList[i]] != '000000000000000'){ continue; } else { if (blankRequiredFields == '') { @@ -171,9 +190,21 @@ } return blankRequiredFields; } + 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"); + } + } //Base Process function saveOnCallProcess(saveMode) { + EditButton(true); redirectMode = saveMode; console.log('redirectMode' + redirectMode); hiddenErrorMsgNode(); @@ -207,6 +238,7 @@ errorMsgNode.innerText = errorMsg; errorMsgNode.className = 'pbError'; unblockUI(); + EditButton(false); } //Hide Error Message @@ -214,6 +246,26 @@ let errorMsgNode = document.getElementById("page:form:block:msgContent"); errorMsgNode.innerText = ''; errorMsgNode.className = ''; + } + var GetEleApiName = function(ele){ + for(let ci in ele.classList){ + let c = ele.classList[ci]; + if(c.indexOf('PIBackApi'+'_')>-1){ + return c.replace('PIBackApi'+'_',''); + } + } + return ''; + } + + function IsFormTag(tag_name){ + if (!tag_name) { + return false; + } + return ['input','select','textarea'].indexOf(tag_name.toLowerCase())>-1; + } + + function IsFormElement(e){ + return IsFormTag(e.tagName); } </script> <div class="bPageTitle"> @@ -246,7 +298,7 @@ <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> <h2 class="mainTitle">OnCall缂栬緫</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="saveOnCallProcess('Save')" /> <input class="btn" type="Button" value="淇濆瓨骞舵柊寤�" onclick="saveOnCallProcess('SaveAndNew')" /> <apex:commandButton action="{!cancel}" value="鍙栨秷" /> @@ -267,8 +319,12 @@ <!--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="{!On_Call__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" + <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!On_Call__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" required="{!layoutField.isRequired}" /> + <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!On_Call__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" + required="{!layoutField.isRequired}" /> + <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!On_Call__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" + /> <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> </apex:pageblocksectionitem> </apex:repeat> @@ -276,6 +332,17 @@ </apex:pageBlockSection> </apex:repeat> <script> + var init_nodes = document.getElementsByClassName("PIBackApi"); + var api_id_map={}; + for(let ei in init_nodes){ + let e = init_nodes[ei]; + if(IsFormElement(e)){ + if(e.getAttribute("multiple") != 'multiple' || e.style.display == 'none' && e.id.indexOf('selected') < 0){ + api_id_map[GetEleApiName(e)] = e.id; + } + + } + } //Append Page sfdcPage.appendToOnloadQueue(function () { var layoutSections = JSON.parse('{!layoutSectionsStr}'); @@ -304,6 +371,9 @@ QueryOnCallFromAWS(); }; document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); + + document.getElementById('topButtonRow').style = ''; +聽 聽 聽 聽 聽 聽 聽 document.getElementById('bottomButtonRow').style = ''; jQuery(".lookupInput").each(function(i,e){ let je =jQuery(e).find('input'); @@ -342,7 +412,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="淇濆瓨" onclick="saveOnCallProcess('Save')" /> <input class="btn" type="Button" value="淇濆瓨骞舵柊寤�" onclick="saveOnCallProcess('SaveAndNew')" /> <apex:commandButton action="{!cancel}" value="鍙栨秷" /> -- Gitblit v1.9.1