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(/("\;)/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( + /("\;)/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