From e6068da47c1bef5517c9e5fdc8c726766867ad4e Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期五, 14 七月 2023 15:10:02 +0800
Subject: [PATCH] Merge branch 'master' into LEXUpgrade2023-Deloitte

---
 force-app/main/default/aura/NewAgencyOpportunity/NewAgencyOpportunityHelper.js |  413 +++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 260 insertions(+), 153 deletions(-)

diff --git a/force-app/main/default/aura/NewAgencyOpportunity/NewAgencyOpportunityHelper.js b/force-app/main/default/aura/NewAgencyOpportunity/NewAgencyOpportunityHelper.js
index 34e057a..732b0a0 100644
--- a/force-app/main/default/aura/NewAgencyOpportunity/NewAgencyOpportunityHelper.js
+++ b/force-app/main/default/aura/NewAgencyOpportunity/NewAgencyOpportunityHelper.js
@@ -1,69 +1,89 @@
 ({
-    CallBackAction  : function(component,action_name,para,callback) {
-		var action = component.get("c." + action_name.trimStart().replace("c.",""));
-        if(para){
+    CallBackAction: function (component, action_name, para, callback) {
+        var action = component.get(
+            'c.' + action_name.trimStart().replace('c.', '')
+        );
+        if (para) {
             action.setParams(para);
         }
-        if(callback){
-            action.setCallback(this,function(data){
+        if (callback) {
+            action.setCallback(this, function (data) {
                 callback(data);
             });
         }
-        
+
         $A.enqueueAction(action);
-	},
-    ShowToast : function(paras){
-        var toastEvent = $A.get("e.force:showToast");
+    },
+    ShowToast: function (paras) {
+        var toastEvent = $A.get('e.force:showToast');
         toastEvent.setParams(paras);
         toastEvent.fire();
     },
-    AwsPost : function(postURL, data ,callback,token){
+    AwsPost: function (postURL, data, callback, token) {
         let payloadForNewPI = '';
-        if(typeof(data) == 'string'){
+        if (typeof data == 'string') {
             payloadForNewPI = data;
-        }else{
+        } else {
             payloadForNewPI = JSON.stringify(data);
         }
-        
-        AWSService.post(postURL,payloadForNewPI,function(result) {
-            //this.insertCalloutLog(this.insertModule,postURL,JSON.stringify(payloadForNewPI),JSON.stringify(result),this.successStatus);
-            if(callback) callback(result);
-        },token);
+
+        AWSService.post(
+            postURL,
+            payloadForNewPI,
+            function (result) {
+                //this.insertCalloutLog(this.insertModule,postURL,JSON.stringify(payloadForNewPI),JSON.stringify(result),this.successStatus);
+                if (callback) callback(result);
+            },
+            token
+        );
     },
-    AwsGet : function(url, data ,callback,token){
-        
-        if(typeof(data) == 'string'){
+    AwsGet: function (url, data, callback, token) {
+        if (typeof data == 'string') {
             url += data;
-        }else{
+        } else {
             let i = 0;
-            for(let p in data){
-                url += (i++) ? '&' : '?';
+            for (let p in data) {
+                url += i++ ? '&' : '?';
                 url += p + '=' + data[p];
             }
         }
-        
-        AWSService.get(url,function(result){
-            //this.insertCalloutLog(this.insertModule,postURL,JSON.stringify(payloadForNewPI),JSON.stringify(result),this.successStatus);
-            if(callback) callback(result);
-        },token);
+
+        AWSService.get(
+            url,
+            function (result) {
+                //this.insertCalloutLog(this.insertModule,postURL,JSON.stringify(payloadForNewPI),JSON.stringify(result),this.successStatus);
+                if (callback) callback(result);
+            },
+            token
+        );
     },
-    refreshTable : function(component, event, helper,cols,contactInfoList,contactsInfo){
+    refreshTable: function (
+        component,
+        event,
+        helper,
+        cols,
+        contactInfoList,
+        contactsInfo
+    ) {
         let that = this;
-        let myTableDiv = document.getElementById("QueryResult");
+        let myTableDiv = document.getElementById('QueryResult');
         let table = document.createElement('TABLE');
         table.border = '1';
         table.id = 'customTable';
-        table.setAttribute('class','slds-table slds-table_cell-buffer slds-table_bordered');
+        table.setAttribute(
+            'class',
+            'slds-table slds-table_cell-buffer slds-table_bordered'
+        );
         let tableBody = document.createElement('TBODY');
         table.appendChild(tableBody);
         let headerTR = document.createElement('TR');
-        headerTR.setAttribute('class','slds-line-height_reset');
-        let colsHeader = [' ','濮撳悕','鍖婚櫌', '鍖荤敓鍖哄垎(鑱屽姟)','鍒嗙被'];
+        headerTR.setAttribute('class', 'slds-line-height_reset');
+        let colsHeader = [' ', '濮撳悕', '鍖婚櫌', '鍖荤敓鍖哄垎(鑱屽姟)', '鍒嗙被'];
         tableBody.appendChild(headerTR);
         for (let i = 0; i < colsHeader.length; i++) {
             let td = document.createElement('TH');
             td.width = '75';
-            td.setAttribute('class','slds-truncate slds-border_right');
+            td.setAttribute('class', 'slds-truncate slds-border_right');
             td.appendChild(document.createTextNode(colsHeader[i]));
             headerTR.appendChild(td);
         }
@@ -72,40 +92,54 @@
             let tr = document.createElement('TR');
             tableBody.appendChild(tr);
             let contactInfoTemp = contactInfoList[i];
-            
+
             //鍐嶅姞涓�鍒楅�夋嫨button
-            debugger
+            debugger;
             let td = document.createElement('TD');
             td.width = '75';
             td.id = contactsInfo[contactInfoTemp.AWSDataId].Id;
-            console.log('contactInfoTemp = ' + JSON.stringify(contactInfoTemp))
+            console.log('contactInfoTemp = ' + JSON.stringify(contactInfoTemp));
             // 鍒涘缓鎸夐挳鍏冪礌
             var button = document.createElement('button');
-            button.classList.add('slds-button','slds-button_neutral');
-            button.id = contactInfoTemp.sfRecordId != null ? contactInfoTemp.sfRecordId : '';
+            button.classList.add('slds-button', 'slds-button_neutral');
+            button.id =
+                contactInfoTemp.sfRecordId != null
+                    ? contactInfoTemp.sfRecordId
+                    : '';
             // 璁剧疆鎸夐挳鐨勬枃鏈唴瀹�
             var buttonText = document.createTextNode('閫夋嫨');
             button.appendChild(buttonText);
-            button.addEventListener("click", function (obj) {
+            button.addEventListener('click', function (obj) {
                 that.redirectToParentPage(component, event, helper, obj);
             });
-            button.value = contactInfoTemp[cols[0]] != null ? contactInfoTemp[cols[0]] : ''
+            button.value =
+                contactInfoTemp[cols[0]] != null
+                    ? contactInfoTemp[cols[0]]
+                    : '';
             td.appendChild(button);
             tr.appendChild(td);
             for (let j = 0; j < cols.length; j++) {
                 let td = document.createElement('TD');
                 td.width = '75';
-                if(contactInfoTemp.pi){
-                    if (!contactsInfo.hasOwnProperty(contactInfoTemp.AWSDataId)) {
+                if (contactInfoTemp.pi) {
+                    if (
+                        !contactsInfo.hasOwnProperty(contactInfoTemp.AWSDataId)
+                    ) {
                         continue;
                     }
-                    if(j == 0 && contactsInfo[contactInfoTemp.AWSDataId] ){
+                    if (j == 0 && contactsInfo[contactInfoTemp.AWSDataId]) {
                         td.id = contactsInfo[contactInfoTemp.AWSDataId].Id;
-                    }      
-                }else{
+                    }
+                } else {
                     td.id = contactInfoTemp.sfRecordId;
-                }              
-                td.appendChild(document.createTextNode(contactInfoTemp[cols[j]]!=null?contactInfoTemp[cols[j]]:''));
+                }
+                td.appendChild(
+                    document.createTextNode(
+                        contactInfoTemp[cols[j]] != null
+                            ? contactInfoTemp[cols[j]]
+                            : ''
+                    )
+                );
                 // if (cols[j] == 'Name') {
                 //     td.addEventListener("click", function (obj) {
                 //         that.redirectToParentPage(component, event, helper,obj);
@@ -118,23 +152,23 @@
         myTableDiv.appendChild(table);
         component.find('button').set('v.disabled', false);
     },
-    redirectToParentPage : function(component, event, helper,obj){
+    redirectToParentPage: function (component, event, helper, obj) {
         let agencyContactName = obj.currentTarget.value;
         let id = obj.currentTarget.id;
-        component.set('v.ac_name',agencyContactName);
+        component.set('v.ac_name', agencyContactName);
         let layout = component.get('v.layout');
-        for(let s of layout){
-            for(let c of s.layoutColumns){                
-                for(let item of c.layoutItems){
-                    if(item.field == 'Agency_Contact__c'){
+        for (let s of layout) {
+            for (let c of s.layoutColumns) {
+                for (let item of c.layoutItems) {
+                    if (item.field == 'Agency_Contact__c') {
                         item.value = id;
                     }
                 }
             }
         }
-        component.set("v.isModalOpen", false);
+        component.set('v.isModalOpen', false);
     },
-    resetTable : function(){
+    resetTable: function () {
         // let queryResult = document.getElementById('QueryResult');
         // let table = document.getElementById('customTable');
         // console.log('table:' + table);
@@ -144,22 +178,22 @@
         //     }
         // }
         let customTable = document.getElementById('customTable');
-        if(customTable){
+        if (customTable) {
             customTable.parentNode.removeChild(customTable);
         }
     },
-    preparePayloadForSearchAgencyContact : function(component, event, helper){
+    preparePayloadForSearchAgencyContact: function (component, event, helper) {
         let that = this;
         let agencyHospitalId = '';
         let accountId = '';
         let layout = component.get('v.layout');
-        for(let s of layout){
-            for(let c of s.layoutColumns){                
-                for(let item of c.layoutItems){
-                    if(item.field == 'Agency_Hospital__c'){
+        for (let s of layout) {
+            for (let c of s.layoutColumns) {
+                for (let item of c.layoutItems) {
+                    if (item.field == 'Agency_Hospital__c') {
                         agencyHospitalId = item.value;
                     }
-                    if(item.field == 'Account_Opp__c'){
+                    if (item.field == 'Account_Opp__c') {
                         accountId = item.value;
                     }
                 }
@@ -167,118 +201,191 @@
         }
         var action = component.get('c.getAWSDataIds');
         action.setParams({
-            "agencyHospitalId" : agencyHospitalId,
-            "accountId" : accountId
+            agencyHospitalId: agencyHospitalId,
+            accountId: accountId
         });
-        action.setCallback(this,function(response){
+        action.setCallback(this, function (response) {
             var state = response.getState();
-            if(state == 'SUCCESS'){
+            if (state == 'SUCCESS') {
                 var rv = response.getReturnValue();
-                if(rv.Data.length == 0){
+                if (rv.Data.length == 0) {
                     component.find('button').set('v.disabled', false);
                     helper.ShowToast({
-                        "message" : "璇ョ粡閿�鍟嗗尰闄笅闈㈡病鏈夊鎴蜂汉鍛�",
-                        "type" : "warning"
+                        message: '璇ョ粡閿�鍟嗗尰闄笅闈㈡病鏈夊鎴蜂汉鍛�',
+                        type: 'warning'
                     });
-                    return
+                    return;
                 }
-                component.set('v.showSpinner',true);
+                component.set('v.showSpinner', true);
                 let searchPayload = new Object();
                 let searchAgencyContactName = component.get('v.searchKeyWord');
                 searchPayload.dataIds = rv.Data;
                 searchPayload.name = searchAgencyContactName;
-                component.set('v.contactAWSIds',rv.Data);
+                component.set('v.contactAWSIds', rv.Data);
                 let staticResource = component.get('v.staticResource');
                 let url = staticResource.searchUrl;
                 let token = staticResource.token;
-                this.AwsPost(url,searchPayload,function(data){
-                    if(data.success){
-                        let cols = ['Name','AgencyHospital', 'DoctorDivision1','Type'];
-                        let contactInfoList = [];
-                        let awsDataIds = [];
-                        if(data.object.length == 0){
-                            component.find('button').set('v.disabled', false);
-                            that.ShowToast({
-                                "message" : '娌℃湁鏌ヨ鍒拌瀹㈡埛浜哄憳',
-                                "type" : "warning"
-                            });
-                            component.set('v.showSpinner',false);
-                            return
-                        }
-                        for(var i=0;i<data.object.length;i++){
-                            if(data.object[i].dataId){
-                                let contactInfo = new Object();
-                                //闇�瑕佷慨鏀�
-                                contactInfo.Name = data.object[i].name;
-                                contactInfo.AgencyHospital = '';
-                                contactInfo.DoctorDivision1 = data.object[i].doctorDivision1;
-                                contactInfo.AWSDataId = data.object[i].dataId;
-                                contactInfo.Type = data.object[i].type;
-                                contactInfo.pi = true;
-                                awsDataIds.push(contactInfo.AWSDataId);
-                                contactInfo.sfRecordId = '';
-                                contactInfoList.push(contactInfo);
-                            }                    
-                        }
-                        //let AWSIdToSFIdMapValue = {};
-                        debugger
-                        var searchAgencyContacts = component.get('c.searchAgencyContacts');
-                        searchAgencyContacts.setParams({
-                            "awsAgencyContactIds" : JSON.stringify(awsDataIds),
-                            "agencyHospitalId" : agencyHospitalId,
-                            "accountId" : accountId                            
-                        });
-                        // 寤惰繜鎵ц涓�娈典唬鐮�
-                        setTimeout(function() {
-                            // 闇�瑕佸欢杩熸墽琛岀殑浠g爜
-                           // 鍒涘缓涓�涓紶鏍囩偣鍑讳簨浠�
-                            var event = new MouseEvent('click', {
-                                bubbles: true,
-                                cancelable: true,
-                                view: window
-                            });
-                            
-                            // 瑙﹀彂鍏冪礌鐨勭偣鍑讳簨浠�
-                            var element = document.getElementById('NewAgencyContact');
-                            for(var i = 0;i<100;i++){
-                                element.dispatchEvent(event);
+                this.AwsPost(
+                    url,
+                    searchPayload,
+                    function (data) {
+                        if (data.success) {
+                            let cols = [
+                                'Name',
+                                'AgencyHospital',
+                                'DoctorDivision1',
+                                'Type'
+                            ];
+                            let contactInfoList = [];
+                            let awsDataIds = [];
+                            if (data.object.length == 0) {
+                                component
+                                    .find('button')
+                                    .set('v.disabled', false);
+                                that.ShowToast({
+                                    message: '娌℃湁鏌ヨ鍒拌瀹㈡埛浜哄憳',
+                                    type: 'warning'
+                                });
+                                component.set('v.showSpinner', false);
+                                return;
                             }
-                        }, 1000); // 寤惰繜 1000 姣锛堝嵆 1 绉掞級
-                        searchAgencyContacts.setCallback(that,function(response){
-                            var state = response.getState();
-                            if(state == 'SUCCESS'){
-                                var rv = response.getReturnValue();
-                                if(rv.IsSuccess){
-                                    let contactsInfo = '';
-                                    if(rv.Data){
-                                        contactsInfo = JSON.parse(rv.Data.replace(/(&quot\;)/g,"\""));
-                                        if(Object.keys(contactsInfo).length>0){
-                                            for(let i=0;i<contactInfoList.length;i++){
-                                                let contactFromSF = contactsInfo[contactInfoList[i]['AWSDataId']];
-                                                if(contactFromSF){
-                                                    contactInfoList[i].sfRecordId = contactFromSF['Id'];
-                                                    if(contactFromSF['Agency_Hospital__r']){
-                                                         contactInfoList[i].AgencyHospital = contactFromSF['Agency_Hospital__r']['Name'];
-                                                    }
-                                                    if(contactFromSF['Department_Class__r']){
-                                                        contactInfoList[i].AgencyHospital = contactFromSF['Department_Class__r']['Parent']['Name'];
+                            for (var i = 0; i < data.object.length; i++) {
+                                if (data.object[i].dataId) {
+                                    let contactInfo = new Object();
+                                    //闇�瑕佷慨鏀�
+                                    contactInfo.Name = data.object[i].name;
+                                    contactInfo.AgencyHospital = '';
+                                    contactInfo.DoctorDivision1 =
+                                        data.object[i].doctorDivision1;
+                                    contactInfo.AWSDataId =
+                                        data.object[i].dataId;
+                                    contactInfo.Type = data.object[i].type;
+                                    contactInfo.pi = true;
+                                    awsDataIds.push(contactInfo.AWSDataId);
+                                    contactInfo.sfRecordId = '';
+                                    contactInfoList.push(contactInfo);
+                                }
+                            }
+                            //let AWSIdToSFIdMapValue = {};
+                            debugger;
+                            var searchAgencyContacts = component.get(
+                                'c.searchAgencyContacts'
+                            );
+                            searchAgencyContacts.setParams({
+                                awsAgencyContactIds: JSON.stringify(awsDataIds),
+                                agencyHospitalId: agencyHospitalId,
+                                accountId: accountId
+                            });
+                            // 寤惰繜鎵ц涓�娈典唬鐮�
+                            setTimeout(function () {
+                                // 闇�瑕佸欢杩熸墽琛岀殑浠g爜
+                                // 鍒涘缓涓�涓紶鏍囩偣鍑讳簨浠�
+                                var event = new MouseEvent('click', {
+                                    bubbles: true,
+                                    cancelable: true,
+                                    view: window
+                                });
+
+                                // 瑙﹀彂鍏冪礌鐨勭偣鍑讳簨浠�
+                                var element =
+                                    document.getElementById('NewAgencyContact');
+                                for (var i = 0; i < 100; i++) {
+                                    element.dispatchEvent(event);
+                                }
+                            }, 1000); // 寤惰繜 1000 姣锛堝嵆 1 绉掞級
+                            searchAgencyContacts.setCallback(
+                                that,
+                                function (response) {
+                                    var state = response.getState();
+                                    if (state == 'SUCCESS') {
+                                        var rv = response.getReturnValue();
+                                        if (rv.IsSuccess) {
+                                            let contactsInfo = '';
+                                            if (rv.Data) {
+                                                contactsInfo = JSON.parse(
+                                                    rv.Data.replace(
+                                                        /(&quot\;)/g,
+                                                        '"'
+                                                    )
+                                                );
+                                                if (
+                                                    Object.keys(contactsInfo)
+                                                        .length > 0
+                                                ) {
+                                                    for (
+                                                        let i = 0;
+                                                        i <
+                                                        contactInfoList.length;
+                                                        i++
+                                                    ) {
+                                                        let contactFromSF =
+                                                            contactsInfo[
+                                                                contactInfoList[
+                                                                    i
+                                                                ]['AWSDataId']
+                                                            ];
+                                                        if (contactFromSF) {
+                                                            contactInfoList[
+                                                                i
+                                                            ].sfRecordId =
+                                                                contactFromSF[
+                                                                    'Id'
+                                                                ];
+                                                            if (
+                                                                contactFromSF[
+                                                                    'Agency_Hospital__r'
+                                                                ]
+                                                            ) {
+                                                                contactInfoList[
+                                                                    i
+                                                                ].AgencyHospital =
+                                                                    contactFromSF[
+                                                                        'Agency_Hospital__r'
+                                                                    ]['Name'];
+                                                            }
+                                                            if (
+                                                                contactFromSF[
+                                                                    'Department_Class__r'
+                                                                ]
+                                                            ) {
+                                                                contactInfoList[
+                                                                    i
+                                                                ].AgencyHospital =
+                                                                    contactFromSF[
+                                                                        'Department_Class__r'
+                                                                    ]['Parent'][
+                                                                        'Name'
+                                                                    ];
+                                                            }
+                                                        }
                                                     }
                                                 }
                                             }
+                                            that.refreshTable(
+                                                component,
+                                                event,
+                                                helper,
+                                                cols,
+                                                contactInfoList,
+                                                contactsInfo
+                                            );
+                                            component.set(
+                                                'v.showSpinner',
+                                                false
+                                            );
                                         }
                                     }
-                                    that.refreshTable(component, event, helper,cols,contactInfoList,contactsInfo);
-                                    component.set('v.showSpinner',false);
                                 }
-                            }
-                        });
-                        $A.enqueueAction(searchAgencyContacts);
-                    }else{
-                        component.set('v.showSpinner',false);
-                    }
-                },token);
+                            );
+                            $A.enqueueAction(searchAgencyContacts);
+                        } else {
+                            component.set('v.showSpinner', false);
+                        }
+                    },
+                    token
+                );
             }
         });
         $A.enqueueAction(action);
     }
-})
\ No newline at end of file
+});

--
Gitblit v1.9.1