// author:kkbes OPDPlanc_c 提交待审批 import LightningConfirm from 'lightning/confirm'; import { LightningElement, track, wire,api } from 'lwc'; 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/LexOPDSupplementaryController.init2'; import NewAndUpdateOPDStatus from '@salesforce/apex/LexOPDSupplementaryController.NewAndUpdateOPDStatus'; const event1 = new ShowToastEvent({ message: "只有草案中才可以进行提交审批!", variant : 'error', mode : 'sticky' }); const event2 = new ShowToastEvent({ message: "请上传文件证明!", variant : 'error', mode : 'sticky' }); const event3 = new ShowToastEvent({ message: "计划出借备品信息必须填写!", variant : 'error', mode : 'sticky' }); export default class lexOPDPlanCommitNeedApproval extends LightningElement { @api recordId; OPDPlan; IsLoading=true; @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.OPDPlan = result; this.commitNeedApproval().then(result=>{ this.IsLoading=false; this.dispatchEvent(new CloseActionScreenEvent()); }); } }).catch(error => { const eventInItError = new ShowToastEvent({ message: error.message, variant : 'error', mode : 'sticky' }); this.dispatchEvent(eventInItError); }); } async commitNeedApproval(){ var changeFlg=0; //0.当前状态(只有草案中才可以进行审批) var NowStatus = this.OPDPlan.opdPlanRecord.Status__c; //获取出借目的 var RentalReson__c = this.OPDPlan.opdPlanRecord.RentalReson__c; //获取附件证明 var AttachmentCertificate__c = this.OPDPlan.AttachmentCertificate__c; //获取是否需要填写报告书 var NeedReport = this.OPDPlan.opdPlanRecord.NeedReport__c; console.log('NowStatus>>>>>' + NowStatus); console.log('this.OPDPlan>>>>' + JSON.stringify(this.OPDPlan)); debugger; if(NowStatus != "草案中"){ this.dispatchEvent(event1); return; } if((RentalReson__c == '演示'||RentalReson__c == '无法进入手术室跟台') && !AttachmentCertificate__c && NeedReport=='否'){ this.dispatchEvent(event2); return; } // 计划出借备品信息必须填写 var PlanProdDetail = this.OPDPlan.PlanProdDetail__c; if(PlanProdDetail == '' || PlanProdDetail == undefined){ this.dispatchEvent(event3); return; } //2.提示 const result1 = await LightningConfirm.open({ message: '一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?', variant: 'headerless', label: 'this is the aria-label value', }); if(!result1){ return; } console.log('123123'); //2022-07-20 zyh var RentalReson = this.OPDPlan.RentalReson__c; var Related_Opportunity1_ID = this.OPDPlan.Related_Opportunity1_ID__c; var Related_Opportunity2_ID = this.OPDPlan.Related_Opportunity2_ID__c; if (RentalReson == "OPD" && (Related_Opportunity1_ID == undefined || Related_Opportunity1_ID == "" ) && (Related_Opportunity2_ID == undefined || Related_Opportunity2_ID == "" ) ){ const result2 = await LightningConfirm.open({ message: '无询价OPD申请将审批到副总裁', variant: 'headerless', label: 'this is the aria-label value', }); if(!result2){ return; } } console.log('12312312hhhh'); //2022-07-20 zyh await NewAndUpdateOPDStatus({Id : this.OPDPlan.Id}).then(result=>{ if(result!='success'){ const eventError = new ShowToastEvent({ message: result, variant :'error', mode : 'sticky' }); changeFlg+=1; this.dispatchEvent(eventError); } }); if(changeFlg!=0){ return; } //4. 进程生成器 //5. 重新刷新页面 setTimeout(function(){ window.location.href = window.location; }, 1500 ) } }