import { LightningElement, track, wire, api } from 'lwc'; import { CurrentPageReference,NavigationMixin } from 'lightning/navigation'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import { CloseActionScreenEvent } from 'lightning/actions'; import init from '@salesforce/apex/lexReturnDeliveryController.init'; import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; import {loadStyle} from 'lightning/platformResourceLoader'; export default class lexReturnDeliverySlipConsumApply extends LightningElement { @api recordId; @wire(CurrentPageReference) getStateParameters(currentPageReference){ if(currentPageReference) { const urlValue = currentPageReference.state.recordId; if(urlValue) { let str = `${urlValue}`; this.recordId = str; } } } connectedCallback(){ Promise.all([ loadStyle(this,lwcCSS) ]); init({ recordId: this.recordId }).then(res=>{ if(res){ if(!res.flag){ this.showToast('未完成到货确认或备品中心未确认不能上传试用表','warning'); return; } if(res.size > 0){ this.openWindow().then(res=>{ this.dispatchEvent(new CloseActionScreenEvent()); }) }else{ this.showToast('没有明细','warning'); return; } } }) } showToast(msg,type) { if(type == 'success'){ const event = new ShowToastEvent({ message: msg, variant: type }); this.updateRecordView(this.recordId); this.dispatchEvent(event); this.dispatchEvent(new CloseActionScreenEvent()); }else{ const event = new ShowToastEvent({ message: msg, variant: type, mode: 'sticky' }); this.dispatchEvent(event); this.dispatchEvent(new CloseActionScreenEvent()); } } updateRecordView(recordId) { updateRecord({fields: { Id: recordId }}); } async openWindow(){ window.open("/apex/consumTrialConfirm?id=" + this.recordId); } }