import { LightningElement,wire,track,api} from 'lwc'; import { CurrentPageReference } from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import { NavigationMixin } from 'lightning/navigation'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import init from '@salesforce/apex/QISReportController.initForlexOCSMToReportLightingButton'; import updateQis from '@salesforce/apex/QISReportController.updateQisForlexOCSMToReportLighting'; import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner'; import { updateRecord } from 'lightning/uiRecordApi'; export default class lexOCSMToReportLighting extends LightningElement { @api recordId; str; err; IsLoading = true; qisReportId; OCSMAdministrativeReportStatus; Awaredate; @wire(CurrentPageReference) getStateParameters(currentPageReference) { if (currentPageReference) { const urlValue = currentPageReference.state.recordId; if (urlValue) { let str = `${urlValue}`; this.recordId = str; } } } connectedCallback() { console.log(this.recordId); init({ recordId: this.recordId }).then(result => { console.log(result); this.IsLoading = false; this.OCSMAdministrativeReportStatus = result.oCSMAdministrativeReportStatus; this.qisReportId = result.Id; this.Awaredate = result.awaredate; if (!confirm("不要报告后无法撤回,是否继续?")) { this.dispatchEvent(new CloseActionScreenEvent()); return; } if (this.OCSMAdministrativeReportStatus == null && this.Awaredate!=null) { this.updateQisSubmit(); }else{ const evt = new ShowToastEvent({ title : '没有AwareDate或已经OCSM行政报告,请确认', message: '', variant: 'error' }); this.dispatchEvent(evt); this.dispatchEvent(new CloseActionScreenEvent()); return; } }).catch(error => { console.log(error); }).finally(() => { }); } updateRecordView(recordId) { updateRecord({fields: { Id: recordId }}); } updateQisSubmit(){ updateQis({ recordId: this.recordId }).then(result =>{ console.log('result'+result); this.err = result; if (result!='成功') { const evt = new ShowToastEvent({ title : '更新失败', message: this.err, variant: 'error' }); this.dispatchEvent(evt); } this.dispatchEvent(new CloseActionScreenEvent()); this.updateRecordView(this.recordId); }).catch(error => { console.log('error='+error); }).finally(() => { }); } }