//author:kkbes 增加LexOpdCommitApprovalController
|
import { LightningElement, track, wire,api } from 'lwc';
|
import LightningConfirm from 'lightning/confirm';
|
import { CurrentPageReference } from "lightning/navigation";
|
import { CloseActionScreenEvent } from 'lightning/actions';
|
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
|
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
|
import {loadStyle} from 'lightning/platformResourceLoader';
|
import init from '@salesforce/apex/LexOpdCommitApprovalController.init';
|
import newUpdateCancelPostponePlan from '@salesforce/apex/LexOpdCommitApprovalController.newUpdateCancelPostponePlan';
|
import changeTrade from '@salesforce/apex/OpdPlanWebService.changeTrade';
|
|
|
|
const event1 = new ShowToastEvent({
|
message:
|
"只有取消或者延期报告状态才可以进行审批!",
|
variant : 'error',
|
mode : 'sticky'
|
});
|
export default class lexOPDCommitNeedApproval extends LightningElement {
|
|
@api recordId;
|
IsLoading=true;
|
CancelPostponePlan;
|
|
@wire(CurrentPageReference)
|
getStateParameters(currentPageReference) {
|
if (currentPageReference) {
|
const urlValue = currentPageReference.state.recordId;
|
if (urlValue) {
|
let str = `${urlValue}`;
|
this.recordId = str;
|
}
|
}
|
}
|
|
connectedCallback(){
|
Promise.all([
|
loadStyle(this, lwcCSS)
|
]);
|
init({
|
recordId: this.recordId
|
}).then(result => {
|
if (result != null) {
|
this.CancelPostponePlan = result;
|
this.OPDCommitApproval().then(result=>{
|
this.IsLoading=false;
|
this.dispatchEvent(new CloseActionScreenEvent());
|
});
|
}
|
}).catch(error => {
|
const event3 = new ShowToastEvent({
|
message:
|
error.message,
|
mode : 'sticky'
|
});
|
this.dispatchEvent(event3);
|
});
|
|
}
|
|
|
async OPDCommitApproval(){
|
var changeFlg=0;
|
var NowStatus = this.CancelPostponePlan.Status__c;
|
if(NowStatus == "取消" || NowStatus == "延期报告"){
|
var opdplanid = this.CancelPostponePlan.CancelOPDPlan__c; //学会id
|
var rtn = await changeTrade({opdplanId:opdplanid});
|
if (rtn != 'OK') {
|
const event = new ShowToastEvent({
|
message:
|
rtn,
|
variant : 'error',
|
mode : 'sticky'
|
});
|
this.dispatchEvent(event);
|
return;
|
}
|
}
|
if(NowStatus != "取消" && NowStatus != "延期报告"){
|
this.dispatchEvent(event1);
|
return;
|
}
|
const result = await LightningConfirm.open({
|
message: '一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?',
|
variant: 'headerless',
|
label: 'this is the aria-label value',
|
});
|
if(!result){
|
return;
|
}
|
await newUpdateCancelPostponePlan({Id : this.recordId ,Status : this.CancelPostponePlan.Status__c})
|
.then(result=>{
|
if(result!='success'){
|
const event2 = new ShowToastEvent({
|
message:
|
result,
|
variant : 'error',
|
mode : 'sticky'
|
});
|
changeFlg+=1;
|
this.dispatchEvent(event2);
|
}
|
else{
|
const event3 = new ShowToastEvent({
|
message: '提交审批成功' ,
|
variant : 'success'
|
});
|
this.dispatchEvent(event3);
|
}
|
});
|
if(changeFlg!=0){
|
return;
|
}
|
setTimeout(function(){
|
window.location.href = window.location;
|
}, 2000 )
|
}
|
|
}
|