From 5c01ebbfddb6b8674430b47c22977bea2e350084 Mon Sep 17 00:00:00 2001
From: Li Jun <buli@deloitte.com.cn>
Date: 星期三, 13 四月 2022 10:58:46 +0800
Subject: [PATCH] BackupPIPLFunction0413

---
 force-app/main/default/pages/XinDailyReport.page |  113 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 103 insertions(+), 10 deletions(-)

diff --git a/force-app/main/default/pages/XinDailyReport.page b/force-app/main/default/pages/XinDailyReport.page
index b762bc6..07d4934 100644
--- a/force-app/main/default/pages/XinDailyReport.page
+++ b/force-app/main/default/pages/XinDailyReport.page
@@ -9,6 +9,10 @@
         <apex:includeScript value="{!URLFOR($Resource.CommonUtilJs)}"/>
         <apex:includeScript value="/soap/ajax/29.0/connection.js"/>
         <apex:includeScript value="/soap/ajax/29.0/apex.js"/>
+        <!-- Add By Li Jun for PIPL 20220225 -->
+        <apex:includeScript value="{!URLFOR($Resource.AWSService, 'AWSService.js') }" />
+        <script src="../../soap/ajax/53.0/connection.js" type="text/javascript"></script>
+        <!-- Add By Li Jun for PIPL 20220225 -->
         <!-- <apex:includeScript value="{!URLFOR($Resource.connection20)}"/>
         <apex:includeScript value="{!URLFOR($Resource.apex20)}"/> -->
         <apex:includeScript value="{!URLFOR($Resource.jquerydoubletapjs)}"/>
@@ -63,6 +67,82 @@
             var hiddenDivShowFlg = false;
             var StatusCheck = '{!report.Status_With_Check__c}'; //20210426 zh
             sforce.connection.sessionId = '{!$Api.Session_ID}';
+            
+            //Add By Li Jun 20220225 for PIPL Start
+            AWSService.sfSessionId = '{!GETSESSIONID()}';
+            var staticResources = JSON.parse('{!staticResource}');
+            var contactAWSIds = JSON.parse('{!contactAWSIds}');
+            console.log('contactAWSIds:'+JSON.stringify(contactAWSIds));
+            var sfIdToContactInfo = {};
+            function preparePayloadForSearchContact(){
+                let searchPayload = new Object();
+                searchPayload.dataIds = contactAWSIds;
+                searchPayload.contactName = '';
+                return JSON.stringify(searchPayload);
+            }
+
+            function refreshContactAll(){
+                let contactIdsFromSF = [];
+                // let allSizeForAct =document.getElementById('Page:mainForm:idDayEdit:AllSize').value;
+                let allSizeForAct = j$(escapeVfId('idActSize')).value();
+                console.log('allSizeForAct:'+allSizeForAct);
+                for(let i=0;i<allSizeForAct;i++){
+                    for(let j=1;j<6;j++){
+                        let contactIdForVis = document.getElementById("Page:mainForm:idDayEdit:idActivities:"+i+":idVisitor"+j+"_IdHidden").value;
+                        contactIdsFromSF.push(contactIdForVis);
+                    }
+                };
+                sforce.connection.sessionId = '{!GETSESSIONID()}';
+                var condition = '';
+                for(var i=0;i<contactIdsFromSF.length;i++){
+                    if(contactIdsFromSF[i] != ''){
+                        condition += "," + "\'"+contactIdsFromSF[i]+"\'";
+                    }
+                }
+                condition = condition.substr(1);
+                console.log('condition = ' + condition);
+                var record = sforce.connection.query("select AWS_Data_Id__c from Contact where id in("+condition+")");
+                var records = record.getArray("records");
+                for(var i =0;i<records.length;i++){
+                    contactAWSIds.push(records[i].AWS_Data_Id__c);
+                }
+                searchContactAll();
+            }
+            function searchContactAll(){
+                let data = preparePayloadForSearchContact();
+                let searchCallBack = function searchCallBack(result){
+                    let contacts = result.object;
+                    if(contacts == null){
+                        return;
+                    }
+                    for(var i=0;i<contacts.length;i++){
+                        let temp = {}
+                        temp.lastName = contacts[i].lastName?contacts[i].lastName:'';                       
+                        if(contacts[i].sfRecordId){
+                            sfIdToContactInfo[contacts[i].sfRecordId] = temp;
+                        }                    
+                    }
+                    console.log('AWS Result:'+JSON.stringify(sfIdToContactInfo));
+                    // let allSizeForAct =document.getElementById('Page:mainForm:idDayEdit:AllSize').value;
+                    let allSizeForAct = j$(escapeVfId('idActSize')).value();
+                    console.log('Act size:'+allSizeForAct);
+                    for(let i=0;i<allSizeForAct;i++){
+                        for(let j=1;j<6;j++){
+                            let contactIdForVis = document.getElementById("Page:mainForm:idDayEdit:idActivities:"+i+":idVisitor"+j+"_IdHidden").value;
+                            if(contactIdForVis){
+                                console.log('SFId for Contact:'+contactIdForVis);
+                                if(sfIdToContactInfo.hasOwnProperty(contactIdForVis)){
+                                    document.getElementById("Page:mainForm:idDayEdit:idActivities:"+i+":idVisitor"+j).value = sfIdToContactInfo[contactIdForVis].lastName;
+                                }   
+                            }else{
+                                document.getElementById("Page:mainForm:idDayEdit:idActivities:"+i+":idVisitor"+j).value = '';
+                            }                     
+                        }
+                    }                                       
+                };
+                AWSService.search(staticResources.searchUrl,data,searchCallBack,staticResources.token);
+            }
+            //Add By Li Jun 20220225 for PIPL End 
             //window.document.onkeydown= onKeyEvent;
             function initSetPage() {
                 // 2018/11/21 SWAG-B6Q8BS 鍒濆鍖栬缃鑹蹭娇鐢�
@@ -504,7 +584,7 @@
                     }else {
                         //浜嬩欢瀹屾垚
                         if(NewEventStatus == '03 瀹屾垚'){
-                           // j$(escapeVfId('Page:mainForm:idDayEdit:idActivities:' + j + ':idfieldset')).attr('disabled', 'disabled');
+                             // j$(escapeVfId('Page:mainForm:idDayEdit:idActivities:' + j + ':idfieldset')).attr('disabled', 'disabled');
                            //浜嬩欢瀹屾垚鍚庡欢鏈熷彇娑堜笉鍙慨鏀�
                             //鍙栨秷鎸夐挳
                             document.getElementById('Page:mainForm:idDayEdit:idActivities:'+j+':idCancel').disabled = true;
@@ -537,7 +617,7 @@
                             document.getElementById('Page:mainForm:idDayEdit:idActivities:'+j+':idDelayReason').disabled = true;
                             //鍙栨秷淇℃伅
                             //Page:mainForm:idDayEdit:idActivities:0:idCancelReasonRemark
-                            document.getElementById('Page:mainForm:idDayEdit:idActivities:'+j+':idCancelReasonRemark').disabled = true;
+                            document.getElementById('Page:mainForm:idDayEdit:idActivities:'+j+':idCancelReasonRemark').disabled = true;                       
                         }
                     }
                 }
