import { api, wire,LightningElement } from 'lwc';
|
import { CurrentPageReference } from "lightning/navigation";
|
import { CloseActionScreenEvent } from 'lightning/actions';
|
import updateSubmitSolutionSchemeForApprovalButton from '@salesforce/apex/lexSolutionProgrammeController.updateSubmitSolutionSchemeForApprovalButton';
|
import submitApproval from '@salesforce/apex/lexSolutionProgrammeController.submitApproval';
|
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';
|
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
|
import {loadStyle} from 'lightning/platformResourceLoader';
|
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;
|
}
|
}
|
}
|
|
updateRecordView(recordId) {
|
updateRecord({fields: { Id: recordId }});
|
}
|
|
connectedCallback(){
|
Promise.all([
|
loadStyle(this, lwcCSS)
|
]);
|
init({
|
recordId: this.recordId
|
}).then(result=>{
|
console.log(result);
|
this.schemeType = 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){
|
console.log(this.schemeType);
|
console.log(this.confirmationResult);
|
if(this.schemeType == '结案' && (this.confirmationResult == '' || this.confirmationResult == undefined)){
|
this.showToast('结案方案提交前,方案采纳结果必填','error');
|
this.dispatchEvent(new CloseActionScreenEvent());
|
return;
|
}
|
console.log('this.schemeType:'+this.schemeType);
|
if((this.records.length > 0 && this.schemeType == '结案') || (this.schemeType == '初次')){
|
// submitApproval({recordId:this.recordId}).then(rep => {
|
// console.log(rep);
|
// if(rep==='OK'){
|
// console.log('1');
|
// this.showToast('提交审批成功','success');
|
// }else{
|
// console.log('2');
|
// this.showToast(rep,'error');
|
// }
|
// }).catch(err => {
|
// console.log('3');
|
// console.log(err);
|
// this.showToast(err,'error');
|
// })
|
updateSubmitSolutionSchemeForApprovalButton({
|
recordId: this.recordId
|
}).then(res=>{
|
if(res){
|
this.showToast(res,'error');
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}else{
|
window.location.href = '/lightning/r/Solution_Programme__c/'+this.recordId+'/view';
|
}
|
});
|
}else{
|
this.showToast('结案的方案提交前,必须上传结案附件','error');
|
this.dispatchEvent(new CloseActionScreenEvent());
|
return;
|
}
|
// window.location.reload();
|
}else{
|
this.dispatchEvent(new CloseActionScreenEvent());
|
return;
|
}
|
}
|
showToast(msg, type) {
|
const event = new ShowToastEvent({
|
message: msg,
|
variant: type
|
});
|
this.dispatchEvent(event);
|
this.dispatchEvent(new CloseActionScreenEvent());
|
if(type==='success'){
|
window.location.href = '/lightning/r/Solution_Programme__c/'+this.recordId+'/view';
|
}
|
}
|
}
|