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 USER_ID from '@salesforce/user/Id';
|
const event1 = new ShowToastEvent({
|
message:
|
"You have already added this Campaign!",
|
variant : 'error',
|
mode :'sticky'
|
});
|
const event2 = new ShowToastEvent({
|
message:
|
"success",
|
variant : 'success'
|
});
|
import init from '@salesforce/apex/LexSubmitCampaignController.initAddToCalender';
|
import getCampaignEvent from '@salesforce/apex/LexSubmitCampaignController.getCampaignEvent';
|
|
import addCampaignEvent from '@salesforce/apex/LexSubmitCampaignController.addCampaignEvent';
|
|
export default class lexAddToCalender extends LightningElement {
|
@api recordId;
|
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.Campaign = result;
|
console.log(this.Campaign);
|
this.addToCalender().then(result=>{
|
this.IsLoading=false;
|
this.dispatchEvent(new CloseActionScreenEvent());
|
const passOneEvent = new CustomEvent('closem', {
|
detail: '111'
|
});
|
this.dispatchEvent(passOneEvent);
|
});
|
}
|
}).catch(error => {
|
const eventInItError = new ShowToastEvent({
|
message:
|
error.message,
|
variant : 'error',
|
mode :'sticky'
|
});
|
this.dispatchEvent(eventInItError);
|
});
|
|
}
|
|
async addToCalender(){
|
var startDay__0 = new Date(this.Campaign.StartDate);
|
var startDay = new Date(startDay__0.getTime() + (24 * 60 * 60 * 1000));
|
var endDay__0 = new Date(this.Campaign.EndDate);
|
var endDay = new Date(endDay__0.getTime() + (24 * 60 * 60 * 1000));
|
await getCampaignEvent({ Id: this.recordId,userId:USER_ID}).then(result =>{
|
if(result.length>0){
|
this.dispatchEvent(event1);
|
}
|
else{
|
addCampaignEvent({StartDateTime :startDay,EndDateTime:endDay,
|
whatid:this.Campaign.Id,Subject:this.Campaign.Name}).then(result=>{
|
if(result=='success'){
|
this.dispatchEvent(event2);
|
// location.href = "/"+this.Campaign.Id;
|
setTimeout(function () {
|
//2秒后执行刷新
|
window.location.reload();
|
}, 2000); //单位是毫秒
|
}
|
else{
|
const event3 = new ShowToastEvent({
|
message : "failed to create:" + result,
|
variant : 'error',
|
mode :'sticky'
|
})
|
this.dispatchEvent(event3);
|
}
|
})
|
}
|
})
|
|
}
|
|
}
|