From 4238b5408fde989099dc289e4f830ac3c1a0a6d3 Mon Sep 17 00:00:00 2001
From: Li Jun <buli@deloitte.com.cn>
Date: 星期三, 11 五月 2022 17:04:57 +0800
Subject: [PATCH] Page Enhance 0511

---
 force-app/main/default/pages/NewAndEditReport.page |   52 ++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 38 insertions(+), 14 deletions(-)

diff --git a/force-app/main/default/pages/NewAndEditReport.page b/force-app/main/default/pages/NewAndEditReport.page
index e6f18fa..e380866 100644
--- a/force-app/main/default/pages/NewAndEditReport.page
+++ b/force-app/main/default/pages/NewAndEditReport.page
@@ -3,7 +3,7 @@
     <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 {
@@ -19,7 +19,7 @@
         var redirectMode = 'Save';//1. Save 2. SaveAndNew
         var requiredFieldAPIList = JSON.parse('{!requiredFieldAPIListStr}');
         var fieldAPIToLabelMap = JSON.parse('{!fieldAPIToLabelMapStr}');
-        var VLookUpFields = new Set(['Hospital_Reference__c', 'Department_Class_Ref__c', 'Daily_Report__c', 'OwnerId','Hospital_Department__c',
+        var VLookUpFields = new Set(['Hospital_Reference__c','Consum_Apply__c','Department_Class_Ref__c', 'Daily_Report__c', 'OwnerId','Hospital_Department__c',
         'Competition_Company_Name__c','Report_OPDPlan__c','Loaner_request_no1__c','Practitioner1__c','Practitioner2__c','Practitioner3__c','Practitioner4__c',
         'Practitioner5__c','Opportunity1__c',
         'Opportunity2__c','Product01__c','Product1__c','Product2__c','Product3__c','Product4__c','Product5__c','Order_No__c','Person_In_Charge__c']);
@@ -31,17 +31,30 @@
         //     console.log('娌℃湁CKEDITOR')
         // }
 
+        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 alertErrorMessage(errorMsg) {
-            let errorMsgNode = document.getElementById("page:form:j_id5:msgContent");
+            let errorMsgNode = document.getElementById("page:form:pageBlock:msgContent");
             errorMsg = '閿欒锛氭棤鏁堟暟鎹��'+'\n' + errorMsg;
             errorMsgNode.innerText = errorMsg;
             errorMsgNode.className = 'pbError';
             unblockUI();
+            EditButton(false);
         }
         function hiddenErrorMsgNode() {
-            let errorMsgNode = document.getElementById("page:form:j_id5:msgContent");
+            let errorMsgNode = document.getElementById("page:form:pageBlock:msgContent");
             errorMsgNode.innerText = '';
             errorMsgNode.className = '';
         }
@@ -166,7 +179,7 @@
             // if(document.querySelector("[aria-describedby = 'cke_38']")){
             //     result.VOC_follow_up_result__c = document.querySelector("[aria-describedby = 'cke_38']").contentWindow.document.getElementsByTagName('body')[0].innerHTML
             // }
-            // //瀵瑰簲缁撴灉绗竴娆� 	VOC_follow_up_result1__c cke_71
+            // //瀵瑰簲缁撴灉绗竴娆�    VOC_follow_up_result1__c cke_71
             // if(document.querySelector("[aria-describedby = 'cke_71']")){
             //     result.VOC_follow_up_result1__c = document.querySelector("[aria-describedby = 'cke_71']").contentWindow.document.getElementsByTagName('body')[0].innerHTML
             // }
@@ -183,7 +196,7 @@
         function validateFieldValueFormate() {
             //VOC_Informer_Contact__c,Caller_phone_c__c
             let error_msg = '';
-            // let textEmail = "[data-id='	Follow_staff_email__c']";
+            // let textEmail = "[data-id='  Follow_staff_email__c']";
             // let textPhone1 = "[data-id='VOC_Informer_Contact__c']";
             // let textPhone2 = "[data-id='Caller_phone_c__c']";
             // //Email
@@ -221,7 +234,9 @@
         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 == ''){
@@ -257,8 +272,8 @@
             }
             return ['input','select','textarea'].indexOf(tag_name.toLowerCase())>-1;
         }
-    	
-    	function IsFormElement(e){
+        
+        function IsFormElement(e){
             return IsFormTag(e.tagName);
         }
 
@@ -300,7 +315,7 @@
         //鏂板缓
         function NewPIToAWS(reportJson, payloadForNewPI) {
             let controllerSaveMethod = '{!$RemoteAction.NewAndEditReportController.saveReport}';
-            AWSService.insert(staticResources.newUrl, reportJson, payloadForNewPI, controllerSaveMethod, staticResources.token, staticResources.transactionUrl, true, insertOrUpdateBack, redirectCallBack);
+            AWSService.insert(staticResources.newUrl, reportJson, payloadForNewPI, controllerSaveMethod, staticResources.token, staticResources.transactionUrl, {!isNewMode}, insertOrUpdateBack, redirectCallBack);
         }
 
         //缂栬緫
@@ -533,6 +548,12 @@
             } else {
                 payloadJson.AWS_Data_Id__c = '{!AWSDataId}';
             }
+            if('{!sfRecordIdForEdit}'){
+                payloadJson.Id = '{!sfRecordIdForEdit}';
+            }
+            if('{!rtTypeId}'){
+                payloadJson.RecordTypeId = '{!rtTypeId}';//Add by Li Jun for Record Type Issue 20220421
+            }
             return payloadJson;
         }
 
@@ -551,6 +572,8 @@
 
         //鐐瑰嚮淇濆瓨鎸夐挳
         function saveReportProcess(saveMode) {
+            EditButton(true);
+
             redirectMode = saveMode;
             console.log('redirectMode' + redirectMode);
             hiddenErrorMsgNode();
@@ -604,7 +627,7 @@
         <!-- <apex:outputPanel id="errorMsg">
             <apex:pageMessages id="msgContent" escape="false" />
         </apex:outputPanel> -->
-        <apex:pageblock >
+        <apex:pageblock id="pageBlock">
             <div class="pbHeader">
                 <table cellspacing="0" cellpadding="0" border="0">
                     <tbody>
@@ -695,7 +718,8 @@
                     //Replace Vlookup Field
                     replaceSearchContactLookup();
                     //3. Set Readonly Attribute
-                    document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton");
+                    if(document.querySelector("[data-id='OwnerId']"))
+                        document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton");
 
                     //濡傛灉鏄疧PD璁″垝杩囨潵鐨�
                     if('{!no1Name}' != '' && '{!no1Id}' != ''){
@@ -707,8 +731,8 @@
                         }
                     }
                     
-					document.getElementById('topButtonRow').style = '';
-聽 聽 聽 聽 聽 聽 聽document.getElementById('bottomButtonRow').style = '';
+                    document.getElementById('topButtonRow').style = '';
+                    document.getElementById('bottomButtonRow').style = '';
                     
                     let previous_value = {};
                     jQuery(".lookupInput input").each(function(i,e){

--
Gitblit v1.9.1