//author:kkbes 增加LexOpdCommitApprovalController import { LightningElement, track, wire,api } from 'lwc'; import LightningConfirm from 'lightning/confirm'; import { CurrentPageReference } from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; import {loadStyle} from 'lightning/platformResourceLoader'; import init from '@salesforce/apex/LexOpdCommitApprovalController.init'; import newUpdateCancelPostponePlan from '@salesforce/apex/LexOpdCommitApprovalController.newUpdateCancelPostponePlan'; import changeTrade from '@salesforce/apex/OpdPlanWebService.changeTrade'; const event1 = new ShowToastEvent({ message: "只有取消或者延期报告状态才可以进行审批!", variant : 'error', mode : 'sticky' }); export default class lexOPDCommitNeedApproval extends LightningElement { @api recordId; IsLoading=true; CancelPostponePlan; @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 => { if (result != null) { this.CancelPostponePlan = result; this.OPDCommitApproval().then(result=>{ this.IsLoading=false; this.dispatchEvent(new CloseActionScreenEvent()); }); } }).catch(error => { const event3 = new ShowToastEvent({ message: error.message, mode : 'sticky' }); this.dispatchEvent(event3); }); } async OPDCommitApproval(){ var changeFlg=0; var NowStatus = this.CancelPostponePlan.Status__c; if(NowStatus == "取消" || NowStatus == "延期报告"){ var opdplanid = this.CancelPostponePlan.CancelOPDPlan__c; //学会id var rtn = await changeTrade({opdplanId:opdplanid}); if (rtn != 'OK') { const event = new ShowToastEvent({ message: rtn, variant : 'error', mode : 'sticky' }); this.dispatchEvent(event); return; } } if(NowStatus != "取消" && NowStatus != "延期报告"){ this.dispatchEvent(event1); return; } const result = await LightningConfirm.open({ message: '一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?', variant: 'headerless', label: 'this is the aria-label value', }); if(!result){ return; } await newUpdateCancelPostponePlan({Id : this.recordId ,Status : this.CancelPostponePlan.Status__c}) .then(result=>{ if(result!='success'){ const event2 = new ShowToastEvent({ message: result, variant : 'error', mode : 'sticky' }); changeFlg+=1; this.dispatchEvent(event2); } else{ const event3 = new ShowToastEvent({ message: '提交审批成功' , variant : 'success' }); this.dispatchEvent(event3); } }); if(changeFlg!=0){ return; } setTimeout(function(){ window.location.href = window.location; }, 2000 ) } }