/* * @Description: * @version: * @Author: chen jing wu * @Date: 2023-03-27 13:47:21 * @LastEditors: chen jing wu * @LastEditTime: 2023-04-11 16:44:49 */ import { api, wire,LightningElement } from 'lwc'; import { CurrentPageReference } from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import init from '@salesforce/apex/ReportController.initForCancelButton'; import updateForCancelButton from '@salesforce/apex/ReportController.updateForCancelButton'; import { updateRecord } from 'lightning/uiRecordApi'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; export default class LexCancel extends LightningElement { @api recordId; status; IsLoading = true; @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; } } } connectedCallback(){ console.log(this.recordId); init({ recordId: this.recordId }).then(result => { console.log(result); if (result != null) { this.status = result.status; console.log(this.status); this.cancel(); } }).catch(error => { console.log("error"); console.log(error); }); } showToast(msg,type) { const event = new ShowToastEvent({ title: '', message: msg, variant: type }); this.dispatchEvent(event); } updateRecordView(recordId) { updateRecord({fields: { Id: recordId }}); } cancel () { if (this.status == "取消") { this.showToast("已经取消!","error"); this.dispatchEvent(new CloseActionScreenEvent()); return; } if (this.status == "批准") { this.showToast("已经批准,不能删除!","error"); this.dispatchEvent(new CloseActionScreenEvent()); return; } if (this.status == "完毕") { this.showToast("已经完毕,不能删除!","error"); this.dispatchEvent(new CloseActionScreenEvent()); return; } if (this.status == "提交") { this.showToast("已经提交,不能删除!","error"); this.dispatchEvent(new CloseActionScreenEvent()); return; } updateForCancelButton({ recordId: this.recordId }).then(result =>{ if(result){ this.showToast(result,"error"); }else{ this.showToast("取消成功!","success"); this.updateRecordView(this.recordId); } this.IsLoading = false; this.dispatchEvent(new CloseActionScreenEvent()); }); } }