@@ -1051,22 +1131,31 @@
                                     <tr>
                                         <th>{!$Label.Visitor}</th><!--璁块棶瀵硅薄-->
                                         <td>&nbsp;</td>
-                                        <td colspan="5"><span><div class="requiredInput"><div class="requiredBlock"></div><apex:inputField id="idVisitor1" value="{!a.act.Visitor1__c}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor1_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /></div></span><apex:inputText id="idVisitor1_IdHidden" value="{!a.act.Visitor1_ID__c}" style="display:none"/></td>
+                                        <td colspan="5"><span><div class="requiredInput"><div class="requiredBlock"></div>
+                                            <apex:inputText id="idVisitor1" value="{!idVisitor1PI}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor1_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /></div></span><apex:inputText id="idVisitor1_IdHidden" value="{!a.act.Visitor1_ID__c}" style="display:none"/></td>
                                         <td>&nbsp;</td>
-                                        <td colspan="2"><apex:inputField id="idVisitor2" value="{!a.act.Visitor2__c}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor2_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor2_IdHidden" value="{!a.act.Visitor2_ID__c}" style="display:none"/></td>
+                                        <td colspan="2">
+                                            <apex:inputText id="idVisitor2" value="{!idVisitor2PI}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor2_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor2_IdHidden" value="{!a.act.Visitor2_ID__c}" style="display:none"/></td>
+                                            <!-- <apex:inputField id="idVisitor2" value="{!a.act.Visitor2__c}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor2_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor2_IdHidden" value="{!a.act.Visitor2_ID__c}" style="display:none"/></td> -->
                                         <td>&nbsp;</td>
-                                        <td><apex:inputField id="idVisitor3" value="{!a.act.Visitor3__c}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor3_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor3_IdHidden" value="{!a.act.Visitor3_ID__c}" style="display:none"/></td>
+                                        <td>
+                                            <apex:inputText id="idVisitor3" value="{!idVisitor3PI}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor3_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor3_IdHidden" value="{!a.act.Visitor3_ID__c}" style="display:none"/></td>
+                                            <!-- <apex:inputField id="idVisitor3" value="{!a.act.Visitor3__c}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor3_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor3_IdHidden" value="{!a.act.Visitor3_ID__c}" style="display:none"/></td> -->
                                         <td>&nbsp;</td>
