import { LightningElement,wire,track,api} from 'lwc'; import { CurrentPageReference, NavigationMixin} from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import init from '@salesforce/apex/LexConsumApply_FromCampaignCtl.init'; import rentalApp from '@salesforce/apex/LexConsumApply_FromCampaignCtl.rentalApp'; import UserInfo_Owner from '@salesforce/apex/LexConsumApply_FromCampaignCtl.UserInfo_Owner'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils'; export default class LexConsumApply_FromCampaign extends NavigationMixin(LightningElement) { @api recordId; IsLoading = true; @wire(CurrentPageReference) getStateParameters(currentPageReference) { console.log(111); console.log(currentPageReference); if (currentPageReference) { const urlValue = currentPageReference.state.recordId; if (urlValue) { let str = `${urlValue}`; console.log("str"); console.log(str); this.recordId = str; } } } connectedCallback(){ console.log(this.recordId); UserInfo_Owner({}).then(res=>{ if(res){ init({ recordId: this.recordId }).then(result => { this.IsLoading = false; var ups = res.userprovince.slice(0,2); if(res.isFormalStuff == 'true'){ this.showToast('试用期内,不能申请','error'); }else if(result.recordTypeId != result.servicetrainig && res.jobCategory == '销售服务'){ this.showToast('FSE不能申请该学会类型备品','error'); }else if((res.jobCategory == '销售服务' || res.jobCategory == '支援') && result.recordTypeId != result.servicetrainig && res.chargeProvince.indexOf((ups) == -1)){ this.showToast('与FSE所在省一致,才可使用备品','error'); }else if(result.status == '已结束'){ this.showToast('已结束,不能申请','error'); }else if(result.status == '已提交报告'){ this.showToast('已提交报告,不能申请','error'); }else if(result.status == '取消申请中'){ this.showToast('取消申请中,不能申请','error'); }else if(result.status == '取消'){ this.showToast('试用期内,不能申请','error'); }else{ rentalApp({}) .then(results=>{ var fieldmap = new Map(); for (var i=0; i< results.length; i++) { var record = results[i]; fieldmap.set(record.QualifiedApiName,record.DurableId.toString().split('.')[1]); } // var url = "{!$Site.Prefix}/" + prefix + "/e?retURL=%2F{!URLENCODE(Campaign.Id)}" // + "&CF" + fieldmap.get('Campaign__c') + "={!URLENCODE(Campaign.Name)}" // + "&CF" + fieldmap.get('Campaign__c') + "_lkid={!URLENCODE(Campaign.Id)}" // + "&Name={!URLENCODE('*')}" // + "&" + fieldmap.get('demo_purpose2__c') + "={!URLENCODE('学会展会')}" // + "&Name={!URLENCODE('*')}" // + "&CF" + fieldmap.get('Person_In_Charge__c') + "={!URLENCODE($User.LastName&' '&$User.FirstName)}" // + "&CF" + fieldmap.get('Person_In_Charge__c') + "_lkid={!URLENCODE($User.Id)}" // + "&CF" + fieldmap.get('applyUser__c') + "={!URLENCODE($User.LastName&' '&$User.FirstName)}" // + "&CF" + fieldmap.get('applyUser__c') + "_lkid={!URLENCODE($User.Id)}" // + ""; const defaultValues = encodeDefaultFieldValues({ Campaign__c: result.campaignId, Name:'*', demo_purpose2__c:'学会展会', Person_In_Charge__c:res.id, applyUser__c:res.id }); this[NavigationMixin.Navigate]({ type: 'standard__objectPage', attributes: { objectApiName: 'Consum_Apply__c', actionName: 'new' }, state:{ defaultFieldValues: defaultValues } }) }) } }) } }) } showToast(message, type) { const evt = new ShowToastEvent({ title: 'Error', message: message, variant: type }); this.dispatchEvent(evt); this.dispatchEvent(new CloseActionScreenEvent()); } }