import { LightningElement ,api, track, wire } from 'lwc'; import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; import {loadStyle} from 'lightning/platformResourceLoader'; import { CurrentPageReference } from "lightning/navigation"; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import init from'@salesforce/apex/LexNoReportApplicationController.initGetOpdData'; import getProfileIdByName from'@salesforce/apex/LexNoReportApplicationController.getProfileIdByName'; import getProfileId from'@salesforce/apex/LexGetUserInfoUtils.getProfileId'; import { CloseActionScreenEvent } from 'lightning/actions'; const event = new ShowToastEvent({ message: '只有状态为待提交报告的OPD计划才能进行无报告申请', variant: 'error', mode :'sticky' }); export default class lexNoReportApplication extends LightningElement { @api recordId; IsLoading=true; OPDPlan__c; NotSupportProfileId; @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(result=>{ this.OPDPlan__c=result; this.NoReportApplication().then(result=>{ this.IsLoading=false; this.dispatchEvent(new CloseActionScreenEvent()); }); }).catch(error=>{ const eventError = new ShowToastEvent({ message: error.message, variant: 'error', mode :'sticky' }); this.dispatchEvent(eventError); }); } async NoReportApplication() { //OPD计划状态 var status = this.OPDPlan__c.Status__c; this.NotSupportProfileId= await getProfileIdByName({Name : "系统管理员"}); //当前用户简档id var ProfileId = await getProfileId(); //跳过系统管理员 if(status !='待提交报告'&& ProfileId != this.NotSupportProfileId){ this.dispatchEvent(event); return; } else{ window.open ('/apex/OPDNoReportApplication?id='+this.OPDPlan__c.Id+'&name='+this.OPDPlan__c.Name, '无报告申请', 'height=400, width=900, top=200, left=400, toolbar=no, menubar=no, scrollbars=no, location=no, status=no'); } } }