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; OPDPlan__c; currentUserProfileId; error; NotSupportProfileId; @wire(getRecord, { recordId: USER_ID, fields: [USERPROFILE_ID]}) userDetails({error, data}) { console.log('222'); if (data) { this.currentUserProfileId = data.fields.ProfileId.value; console.log(this.currentUserProfileId); } else if (error) { this.error = error ; } } @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; } } } async connectedCallback(){ console.log('333'); await init({ recordId: this.recordId }).then(result=>{ this.OPDPlan__c=result; this.NoReportApplication(); }).catch(error=>{ console.log("error"); console.log(error); }); } async NoReportApplication() { //OPD计划状态 var status = this.OPDPlan__c.Status__c; console.log('status:'+this.OPDPlan__c.Status__c); console.log('ProfileId'); console.log(this.currentUserProfileId); this.NotSupportProfileId= await getProfileIdByName({Name : "系统管理员"}); //当前用户简档id var ProfileId = this.currentUserProfileId; console.log('不支持的简档Id'+this.NotSupportProfileId); //跳过系统管理员 if(status !='待提交报告'&& ProfileId != this.NotSupportProfileId){ this.dispatchEvent(new CloseActionScreenEvent()); this.dispatchEvent(event); return; } else{ this.dispatchEvent(new CloseActionScreenEvent()); 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'); } } }