import { LightningElement, wire, api } from 'lwc'; import { CurrentPageReference } from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import init from '@salesforce/apex/buttonRepairSubOrderCtl.init'; import { NavigationMixin } from 'lightning/navigation'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; export default class lexApplyForRepair extends NavigationMixin(LightningElement) { @api recordId; str; IsLoading = true; Id; StatusC; @wire(CurrentPageReference) getStateParameters(currentPageReference) { if (currentPageReference) { const urlValue = currentPageReference.state.recordId; if (urlValue) { let str = `${urlValue}`; this.recordId = str; } } } connectedCallback() { init({ recordId: this.recordId }).then(result => { // console.log(result); if (result != null) { this.IsLoading = false; this.Id = result.Id; this.StatusC = result.StatusC; this.ApplyForRepair(); this.dispatchEvent(new CloseActionScreenEvent()); } }).catch(error => { console.log(error); }) } //申请修理 ApplyForRepair() { var status = this.StatusC; if (status != '待处理') { this.ShowToastEvent("报修子单的状态不是 待处理 无法申请修理", "error") return; } const paramMap = { Id: this.recordId// 添加参数到URL中,替换paramName和paramValue为实际的参数名和值 }; this[NavigationMixin.Navigate]({ type: 'standard__webPage', attributes: { url: '/lightning/n/Tab5', target: '_blank' // 替换为你的自定义页面的API名称或URL }, state: { params: JSON.stringify(paramMap) } }); // var url = '/apex/ChoiceAsset?Id=' + this.Id + '&Type=Repair'; // window.open(url, '申请修理', 'height=700, width=1000, top=200, left=200, toolbar=no, menubar=no, scrollbars=no, location=no, status=no'); } ShowToastEvent(msg, type) { const event = new ShowToastEvent({ title: '', message: msg, variant: type }); this.dispatchEvent(event); } }