| | |
| | | ({ |
| | | |
| | | doInit : function(component, event, helper) { |
| | | doInit: function (component, event, helper) { |
| | | let rid = component.get('v.recordId'); |
| | | let pid = null; |
| | | if(!rid){ |
| | | pid = window.location.href.replace("https://","").split("/")[4]; |
| | | if (!rid) { |
| | | pid = window.location.href.replace('https://', '').split('/')[4]; |
| | | } |
| | | |
| | | |
| | | let record_type_id = ''; |
| | | let pageref = component.get("v.pageReference") |
| | | if(!record_type_id && pageref){ |
| | | record_type_id = pageref.state.recordTypeId ? pageref.state.recordTypeId : ''; |
| | | let pageref = component.get('v.pageReference'); |
| | | if (!record_type_id && pageref) { |
| | | record_type_id = pageref.state.recordTypeId |
| | | ? pageref.state.recordTypeId |
| | | : ''; |
| | | } |
| | | |
| | | |
| | | let isClone = component.get('v.isClone'); |
| | | if(!rid || isClone){ |
| | | component.set('v.title',$A.get("$Label.c.New")+'经销商询价'); |
| | | component.set("v.recordTypeId", record_type_id); |
| | | }else{ |
| | | component.set('v.title',$A.get("$Label.c.Edit")+'经销商询价'); |
| | | if (!rid || isClone) { |
| | | component.set('v.title', $A.get('$Label.c.New') + '经销商询价'); |
| | | component.set('v.recordTypeId', record_type_id); |
| | | } else { |
| | | component.set('v.title', $A.get('$Label.c.Edit') + '经销商询价'); |
| | | } |
| | | console.log('rid: ' + rid); |
| | | console.log('pid: ' + pid); |
| | | console.log('record_type_id: ' + record_type_id); |
| | | component.set("v.showSpinner", true); |
| | | helper.CallBackAction(component,'Init',{ |
| | | rid : rid, |
| | | pid : pid, |
| | | //rid : component.get('v.recordId'), |
| | | record_type_id : record_type_id |
| | | },function(data){ |
| | | console.log('data: ' + data); |
| | | var rv = data.getReturnValue(); |
| | | console.log('rv:' + rv); |
| | | console.log('rv.Data:' + rv.Data); |
| | | console.log('rv.IsSuccess:' + rv.IsSuccess); |
| | | if(data.getState() == "SUCCESS"){ |
| | | if(rv.IsSuccess){ |
| | | debugger; |
| | | let layout = JSON.parse(rv.Data.layout); |
| | | debugger; |
| | | let fields = rv.Data.fields; |
| | | debugger; |
| | | let staticResource = JSON.parse(rv.Data.staticResource) |
| | | debugger; |
| | | let section_names = layout.map(s=>s.label); |
| | | debugger; |
| | | // let awsData = rv.Data.awsDataIds; |
| | | // section_names = layout.map(s=>s.label); |
| | | component.set('v.section_names',section_names); |
| | | component.set('v.layout',layout); |
| | | component.set('v.fields',fields); |
| | | component.set('v.staticResource',staticResource); |
| | | debugger; |
| | | let m = {}; |
| | | for(let f of staticResource.PIDetails){ |
| | | m[f.SF_Field_API_Name__c] = f; |
| | | } |
| | | component.set('v.pi_fields_map',m); |
| | | if(rv.Data && rv.Data.data ){ |
| | | component.set('v.showSpinner', true); |
| | | helper.CallBackAction( |
| | | component, |
| | | 'Init', |
| | | { |
| | | rid: rid, |
| | | pid: pid, |
| | | //rid : component.get('v.recordId'), |
| | | record_type_id: record_type_id |
| | | }, |
| | | function (data) { |
| | | console.log('data: ' + data); |
| | | var rv = data.getReturnValue(); |
| | | console.log('rv:' + rv); |
| | | console.log('rv.Data:' + rv.Data); |
| | | console.log('rv.IsSuccess:' + rv.IsSuccess); |
| | | if (data.getState() == 'SUCCESS') { |
| | | if (rv.IsSuccess) { |
| | | debugger; |
| | | console.log('rv.Data.data = ' + rv.Data.data); |
| | | for(let s of layout){ |
| | | for(let c of s.layoutColumns){ |
| | | for(let item of c.layoutItems){ |
| | | if(rv.Data.data.hasOwnProperty(item.field)){ |
| | | item.value = rv.Data.data[item.field]; |
| | | } |
| | | if(fields.hasOwnProperty(item.field)){ |
| | | item.fi = fields[item.field]; |
| | | let layout = JSON.parse(rv.Data.layout); |
| | | debugger; |
| | | let fields = rv.Data.fields; |
| | | debugger; |
| | | let staticResource = JSON.parse(rv.Data.staticResource); |
| | | debugger; |
| | | let section_names = layout.map((s) => s.label); |
| | | debugger; |
| | | // let awsData = rv.Data.awsDataIds; |
| | | // section_names = layout.map(s=>s.label); |
| | | component.set('v.section_names', section_names); |
| | | component.set('v.layout', layout); |
| | | component.set('v.fields', fields); |
| | | component.set('v.staticResource', staticResource); |
| | | debugger; |
| | | let m = {}; |
| | | for (let f of staticResource.PIDetails) { |
| | | m[f.SF_Field_API_Name__c] = f; |
| | | } |
| | | component.set('v.pi_fields_map', m); |
| | | if (rv.Data && rv.Data.data) { |
| | | debugger; |
| | | console.log('rv.Data.data = ' + rv.Data.data); |
| | | for (let s of layout) { |
| | | for (let c of s.layoutColumns) { |
| | | for (let item of c.layoutItems) { |
| | | if ( |
| | | rv.Data.data.hasOwnProperty( |
| | | item.field |
| | | ) |
| | | ) { |
| | | item.value = |
| | | rv.Data.data[item.field]; |
| | | } |
| | | if (fields.hasOwnProperty(item.field)) { |
| | | item.fi = fields[item.field]; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | // component.set('v.layout',layout); |
| | | component.set('v.record_data',rv.Data.data); |
| | | if(rv.Data.data.Agency_Contact__r){ |
| | | if (rv.Data.data.Agency_Contact__r.AWS_Data_Id__c) { |
| | | helper.AwsGet(staticResource.queryUrl, { |
| | | dataId : rv.Data.data.Agency_Contact__r.AWS_Data_Id__c |
| | | }, function(data){ |
| | | console.log('data = ' + data); |
| | | if (data.object) { |
| | | component.set('v.ac_name',data.object.name); |
| | | } |
| | | }, staticResource.token); |
| | | // component.set('v.layout',layout); |
| | | component.set('v.record_data', rv.Data.data); |
| | | if (rv.Data.data.Agency_Contact__r) { |
| | | if ( |
| | | rv.Data.data.Agency_Contact__r |
| | | .AWS_Data_Id__c |
| | | ) { |
| | | helper.AwsGet( |
| | | staticResource.queryUrl, |
| | | { |
| | | dataId: rv.Data.data |
| | | .Agency_Contact__r |
| | | .AWS_Data_Id__c |
| | | }, |
| | | function (data) { |
| | | console.log('data = ' + data); |
| | | if (data.object) { |
| | | component.set( |
| | | 'v.ac_name', |
| | | data.object.name |
| | | ); |
| | | } |
| | | }, |
| | | staticResource.token |
| | | ); |
| | | } |
| | | } |
| | | } |
| | | // }, staticResource.token); |
| | | }else{ |
| | | debugger; |
| | | console.log('rv.Data.data = ' + rv.Data.data); |
| | | console.log('layout = ' + layout); |
| | | for(let s of layout){ |
| | | for(let c of s.layoutColumns){ |
| | | for(let item of c.layoutItems){ |
| | | if(rv.Data && fields.hasOwnProperty(item.field) && fields[item.field].References && fields[item.field].References.map(m=>m.value).indexOf(rv.Data.pidType) > -1){ |
| | | item.value = pid; |
| | | // }, staticResource.token); |
| | | } else { |
| | | debugger; |
| | | console.log('rv.Data.data = ' + rv.Data.data); |
| | | console.log('layout = ' + layout); |
| | | for (let s of layout) { |
| | | for (let c of s.layoutColumns) { |
| | | for (let item of c.layoutItems) { |
| | | if ( |
| | | rv.Data && |
| | | fields.hasOwnProperty(item.field) && |
| | | fields[item.field].References && |
| | | fields[item.field].References.map( |
| | | (m) => m.value |
| | | ).indexOf(rv.Data.pidType) > -1 |
| | | ) { |
| | | item.value = pid; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | debugger; |
| | | // component.set('v.layout',layout); |
| | | } |
| | | debugger; |
| | | // component.set('v.layout',layout); |
| | | // component.set('v.fields',fields); |
| | | // component.set('v.staticResource',staticResource); |
| | | //component.set("v.showSpinner", false); |
| | | } else { |
| | | component.set('v.showSpinner', false); |
| | | helper.ShowToast({ |
| | | message: rv.Message, |
| | | type: 'error' |
| | | }); |
| | | } |
| | | // component.set('v.fields',fields); |
| | | // component.set('v.staticResource',staticResource); |
| | | component.set("v.showSpinner", false); |
| | | }else{ |
| | | component.set("v.showSpinner", false); |
| | | } else { |
| | | component.set('v.showSpinner', false); |
| | | helper.ShowToast({ |
| | | "message" : rv.Message, |
| | | "type" : "error" |
| | | message: 'Init error', |
| | | type: 'error' |
| | | }); |
| | | } |
| | | |
| | | }else{ |
| | | component.set("v.showSpinner", false); |
| | | helper.ShowToast({ |
| | | "message" : "Init error", |
| | | "type" : "error" |
| | | }); |
| | | |
| | | } |
| | | }); |
| | | }, |
| | | saveClick : function(component, event, helper){ |
| | | |
| | | ); |
| | | }, |
| | | handleLoad: function (component, event, helper) { |
| | | console.log('recordEditForm handleSuccess'); |
| | | component.set('v.showSpinner', false); |
| | | }, |
| | | saveClick: function (component, event, helper) { |
| | | let staticResource = component.get('v.staticResource'); |
| | | let record_id = component.get('v.recordId'); |
| | | let record_type_id = component.get('v.recordTypeId'); |
| | | |
| | | |
| | | let isClone = component.get('v.isClone'); |
| | | let url = staticResource.newUrl; |
| | | let payloadPi = {}; |
| | | if (record_id && !isClone) { |
| | | url = staticResource.updateUrl |
| | | url = staticResource.updateUrl; |
| | | payloadPi['dataId'] = component.get('v.record_data').AWS_Data_Id__c; |
| | | } |
| | | let layout = component.get('v.layout'); |
| | | |
| | | |
| | | let pi_fields_map = component.get('v.pi_fields_map'); |
| | | |
| | | for(let s of layout){ |
| | | for(let c of s.layoutColumns){ |
| | | for(let item of c.layoutItems){ |
| | | if(pi_fields_map.hasOwnProperty(item.field)){ |
| | | |
| | | payloadPi[pi_fields_map[item.field].AWS_Field_API__c] = item.value; |
| | | |
| | | for (let s of layout) { |
| | | for (let c of s.layoutColumns) { |
| | | for (let item of c.layoutItems) { |
| | | if (pi_fields_map.hasOwnProperty(item.field)) { |
| | | payloadPi[pi_fields_map[item.field].AWS_Field_API__c] = |
| | | item.value; |
| | | } |
| | | |
| | | if (item.behavior == "Required" && !item.value ) { |
| | | let fs = component.find("field"); |
| | | for(let fi in fs){ |
| | | if (item.behavior == 'Required' && !item.value) { |
| | | let fs = component.find('field'); |
| | | for (let fi in fs) { |
| | | let f = fs[fi]; |
| | | if(!f.get('v.value')){ |
| | | if (!f.get('v.value')) { |
| | | f.reset(); |
| | | } |
| | | } |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | component.set("v.showSpinner", true); |
| | | debugger |
| | | |
| | | component.set('v.showSpinner', true); |
| | | debugger; |
| | | let data = {}; |
| | | if(record_id && !isClone){ |
| | | if (record_id && !isClone) { |
| | | data.Id = record_id; |
| | | } |
| | | for(let s of layout){ |
| | | for(let c of s.layoutColumns){ |
| | | for(let item of c.layoutItems){ |
| | | if(item.field && item.behavior != "Readonly"){ |
| | | for (let s of layout) { |
| | | for (let c of s.layoutColumns) { |
| | | for (let item of c.layoutItems) { |
| | | if (item.field && item.behavior != 'Readonly') { |
| | | data[item.field] = item.value; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | let x = 1; |
| | | helper.CallBackAction(component,'Save',{ |
| | | data : data, |
| | | transId :'1', |
| | | recordTypeId:record_type_id |
| | | },function(data){ |
| | | component.set("v.showSpinner", false); |
| | | if(data.getState() == "SUCCESS"){ |
| | | var rv = data.getReturnValue(); |
| | | console.log(rv); |
| | | var sfId = null; |
| | | if(rv.IsSuccess){ |
| | | sfId = rv.Data.recordId; |
| | | helper.ShowToast({ |
| | | "message" : "成功", |
| | | "type" : "success" |
| | | }); |
| | | if (record_id){ |
| | | $A.get("e.force:closeQuickAction").fire(); |
| | | $A.get('e.force:refreshView').fire(); |
| | | }else{ |
| | | var sObjectEvent = $A.get("e.force:navigateToSObject"); |
| | | sObjectEvent.setParams({ |
| | | "recordId": sfId |
| | | }) |
| | | sObjectEvent.fire(); |
| | | } |
| | | }else{ |
| | | helper.ShowToast({ |
| | | "message" : rv.Message, |
| | | "type" : "error" |
| | | }); |
| | | } |
| | | }else{ |
| | | helper.ShowToast({ |
| | | "message" : "Init error", |
| | | "type" : "error" |
| | | helper.CallBackAction( |
| | | component, |
| | | 'Save', |
| | | { |
| | | data: data, |
| | | transId: '1', |
| | | recordTypeId: record_type_id |
| | | }, |
| | | function (data) { |
| | | component.set('v.showSpinner', false); |
| | | if (data.getState() == 'SUCCESS') { |
| | | var rv = data.getReturnValue(); |
| | | console.log(rv); |
| | | var sfId = null; |
| | | if (rv.IsSuccess) { |
| | | sfId = rv.Data.recordId; |
| | | helper.ShowToast({ |
| | | message: '成功', |
| | | type: 'success' |
| | | }); |
| | | if (record_id) { |
| | | $A.get('e.force:closeQuickAction').fire(); |
| | | $A.get('e.force:refreshView').fire(); |
| | | } else { |
| | | var sObjectEvent = $A.get( |
| | | 'e.force:navigateToSObject' |
| | | ); |
| | | sObjectEvent.setParams({ |
| | | recordId: sfId |
| | | }); |
| | | sObjectEvent.fire(); |
| | | } |
| | | }) |
| | | } else { |
| | | helper.ShowToast({ |
| | | message: rv.Message, |
| | | type: 'error' |
| | | }); |
| | | } |
| | | } else { |
| | | helper.ShowToast({ |
| | | message: 'Init error', |
| | | type: 'error' |
| | | }); |
| | | } |
| | | } |
| | | ); |
| | | }, |
| | | cancelClick : function(component, event, helper){ |
| | | $A.get("e.force:closeQuickAction").fire(); |
| | | cancelClick: function (component, event, helper) { |
| | | $A.get('e.force:closeQuickAction').fire(); |
| | | //component.set("v.showNewAgencyContact", false); |
| | | }, |
| | | searchAgencyContact : function(component, event, helper){ |
| | | searchAgencyContact: function (component, event, helper) { |
| | | component.find('button').set('v.disabled', true); |
| | | helper.resetTable(); |
| | | helper.preparePayloadForSearchAgencyContact(component, event, helper); |
| | | }, |
| | | initContactTable : function(component, event, helper){ |
| | | let cols = ['Name','AgencyHospital', 'DoctorDivision1','Type']; |
| | | initContactTable: function (component, event, helper) { |
| | | let cols = ['Name', 'AgencyHospital', 'DoctorDivision1', 'Type']; |
| | | let contactInfoList = []; |
| | | let awsDataIds = []; |
| | | let data = component.get('v.result'); |
| | | if(data.object){ |
| | | for(var i=0;i<data.object.length;i++){ |
| | | if(data.object[i].dataId){ |
| | | if (data.object) { |
| | | 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.DoctorDivision1 = data.object[i].doctorDivision1; |
| | | 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 = {}; |
| | | }, |
| | | openModel: function(component, event, helper) { |
| | | openModel: function (component, event, helper) { |
| | | 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' && !item.value){ |
| | | console.log('item.value = ' + item.value) |
| | | for (let s of layout) { |
| | | for (let c of s.layoutColumns) { |
| | | for (let item of c.layoutItems) { |
| | | if (item.field == 'Agency_Hospital__c' && !item.value) { |
| | | console.log('item.value = ' + item.value); |
| | | helper.ShowToast({ |
| | | "message" : "请先选择经销商医院", |
| | | "type" : "warning" |
| | | message: '请先选择经销商医院', |
| | | type: 'warning' |
| | | }); |
| | | return |
| | | return; |
| | | } else if ( |
| | | item.field == 'Agency_Hospital__c' && |
| | | item.value |
| | | ) { |
| | | component.set('v.agencyHospitalId', item.value); |
| | | console.log( |
| | | 'v.agencyHospitalId item.value = ' + item.value |
| | | ); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | // Set isModalOpen true |
| | | component.set("v.isModalOpen", true); |
| | | component.set('v.isModalOpen', true); |
| | | component.find('button').set('v.disabled', true); |
| | | helper.preparePayloadForSearchAgencyContact(component, event, helper); |
| | | }, |
| | | |
| | | closeModel: function(component, event, helper) { |
| | | }, |
| | | |
| | | closeModel: function (component, event, helper) { |
| | | // Set isModalOpen false |
| | | component.set("v.isModalOpen", false); |
| | | }, |
| | | |
| | | saveDetails: function(component, event, helper) { |
| | | //do something |
| | | component.set("v.isModalOpen", false); |
| | | }, |
| | | |
| | | showNewAgency: function(component, event, helper) { |
| | | //do something |
| | | component.set("v.showNewAgencyContact", true); |
| | | }, |
| | | closeAgencyContact: function(component, event, helper) { |
| | | var message = event.getParam("showNewAgencyContact"); |
| | | component.set("v.showNewAgencyContact", message); |
| | | component.set('v.isModalOpen', false); |
| | | }, |
| | | |
| | | saveDetails: function (component, event, helper) { |
| | | //do something |
| | | component.set('v.isModalOpen', false); |
| | | }, |
| | | |
| | | showNewAgency: function (component, event, helper) { |
| | | //do something |
| | | component.set('v.showNewAgencyContact', true); |
| | | }, |
| | | closeAgencyContact: function (component, event, helper) { |
| | | var message = event.getParam('showNewAgencyContact'); |
| | | component.set('v.showNewAgencyContact', message); |
| | | component.find('button').set('v.disabled', true); |
| | | helper.resetTable(); |
| | | helper.preparePayloadForSearchAgencyContact(component, event, helper); |
| | | }, |
| | | }) |
| | | } |
| | | }); |