//kkbes
|
//增加LexCommitNeedApprovalController 更改OpdPlanWebService
|
import LightningConfirm from 'lightning/confirm';
|
import { LightningElement, track, wire,api } from 'lwc';
|
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/LexCommitNeedApprovalController.init';
|
import newUpdateMeetingDelayApply from '@salesforce/apex/LexCommitNeedApprovalController.newUpdateMeetingDelayApply';
|
import getCampaignById from '@salesforce/apex/LexCommitNeedApprovalController.getCampaignById';
|
import changeCampaign from '@salesforce/apex/OpdPlanWebService.changeCampaign';
|
import getRecordIdByName from '@salesforce/apex/LexSubmitCampaignController.getRecordIdByName';
|
|
const event1 = new ShowToastEvent({
|
message:
|
"只有状态为草案中或者驳回时才可以进行提交审批!",
|
variant : 'error' ,
|
mode : 'sticky'
|
});
|
const event2 = new ShowToastEvent({
|
message:
|
"已经取消!",
|
variant : 'error',
|
mode : 'sticky'
|
});
|
const event4 = new ShowToastEvent({
|
message:
|
"该活动信息已发送到智慧医疗,请确认后再操作",
|
variant : 'warning' ,
|
mode : 'sticky'
|
});
|
const event5 = new ShowToastEvent({
|
message:
|
"会议结束,不能取消!",
|
variant : 'error',
|
mode : 'sticky'
|
});
|
|
export default class lexCommitNeedApproval extends LightningElement {
|
|
@api recordId;
|
MeetingDelayApply;
|
IsLoading=true;
|
Campaign;
|
|
|
@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.MeetingDelayApply = result;
|
console.log(this.MeetingDelayApply);
|
this.commitNeedApproval().then(result=>{
|
this.IsLoading=false;
|
this.dispatchEvent(new CloseActionScreenEvent());
|
});
|
}
|
}).catch(error => {
|
console.log(error);
|
const event3 = new ShowToastEvent({
|
message:
|
error,
|
variant : 'error'
|
});
|
this.dispatchEvent(event3);
|
});
|
|
}
|
|
|
async commitNeedApproval(){
|
var changeFlg=0;
|
var NowStatus = this.MeetingDelayApply.status__c;
|
var needRecordTypeId = await getRecordIdByName({Name : '取消申请'})
|
if(NowStatus == "草案中" || NowStatus == "驳回"){
|
var campaignId = this.MeetingDelayApply.campaign__c; //学会id
|
this.Campaign = await getCampaignById({recordId : campaignId});
|
console.log(this.Campaign);
|
|
if(this.MeetingDelayApply.RecordTypeId != needRecordTypeId){
|
var rtn = await changeCampaign({campaignId:campaignId});
|
if (rtn != 'OK') {
|
const event = new ShowToastEvent({
|
message:
|
rtn,
|
variant : 'error',
|
mode : 'sticky'
|
});
|
this.dispatchEvent(event);
|
return;
|
}
|
}
|
|
}
|
console.log(this.MeetingDelayApply.status__c);
|
//1.当前状态(只有取消或者延期报告状态才可以进行审批)
|
if(NowStatus != "草案中" && NowStatus != "驳回"){
|
this.dispatchEvent(event1);
|
return;
|
}
|
//20230711 lt DB202306243540 P:学会取消合并 start
|
//alert('{!Campaign.Status}');
|
if(this.Campaign.Status =='取消'){
|
this.dispatchEvent(event2);
|
return;
|
}
|
|
// && {!meeting_delay_apply__c.RecordTypeId} == '0126D000003OY8S'
|
//alert('{!meeting_delay_apply__c.RecordTypeId}');
|
if(this.Campaign.Status !='草案中' && this.Campaign.Status !='公开中'
|
&& this.Campaign.Status !='取消'
|
&& this.MeetingDelayApply.RecordTypeId == needRecordTypeId){
|
const event3 = new ShowToastEvent({
|
message : this.Campaign.Status +'状态不能取消' ,
|
variant : 'error',
|
mode : 'sticky'
|
});
|
this.dispatchEvent(event3);
|
return;
|
}
|
|
|
if(this.Campaign.IF_Submit__c != 0){
|
this.dispatchEvent(event4);
|
}
|
var date=new Date().toISOString();
|
console.log(date);
|
console.log(date>=this.Campaign.EndDate);
|
if(this.Campaign.Status =='公开中' && date>=this.Campaign.EndDate
|
&& this.MeetingDelayApply.RecordTypeId == needRecordTypeId){
|
this.dispatchEvent(event5);
|
return;
|
}
|
//20230711 lt DB202306243540 P:学会取消合并 end
|
//2.提示
|
const result = await LightningConfirm.open({
|
message: '一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?',
|
variant: 'headerless',
|
label: 'this is the aria-label value',
|
});
|
if(!result){
|
return;
|
}
|
//3.状态改为 提交
|
if(NowStatus == "草案中" || NowStatus == "驳回"){
|
await newUpdateMeetingDelayApply({Id : this.recordId })
|
.then(result=>{
|
if(result!='success'){
|
const event2 = new ShowToastEvent({
|
message:
|
result,
|
variant : 'error',
|
mode : 'sticky'
|
});
|
changeFlg+=1;
|
this.dispatchEvent(event2);
|
}
|
});
|
}
|
if(changeFlg!=0){
|
return;
|
}
|
|
//4. 进程生成器
|
|
//5. 重新刷新页面
|
setTimeout(function(){
|
window.location.href = window.location;
|
}, 1500 )
|
}
|
|
|
|
}
|