-                                        <td><apex:inputField id="idVisitor4" value="{!a.act.Visitor4__c}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor4_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor4_IdHidden" value="{!a.act.Visitor4_ID__c}" style="display:none"/></td>
+                                        <td>
+                                            <apex:inputText id="idVisitor4" value="{!idVisitor4PI}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor4_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor4_IdHidden" value="{!a.act.Visitor4_ID__c}" style="display:none"/></td>
+                                            <!-- <apex:inputField id="idVisitor4" value="{!a.act.Visitor4__c}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor4_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor4_IdHidden" value="{!a.act.Visitor4_ID__c}" style="display:none"/></td> -->
                                         <td>&nbsp;</td>
-                                        <td><apex:inputField id="idVisitor5" value="{!a.act.Visitor5__c}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor5_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor5_IdHidden" value="{!a.act.Visitor5_ID__c}" style="display:none"/></td>
+                                        <td>
+                                            <apex:inputText id="idVisitor5" value="{!idVisitor5PI}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor5_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor5_IdHidden" value="{!a.act.Visitor5_ID__c}" style="display:none"/></td>
+                                            <!-- <apex:inputField id="idVisitor5" value="{!a.act.Visitor5__c}" style="width:100px" onchange="clearVisitorId({!a.index},'idVisitor5_IdHidden');" onClick="searchVisitor2({!a.index},value);return false;" /><apex:inputText id="idVisitor5_IdHidden" value="{!a.act.Visitor5_ID__c}" style="display:none"/></td> -->
                                         <td>&nbsp;</td>
                                         <th>{!$Label.Main_Visit_Location}</th>
                                         <td>&nbsp;</td>
                                         <td><apex:inputField id="idMainPlace" value="{!a.act.Main_Visit_Location__c}" style="width:100px" /></td>
                                         <td>&nbsp;</td>
                                         <th>{!$Label.Free_Input}&nbsp;&nbsp;<apex:inputField id="idFree_Input__c" value="{!a.act.Free_Input__c}" onClick="if(vpChack({!a.index})) return false;setVisitorPlaceDisabled();"/>&nbsp;&nbsp;</th>
-                                    </tr>
+                                    </tr>                                   
                                     <tr>  
                                         <th>鎷滆鐩殑</th>
                                         <td></td>
@@ -1172,7 +1261,7 @@
                                         <td colspan="4"><input type="button"  id="{!a.index}:idRelOpp5Btn" class="btn" value="璇环鏇存柊" onclick="enquiryPage(this);" style="width: 63px; cursor: default; border-color: rgb(196, 196, 196); color: #909090; background-position: 0px -90px;"   disabled="disabled" />
                                         <input type="button"  id="{!a.index}:idRelOpp5LoseBtn" class="btn" value="澶卞崟" onclick="loseEnquiry(this);" style="width: 35px; cursor: default; border-color: rgb(196, 196, 196); color: #909090; background-position: 0px -90px;"   disabled="disabled"  />
                                         </td>
-    
+
                                         <td><input type="button"  id="{!a.index}:idRelService1Btn" class="btn" value="淇℃伅鏇存柊" onclick="slaInfoPage('{!a.act.Id}','{!a.index}')" style="width: 100px; cursor: default; border-color: rgb(196, 196, 196); color: #909090; background-position: 0px -90px;"   disabled="disabled" /></td>
                                     </tr>
                                 </table>
@@ -1535,6 +1624,10 @@
                             </fieldset>          
                              <!-- 20200420 浠诲姟鏃ユ姤绠$悊 add gzw end -->
                             </apex:repeat>
+                            <script>
+                                console.log('Load AWS Data');
+                                searchContactAll();
+                            </script>
                         </apex:outputPanel>
                         <apex:outputPanel id="idAddActPanel">
                         <table class="formtable" width="1200" border="0">
@@ -1562,7 +1655,7 @@
                                 <td>&nbsp;</td>
                                 <td><apex:commandButton value="{!$Label.Add_Line}" id="idAddAct" action="{!addActivity}" 
                                     reRender="Activities,idAddActPanel" onClick="blockme();"
-                                     onComplete="bindAllDoubleTap();setVisitorPlaceDisabled();unblockUI();initSetPage();" 
+                                     onComplete="bindAllDoubleTap();setVisitorPlaceDisabled();unblockUI();initSetPage();refreshContactAll();" 
                                      style="width:100px;display:{!IF(actSize>14,'none','')}"/></td>
                                 <th>&nbsp;</th>
                                 <td>&nbsp;</td>

--
Gitblit v1.9.1