/* * @Description: * @version: * @Author: chen jing wu * @Date: 2023-06-21 09:17:25 * @LastEditors: chen jing wu * @LastEditTime: 2023-07-07 16:35:41 */ import { api, wire,LightningElement } from 'lwc'; import { CurrentPageReference } from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import updateSubmitSolutionSchemeForApprovalButton from '@salesforce/apex/lexSolutionProgrammeController.updateSubmitSolutionSchemeForApprovalButton'; import init from '@salesforce/apex/lexSolutionProgrammeController.initSubmitSolutionSchemeForApprovalButton'; import queryForAttachments from '@salesforce/apex/lexSolutionProgrammeController.queryForAttachments'; import { updateRecord } from 'lightning/uiRecordApi'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import LightningConfirm from 'lightning/confirm'; export default class LexSubmitSolutionSchemeForApproval extends LightningElement { @api recordId; schemeType; confirmationResult; records; @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; } } } showToast(msg,type) { const event = new ShowToastEvent({ title: '', message: msg, variant: type }); this.dispatchEvent(event); } updateRecordView(recordId) { updateRecord({fields: { Id: recordId }}); } connectedCallback(){ init({ recordId: this.recordId }).then(result=>{ this.schemeType = result.schemeType == undefined ? result.schemeType : ''; this.confirmationResult = result.confirmationResult == undefined ? result.confirmationResult : ''; this.submitSolutionSchemeForApproval(); }); } submitSolutionSchemeForApproval(){ queryForAttachments({ Id: this.recordId }).then(result=>{ this.records = result; this.handleConfirmClick('一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?'); }); } async handleConfirmClick(msg) { const result = await LightningConfirm.open({ message: msg, variant: 'headerless', label: 'this is the aria-label value', }); console.log(result); if(result){ if(this.schemeType == '结案' && this.confirmationResult == ''){ this.showToast('结案方案提交前,方案采纳结果必填','error'); this.dispatchEvent(new CloseActionScreenEvent()); return; } if((this.records.length > 0 && this.schemeType == '结案') || (this.schemeType == '初次')){ updateSubmitSolutionSchemeForApprovalButton({ recordId: this.recordId }).then(result=>{ if(result){ this.showToast(result,'error'); }else{ this.updateRecordView(this.recordId); } this.dispatchEvent(new CloseActionScreenEvent()); }); }else{ this.showToast('结案的方案提交前,必须上传结案附件','error'); this.dispatchEvent(new CloseActionScreenEvent()); return; } // window.location.reload(); }else{ this.dispatchEvent(new CloseActionScreenEvent()); return; } } }