import { LightningElement ,api, track, wire } from 'lwc'; import { CurrentPageReference } from "lightning/navigation"; import { getRecord } from 'lightning/uiRecordApi'; import USER_ID from '@salesforce/user/Id'; import USERPROFILE_ID from '@salesforce/schema/User.ProfileId'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import init from'@salesforce/apex/LexNoReportApplicationController.initGetOpdData'; import getProfileIdByName from'@salesforce/apex/LexNoReportApplicationController.getProfileIdByName'; import { CloseActionScreenEvent } from 'lightning/actions'; const event = new ShowToastEvent({ title: '检查状态', message: '只有状态为待提交报告的OPD计划才能进行无报告申请', }); export default class lexNoReportApplication extends LightningElement { @api recordId; IsLoading=true; OPDPlan__c; currentUserProfileId; error; NotSupportProfileId; @wire(getRecord, { recordId: USER_ID, fields: [USERPROFILE_ID]}) userDetails({error, data}) { if (data) { this.currentUserProfileId = data.fields.ProfileId.value; } else if (error) { this.error = error ; } } @wire(CurrentPageReference) getStateParameters(currentPageReference) { if (currentPageReference) { const urlValue = currentPageReference.state.recordId; if (urlValue) { let str = `${urlValue}`; this.recordId = str; } } } async connectedCallback(){ await 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({ title: '页面初始化错误', message: error.message, }); this.dispatchEvent(eventError); }); } async NoReportApplication() { //OPD计划状态 var status = this.OPDPlan__c.Status__c; this.NotSupportProfileId= await getProfileIdByName({Name : "系统管理员"}); //当前用户简档id var ProfileId = this.currentUserProfileId; //跳过系统管理员 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=700, top=200, left=400, toolbar=no, menubar=no, scrollbars=no, location=no, status=no'); } } }