import { LightningElement,wire,track,api} from 'lwc'; import { CurrentPageReference } from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import { NavigationMixin } from 'lightning/navigation'; import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils'; import init from '@salesforce/apex/QISReportController.initForlexQISSCButton'; import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; import {loadStyle} from 'lightning/platformResourceLoader'; /* * @Description: QIS市场部意见 * @Author: hql * @Date: 2023-07-12 09:45:19 * @LastEditTime: 2023-07-12 15:44:33 * @LastEditors: */ export default class lexQISSC extends NavigationMixin(LightningElement) { @api recordId; IsLoading = true; qisReportId; name1; profileName; qISSCId; qISSCReport; nextaction; qISMarketCategory; err; @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 () { Promise.all([ loadStyle(this, lwcCSS) ]); init({ recordId: this.recordId }).then(result => { this.IsLoading = false; this.qisReportId = result.Id; this.name1 = result.name; this.qISSCId = result.qISSCId; this.qISSCReport = result.qISSCReport; this.nextaction = result.nextaction; this.qISMarketCategory = result.qISMarketCategory; this.profileName = result.profileName; console.log('name1='+this.name1); console.log('result.name='+result.name); if (this.profileName == '2F4_技术推进部' || this.profileName == '2F4_技术推进部_OSH 非单点') { const evt = new ShowToastEvent({ title : '', message: '您没有新建QIS市场部权限。', variant: 'error', mode: 'sticky' }); this.dispatchEvent(evt); this.dispatchEvent(new CloseActionScreenEvent()); return; } if (this.qISSCReport!=null) { var urlPrefix = window.location.protocol + '//' + window.location.host+'/'+this.qISSCId; window.open(urlPrefix); this.dispatchEvent(new CloseActionScreenEvent()); return; }else{ if (this.nextaction == '送回' && (this.qISMarketCategory == 'ET' || this.qISMarketCategory == 'ENG' || this.qISMarketCategory == 'EndoRapid')) { // var urlStr ='/a3w/e?CF00N100000095xFJ='+this.name+ // '&CF00N100000095xFJ_lkid='+this.qisReportId+ // '&retURL='+this.qisReportId+ // '&Name='+this.name; // window.open(urlStr); const defaultFieldValues =encodeDefaultFieldValues({ Name:this.name1, QIS_Report__c:this.qisReportId }); this[NavigationMixin.Navigate]({ type: 'standard__objectPage', attributes: { objectApiName: 'QIS_SC_Report__c', actionName: 'new' }, state: { nooverride: '1', defaultFieldValues: defaultFieldValues } }); this.dispatchEvent(new CloseActionScreenEvent()); return; }else{ console.log('触发'); const evt = new ShowToastEvent({ title : '', message: '对应方法为返回且对应主机/消耗品为ET 或 ENG 或 EndoRapid 时,才可以新建。', variant: 'error', mode: 'sticky' }); this.dispatchEvent(evt); this.dispatchEvent(new CloseActionScreenEvent()); return; } } }).catch(error => { console.log('error='+error); }).finally(() => { }); } }