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 canAddMc from '@salesforce/apex/lexToAddMaintenanceContractController.canAddMc'; import getContractType from '@salesforce/apex/lexToAddMaintenanceContractController.getContractType'; export default class lexToAddMaintenanceContractBtn extends LightningElement { @api recordId; IsLoading = true; contractType; @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) ]); console.log(this.recordId); getContractType({ recordId: this.recordId }).then(result => { console.log(result); this.contractType = result; this.toAddMcPage(); }).catch(error => { console.log(error); }); } toAddMcPage() { canAddMc({ recordId: this.recordId }).then(result => { console.log('canAddMc:'+result); this.IsLoading = false; this.dispatchEvent(new CloseActionScreenEvent()); if (result=='3'){ // this.showToast('若要重新添加或删除小合同,请重新做报价组合','error'); alert('若要重新添加或删除小合同,请重新做报价组合'); //zzm 20231214 阿里云bug修复 window.open ('/apex/ToAddMC?id='+this.recordId+'&contractType='+this.contractType, '_self'); }else if(result=='2'){ this.showToast('该打包合同下已存在决定的报价组合,不能添加或删除小合同','error'); return; } else { window.open ('/apex/ToAddMC?id='+this.recordId+'&contractType='+this.contractType, '_self'); } }).catch(error => { console.log(error); }); this.IsLoading = false; this.dispatchEvent(new CloseActionScreenEvent()); } showToast(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); } } } // old js /*var foo = function() { var mcpid = '{!MaintanceContractPack__c.Id}'; console.log('mcpid ='+mcpid); var result = sforce.apex.execute("TotalPriceWebService","canAddMc",{recordId: mcpid}); if (result=='3'){ alert('若要重新添加或删除小合同,请重新做报价组合'); }else if(result=='2'){ alert('该打包合同下已存在决定的报价组合,不能添加或删除小合同'); return; } window.open ('/apex/ToAddMC?id={!MaintanceContractPack__c.Id}&contractType={!MaintanceContractPack__c.Contract_Type__c}', '_self'); }; foo();*/