/* * @Description: * @Author: [lijinhuan] * @Date: 2023-08-14 22:10:27 * @LastEditors: [lijinhuan] * @LastEditTime: 2023-10-21 23:08:12 */ import { LightningElement , wire, api} from 'lwc'; import { CurrentPageReference,NavigationMixin } from 'lightning/navigation'; import { CloseActionScreenEvent } from 'lightning/actions'; import { updateRecord } from 'lightning/uiRecordApi'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import LightningConfirm from 'lightning/confirm'; import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; import {loadStyle} from 'lightning/platformResourceLoader'; import submitApply from '@salesforce/apex/AssetMaintainHeaderWebService.submitApply'; import applyPermission from '@salesforce/apex/AssetMaintainHeaderWebService.applyPermission'; export default class LexAssetMaintainHeaderSubmitApprovalProcess extends LightningElement { @api recordId; IsLoading = true; url; @wire(CurrentPageReference) getStateParameters(currentPageReference) { if (currentPageReference) { this.url = currentPageReference.state.backgroundContext; const urlValue = currentPageReference.state.recordId; if (urlValue) { let str = `${urlValue}`; console.log("str:"+str); this.recordId = str; } } } connectedCallback(){ Promise.all([ loadStyle(this, lwcCSS) ]); applyPermission().then(res=>{ this.IsLoading = false; if(res=='false'){ this.showToast('没有提交申请的权限','error'); }else{ LightningConfirm.open({ message: "一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?", variant: 'headerless', label: '提示信息', }).then(result=>{ if(result){ submitApply({ amhId: this.recordId }).then(result=>{ if(result=='1'){ // this.updateRecordView(this.recordId); this.showToast('已提交','success'); }else{ this.showToast(result,'error'); } }) }else{ this.IsLoading = false; this.showToast('已取消','error'); } }) } }) } updateRecordView(recordId) { updateRecord({fields: { Id: recordId }}); } showToast(msg,type) { if(type == "success"){ const event = new ShowToastEvent({ message: msg, variant: type }); this.dispatchEvent(event); this.dispatchEvent(new CloseActionScreenEvent()); }else{ const event = new ShowToastEvent({ message: msg, variant: type, mode:'sticky' }); this.dispatchEvent(event); this.dispatchEvent(new CloseActionScreenEvent()); } if(type == 'success'){ window.open(this.url, "_self"); } // this.dispatchEvent(event); } }