import { LightningElement, wire, api } from 'lwc'; import { CurrentPageReference } from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import init from '@salesforce/apex/otherButtonRepairController.init'; import updateRepair from '@salesforce/apex/otherButtonRepairController.updateRepair'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; import {loadStyle} from 'lightning/platformResourceLoader' import LightningConfirm from 'lightning/confirm'; export default class LexOCSMToReportRepair extends LightningElement { @api recordId; str; IsLoading = true; Id; AwareDateC; OCSMAdministrativeReportStatusC; url; @wire(CurrentPageReference) getStateParameters(currentPageReference) { if (currentPageReference) { this.url = currentPageReference.state.backgroundContext; const urlValue = currentPageReference.state.recordId; if (urlValue) { let str = `${urlValue}`; this.recordId = str; } } } connectedCallback() { Promise.all([ loadStyle(this, lwcCSS) ]); console.log(this.recordId); this.IsLoading = false; init({ recordId: this.recordId }).then(result => { console.log(result); if (result != null) { this.IsLoading = false; this.Id = result.Id; this.AwareDateC = result.AwareDateC; this.OCSMAdministrativeReportStatusC = result.OCSMAdministrativeReportStatusC; this.OCSMToReport(); } }).catch(error => { console.log(error); }).finally(() => { }); } // OCSM要报告 OCSMToReport() { LightningConfirm.open({ message: "报告后无法撤回,是否继续?", variant: 'headerless', label: '提示信息' }).then(submit => { if(!submit){ this.dispatchEvent(new CloseActionScreenEvent()); return; }else{ if (this.OCSMAdministrativeReportStatusC == undefined && this.AwareDateC != undefined) { updateRepair({ recordId: this.Id, ocsm:'待报告' }).then(result => { console.log(result); if (result.length > 0) { var split = result.split(", "); this.ShowToastEvent(split[1]); } this.dispatchEvent(new CloseActionScreenEvent()); window.open(this.url,'_self'); }) } else { this.ShowToastEvent("没有AwareDate或已经OCSM行政报告,请确认。", "error") return; } } }) } // 弹窗 ShowToastEvent(msg, type) { if(type == 'success'){ const event = new ShowToastEvent({ message: msg, variant: type }); this.dispatchEvent(event); }else{ const event = new ShowToastEvent({ message: msg, variant: type, mode:'Sticky' }); this.dispatchEvent(event); } this.dispatchEvent(new CloseActionScreenEvent()); } }