//author : kkbes add lexSubAuthorizedButtonController import { LightningElement, track, wire,api } from 'lwc'; import { CurrentPageReference } from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import LightningConfirm from 'lightning/confirm'; import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; import {loadStyle} from 'lightning/platformResourceLoader'; const event1 = new ShowToastEvent({ message: "已经取消!!", variant : 'error', mode :'sticky' }); const event2 = new ShowToastEvent({ message: "已取消", variant : 'success' }); import init from '@salesforce/apex/lexSubAuthorizedButtonController.init'; import updateStatuById from '@salesforce/apex/lexSubAuthorizedButtonController.updateStatuById'; export default class lexCancelSubAuthorizedButton extends LightningElement { @api recordId; SubAuthorized; 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.SubAuthorized = result; this.Cancle().then(result=>{ this.IsLoading=false; this.dispatchEvent(new CloseActionScreenEvent()); setTimeout(function(){ window.location.href = window.location; }, 1000 ) }); } }).catch(error => { const eventInItError = new ShowToastEvent({ message: error.message, variant : 'error' }); this.dispatchEvent(eventInItError); }); } async Cancle(){ var Status = this.SubAuthorized.Status__c; if(Status =='已取消'){ this.dispatchEvent(event1); return; } if(Status !='草案中' && Status !='申请中' && Status !='已批准'){ const event3 = new ShowToastEvent({ message: Status +'状态不能取消', variant : 'error', mode :'sticky' }); this.dispatchEvent(event3); return; } await updateStatuById({Id : this.recordId}).then(result=>{ if(result!='success'){ const eventError = new ShowToastEvent({ message: result, variant : 'error', mode :'sticky' }); this.dispatchEvent(eventError); return; } else{ this.dispatchEvent(event2); } }); } }