import { LightningElement,api, track, wire } from 'lwc'; import {CurrentPageReference} from 'lightning/navigation'; import { CloseActionScreenEvent } from 'lightning/actions'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import { NavigationMixin } from 'lightning/navigation'; import init from '@salesforce/apex/MonthlyClaimsChangeController.init'; import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils'; import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; import {loadStyle} from 'lightning/platformResourceLoader' export default class LexMonthlyClaimsChange extends NavigationMixin(LightningElement) { @api recordId; IsLoading=true; @wire(CurrentPageReference) getStateParameters(currentPageReference){ console.log("进入页面"); console.log(currentPageReference); if(currentPageReference){ const urvalue=currentPageReference.state.recordId; if(urvalue){ let str=`${urvalue}`; console.log('str'); console.log(str); this.recordId=str; } } } connectedCallback(){ Promise.all([ loadStyle(this, lwcCSS) ]); init({recordId:this.recordId}).then(result=>{ console.log('result==========',result); this.IsLoading = false; if(result!=null){ if (result.dealerTypeSum == '特约经销商') { if (result.monthlyPayment == true) { if (result.records.length > 0) { if (result.records[0].status__c == '草案中') { this.showToast('已提交草稿请尽快提交审批','error'); } else { this.showToast('无法创建!已有未最终批准的数据','error'); }; } else { const defaultFieldValues = encodeDefaultFieldValues({ Account__c:this.recordId, }); console.log(defaultFieldValues) this[NavigationMixin.Navigate]({ type: 'standard__objectPage', attributes: { objectApiName: 'Advance_Payment__c', actionName:'new' }, state:{ defaultFieldValues:defaultFieldValues, recordTypeId:result.recordTypeId } }); } } else { this.showToast("您已取消月度标识,无需重复操作",'error'); }; } else { this.showToast("请联系服务本部审核后变更标识",'error'); return; } } this.dispatchEvent(new CloseActionScreenEvent()); }).catch(err=>{ console.log("error:====",err); console.log(err); }) } showToast(msg, type) { if(type == 'success'){ const event = new ShowToastEvent({ message: msg, variant: type }); this.dispatchEvent(event); }else{ const event = new ShowToastEvent({ message: msg, variant: type, mode:'Sticky' }); this.dispatchEvent(event); } this.dispatchEvent(new CloseActionScreenEvent()); } }