KKbes
2023-08-11 f66abb6dad1b8caa18aca9d65dceb34a34c022b6
force-app/main/default/lwc/lexNoReportApplication/lexNoReportApplication.js
@@ -1,42 +1,29 @@
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 getProfileId from'@salesforce/apex/LexGetUserInfoUtils.getProfileId';
import { CloseActionScreenEvent } from 'lightning/actions';
 const event = new ShowToastEvent({
            title: '检查状态',
            message:
                '只有状态为待提交报告的OPD计划才能进行无报告申请',
            variant: 'error'
        });
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) {
@@ -45,47 +32,48 @@
           if (urlValue) {
             let str = `${urlValue}`;
             this.recordId = str;
           }
         }
     }
    
    async connectedCallback(){
       await init({
    connectedCallback(){
        init({
            recordId: this.recordId
        }).then(result=>{
            this.OPDPlan__c=result;
            this.NoReportApplication();
            this.NoReportApplication().then(result=>{
                this.IsLoading=false;
                this.dispatchEvent(new CloseActionScreenEvent());
            });
        }).catch(error=>{
            console.log("error");
            console.log(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(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');
   }
   }
       //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=700, top=200, left=400, toolbar=no, menubar=no, scrollbars=no, location=no, status=no');
       }
    }
}