From c70a86737bd658fb68196006e93b3bfc36018d5f Mon Sep 17 00:00:00 2001
From: liwentao <1376563863@qq.com>
Date: 星期三, 19 七月 2023 09:31:30 +0800
Subject: [PATCH] 营业 事件按钮: 提前 延期 取消

---
 force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.js          |   94 +++++++++++++
 force-app/main/default/classes/LexEventCancelController.cls            |   45 ++++++
 force-app/main/default/lwc/lexEventDelay/lexEventDelay.js              |  104 ++++++++++++++
 force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.html        |    5 
 force-app/main/default/lwc/lexEventDelay/lexEventDelay.html            |    5 
 force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.js-meta.xml |   11 +
 force-app/main/default/lwc/lexEventCancel/lexEventCancel.html          |    5 
 force-app/main/default/lwc/lexEventCancel/lexEventCancel.js-meta.xml   |   11 +
 force-app/main/default/lwc/lexEventCancel/lexEventCancel.js            |  100 ++++++++++++++
 force-app/main/default/classes/LexEventCancelController.cls-meta.xml   |    5 
 force-app/main/default/lwc/lexEventDelay/lexEventDelay.js-meta.xml     |   11 +
 11 files changed, 396 insertions(+), 0 deletions(-)

diff --git a/force-app/main/default/classes/LexEventCancelController.cls b/force-app/main/default/classes/LexEventCancelController.cls
new file mode 100644
index 0000000..029e1f5
--- /dev/null
+++ b/force-app/main/default/classes/LexEventCancelController.cls
@@ -0,0 +1,45 @@
+public with sharing class LexEventCancelController {
+    public LexEventCancelController() {
+        
+    }
+    @AuraEnabled
+    public static Event init(String recordId){
+        
+        try{
+        	Event res=[SELECT Id,EventC_ID__c,Task_ID__c,StartDateTime,EventStatus__c from Event where id= :recordId];
+            if(res.Task_ID__c==null)res.Task_ID__c='';
+            if(res.EventStatus__c==null)res.EventStatus__c='';
+            if(res.EventC_ID__c==null)res.EventC_ID__c='';
+        	return res;
+        }catch(Exception e){
+            System.debug(LoggingLevel.INFO,'LexEventCancelController Error : ' + e);
+        }
+        return null;
+    }
+    @AuraEnabled
+    public static Task__c getTaskC(String recordId) {
+        if(String.isBlank(recordId))return null;
+       try{
+        	Task__c res=[SELECT id,taskStatus__c,taskDifferent__c FROM Task__c where id = :recordId];
+        	return res;
+        }catch(Exception e){
+            System.debug(LoggingLevel.INFO,'Rental_Apply__c Cancel Error : ' + e);
+        }
+        return null;
+    }
+        @AuraEnabled
+    public static List<Task__c> getTaskC1(String recordId) {
+       try{
+        	List<Task__c> res=[select id from task__c where id = :recordId and taskStatus__c = '03 瀹屾垚' ];
+        	return res;
+        }catch(Exception e){
+            System.debug(LoggingLevel.INFO,'Rental_Apply__c Cancel Error : ' + e);
+        }
+        return null;
+    }
+    
+    public class InitData{
+    	@AuraEnabled public String EventCIDC {get;set;}
+    	@AuraEnabled public String TaskIDC {get;set;}
+    }
+}
\ No newline at end of file
diff --git a/force-app/main/default/classes/LexEventCancelController.cls-meta.xml b/force-app/main/default/classes/LexEventCancelController.cls-meta.xml
new file mode 100644
index 0000000..d75b058
--- /dev/null
+++ b/force-app/main/default/classes/LexEventCancelController.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+    <apiVersion>51.0</apiVersion>
+    <status>Active</status>
+</ApexClass>
diff --git a/force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.html b/force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.html
new file mode 100644
index 0000000..c444cc3
--- /dev/null
+++ b/force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.html
@@ -0,0 +1,5 @@
+<template>
+    <div class="Attachment" if:true={IsLoading}>
+        <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+    </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.js b/force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.js
new file mode 100644
index 0000000..1ed1efa
--- /dev/null
+++ b/force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.js
@@ -0,0 +1,94 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import LightningConfirm from 'lightning/confirm';
+
+import init from '@salesforce/apex/LexEventCancelController.init';
+import getTaskC1 from '@salesforce/apex/LexEventCancelController.getTaskC1';
+export default class lexEventAdvance extends LightningElement {
+	@api recordId;
+	@api isDoneRendering;
+    IsLoading=true;
+    QuoteIraiId;
+   	EventC_ID__c;
+   	Task_ID__c;
+   	StartDateTime;
+   	EventStatus__c;
+    @wire(CurrentPageReference)
+	getStateParameters(currentPageReference){
+		console.log("杩涘叆椤甸潰");
+		console.log(currentPageReference);
+		if(currentPageReference){
+			const urvalue=currentPageReference.state.recordId;
+			if(urvalue){
+				let str=`${urvalue}`;
+				this.recordId=str;
+			}
+		}
+	}
+
+
+
+	connectedCallback(){
+		this.dispatchEvent(new CloseActionScreenEvent());
+		init({recordId:this.recordId}).then(result=>{
+			this.EventC_ID__c=result.EventC_ID__c;
+			this.Task_ID__c=result.Task_ID__c;
+			this.StartDateTime=result.StartDateTime;
+			this.EventStatus__c=result.EventStatus__c;
+			this.QuoteIraiId=result.Id;
+			this.cancelSubmit().then(res=>{
+				this.IsLoading=false;
+			銆�銆�	const passOneEvent = new CustomEvent('closem', {
+			銆�銆�銆�銆�detail: '111'
+			銆�銆�});
+			銆�銆�this.dispatchEvent(passOneEvent);
+			});	
+		}).catch(err=>{
+			// console.log("error:");
+			// console.log(err.message);
+		}).finally(()=>{
+			this.dispatchEvent(new CloseActionScreenEvent());
+		});
+	}
+
+
+ 
+    async cancelSubmit(){
+		//2021-07-28 mzy update
+		//鍒ゆ柇鏄惁鏈夌敓鎴愭姤鍛婁竴瑙�
+		var IsHasEventC = this.EventC_ID__c==''?false:true;
+		//2021-07-28 mzy update
+		//2021-10-08 mzy 浠诲姟绠$悊鏀瑰杽 宸插畬鎴愮殑浠诲姟,浜嬩欢椤甸潰鍜屾棩鎶ラ〉闈笉鍏佽淇敼 start
+		var TaskCount = await getTaskC1({recordId:this.Task_ID__c});
+		if(TaskCount!=null&&TaskCount.size>0){
+			// alert('涓婄骇鍒嗛厤鐨勪换鍔′笉鑳藉彇娑�');
+			const event = new ShowToastEvent({
+	            title: '鎻愮ず淇℃伅',
+	            message:"鎿嶄綔澶辫触:"+'	',
+	        });		
+	        this.dispatchEvent(event);
+		}else{
+			var date=new Date();
+			if((date > this.StartDateTime)  || IsHasEventC && (date =  this.StartDateTime)){
+				const event = new ShowToastEvent({
+		            title: '鎻愮ず淇℃伅',
+		            message:"鎿嶄綔澶辫触:"+'涓嶅厑璁镐慨鏀逛粖澶╁強浠ュ墠鐨勪簨浠�',
+		        });		
+	        	this.dispatchEvent(event);
+			}else if(this.EventStatus__c!=null && this.EventStatus__c!='' && this.EventStatus__c != '02 鎺ュ彈' ){
+				const event = new ShowToastEvent({
+		            title: '鎻愮ず淇℃伅',
+		            message:"鎿嶄綔澶辫触:"+'涓嶅厑璁镐慨鏀规湰浜嬩欢',
+		        });		
+	        	this.dispatchEvent(event);
+			}else{
+				var url= "/apex/SimpleEventRegister?Id="+this.recordId;
+				window.open(url,'lexEventAdvance', 'width=1000,height=500');
+			}
+		//2021-10-08 mzy 浠诲姟绠$悊鏀瑰杽 宸插畬鎴愮殑浠诲姟,浜嬩欢椤甸潰鍜屾棩鎶ラ〉闈笉鍏佽淇敼 end
+		}
+    }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.js-meta.xml b/force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.js-meta.xml
new file mode 100644
index 0000000..0bf4ff9
--- /dev/null
+++ b/force-app/main/default/lwc/lexEventAdvance/lexEventAdvance.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexEventAdvance">
+    <apiVersion>51.0</apiVersion>
+    <isExposed>true</isExposed>
+	<targets>
+		<target>lightning__RecordPage</target>
+		<target>lightning__AppPage</target>
+		<target>lightning__HomePage</target>
+		<target>lightning__RecordAction</target>
+	</targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEventCancel/lexEventCancel.html b/force-app/main/default/lwc/lexEventCancel/lexEventCancel.html
new file mode 100644
index 0000000..c444cc3
--- /dev/null
+++ b/force-app/main/default/lwc/lexEventCancel/lexEventCancel.html
@@ -0,0 +1,5 @@
+<template>
+    <div class="Attachment" if:true={IsLoading}>
+        <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+    </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEventCancel/lexEventCancel.js b/force-app/main/default/lwc/lexEventCancel/lexEventCancel.js
new file mode 100644
index 0000000..b64e2fa
--- /dev/null
+++ b/force-app/main/default/lwc/lexEventCancel/lexEventCancel.js
@@ -0,0 +1,100 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import LightningConfirm from 'lightning/confirm';
+
+import init from '@salesforce/apex/LexEventCancelController.init';
+import getTaskC from '@salesforce/apex/LexEventCancelController.getTaskC';
+export default class lexEventCancel extends LightningElement {
+	@api recordId;
+	@api isDoneRendering;
+    IsLoading=true;
+    QuoteIraiId;
+   	EventC_ID__c;
+   	Task_ID__c;
+   	StartDateTime;
+   	EventStatus__c;
+    @wire(CurrentPageReference)
+	getStateParameters(currentPageReference){
+		console.log("杩涘叆椤甸潰");
+		console.log(currentPageReference);
+		if(currentPageReference){
+			const urvalue=currentPageReference.state.recordId;
+			if(urvalue){
+				let str=`${urvalue}`;
+				this.recordId=str;
+			}
+		}
+	}
+
+
+
+	connectedCallback(){
+		this.dispatchEvent(new CloseActionScreenEvent());
+		init({recordId:this.recordId}).then(result=>{
+			this.EventC_ID__c=result.EventC_ID__c;
+			this.Task_ID__c=result.Task_ID__c;
+			this.StartDateTime=result.StartDateTime;
+			this.EventStatus__c=result.EventStatus__c;
+			this.QuoteIraiId=result.Id;
+			this.cancelSubmit().then(res=>{
+				this.IsLoading=false;
+			銆�銆�	const passOneEvent = new CustomEvent('closem', {
+			銆�銆�銆�銆�detail: '111'
+			銆�銆�});
+			銆�銆�this.dispatchEvent(passOneEvent);
+			});	
+		}).catch(err=>{
+			// console.log("error:");
+			// console.log(err.message);
+		}).finally(()=>{
+			this.dispatchEvent(new CloseActionScreenEvent());
+		});
+	}
+
+
+ 
+    async cancelSubmit(){
+		//2021-07-28 mzy update
+		//鍒ゆ柇鏄惁鏈夌敓鎴愭姤鍛婁竴瑙�
+		var IsHasEventC = this.EventC_ID__c==''?false:true;
+		//2021-07-28 mzy update
+		//2021-10-08 mzy 浠诲姟绠$悊鏀瑰杽 宸插畬鎴愮殑浠诲姟,浜嬩欢椤甸潰鍜屾棩鎶ラ〉闈笉鍏佽淇敼 start
+		var TaskCount = await getTaskC({recordId:this.Task_ID__c});
+		if(TaskCount!=null&&TaskCount.taskDifferent__c == '涓婄骇鍒嗛厤浠诲姟'){
+			const event = new ShowToastEvent({
+	            title: '鎻愮ず淇℃伅',
+	            message:"鎿嶄綔澶辫触:"+'涓婄骇鍒嗛厤鐨勪换鍔′笉鑳藉彇娑�',
+	        });		
+	        this.dispatchEvent(event);
+		}else if(TaskCount!=null&&TaskCount.taskStatus__c == '03 瀹屾垚'){
+			const event = new ShowToastEvent({
+	            title: '鎻愮ず淇℃伅',
+	            message:"鎿嶄綔澶辫触:"+'宸插畬鎴愮殑浠诲姟涓嶈兘淇敼',
+	        });		
+	        this.dispatchEvent(event);
+		}else{
+			var date=new Date();
+			if( ( date > this.StartDateTime )  || IsHasEventC && ( date =  this.StartDateTime ) ){
+				// alert('涓嶅厑璁镐慨鏀逛粖澶╁強浠ュ墠鐨勪簨浠�');
+				const event = new ShowToastEvent({
+		            title: '鎻愮ず淇℃伅',
+		            message:"鎿嶄綔澶辫触:"+'涓嶅厑璁镐慨鏀逛粖澶╁強浠ュ墠鐨勪簨浠�',
+		        });		
+	        	this.dispatchEvent(event);
+			}else if(this.EventStatus__c!=null && this.EventStatus__c!='' && this.EventStatus__c != '02 鎺ュ彈' ){
+				// alert('涓嶅厑璁镐慨鏀规湰浜嬩欢');
+				const event = new ShowToastEvent({
+		            title: '鎻愮ず淇℃伅',
+		            message:"鎿嶄綔澶辫触:"+'涓嶅厑璁镐慨鏀规湰浜嬩欢',
+		        });		
+	        	this.dispatchEvent(event);
+			}else{
+				window.open("/apex/EventHandle?Id="+this.recordId+"&isEventCancel=true",'lexEventCancel');
+			}
+		//2021-10-08 mzy 浠诲姟绠$悊鏀瑰杽 宸插畬鎴愮殑浠诲姟,浜嬩欢椤甸潰鍜屾棩鎶ラ〉闈笉鍏佽淇敼 end
+		}
+    }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEventCancel/lexEventCancel.js-meta.xml b/force-app/main/default/lwc/lexEventCancel/lexEventCancel.js-meta.xml
new file mode 100644
index 0000000..273c22d
--- /dev/null
+++ b/force-app/main/default/lwc/lexEventCancel/lexEventCancel.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexEventCancel">
+    <apiVersion>51.0</apiVersion>
+    <isExposed>true</isExposed>
+	<targets>
+		<target>lightning__RecordPage</target>
+		<target>lightning__AppPage</target>
+		<target>lightning__HomePage</target>
+		<target>lightning__RecordAction</target>
+	</targets>
+</LightningComponentBundle>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEventDelay/lexEventDelay.html b/force-app/main/default/lwc/lexEventDelay/lexEventDelay.html
new file mode 100644
index 0000000..c444cc3
--- /dev/null
+++ b/force-app/main/default/lwc/lexEventDelay/lexEventDelay.html
@@ -0,0 +1,5 @@
+<template>
+    <div class="Attachment" if:true={IsLoading}>
+        <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+    </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEventDelay/lexEventDelay.js b/force-app/main/default/lwc/lexEventDelay/lexEventDelay.js
new file mode 100644
index 0000000..f443905
--- /dev/null
+++ b/force-app/main/default/lwc/lexEventDelay/lexEventDelay.js
@@ -0,0 +1,104 @@
+import { LightningElement,api, track, wire } from 'lwc';
+import {CurrentPageReference} from 'lightning/navigation';
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import LightningConfirm from 'lightning/confirm';
+
+import init from '@salesforce/apex/LexEventCancelController.init';
+import getTaskC from '@salesforce/apex/LexEventCancelController.getTaskC';
+export default class lexEventDelay extends LightningElement {
+	@api recordId;
+	@api isDoneRendering;
+    IsLoading=true;
+    QuoteIraiId;
+   	EventC_ID__c;
+   	Task_ID__c;
+   	StartDateTime;
+   	EventStatus__c;
+    @wire(CurrentPageReference)
+	getStateParameters(currentPageReference){
+		console.log("杩涘叆椤甸潰");
+		console.log(currentPageReference);
+		if(currentPageReference){
+			const urvalue=currentPageReference.state.recordId;
+			if(urvalue){
+				let str=`${urvalue}`;
+				this.recordId=str;
+			}
+		}
+	}
+
+
+
+	connectedCallback(){
+		this.dispatchEvent(new CloseActionScreenEvent());
+		init({recordId:this.recordId}).then(result=>{
+			this.EventC_ID__c=result.EventC_ID__c;
+			if(result.Task_ID__c==null)this.Task_ID__c='';
+			else this.Task_ID__c=result.Task_ID__c;
+			this.StartDateTime=result.StartDateTime;
+			this.EventStatus__c=result.EventStatus__c;
+			this.QuoteIraiId=result.Id;
+			this.cancelSubmit().then(res=>{
+				console.log(res);
+				this.IsLoading=false;
+			銆�銆�	const passOneEvent = new CustomEvent('closem', {
+			銆�銆�銆�銆�detail: '111'
+			銆�銆�});
+			銆�銆�this.dispatchEvent(passOneEvent);
+			});	
+		}).catch(err=>{
+			// console.log("error:");
+			// console.log(err.message);
+		}).finally(()=>{
+			this.dispatchEvent(new CloseActionScreenEvent());
+		});
+	}
+
+
+ 
+    async cancelSubmit(){
+		//2021-07-28 mzy update
+		//鍒ゆ柇鏄惁鏈夌敓鎴愭姤鍛婁竴瑙�
+		var IsHasEventC = this.EventC_ID__c==''?false:true;
+		//2021-07-28 mzy update
+		//2021-10-08 mzy 浠诲姟绠$悊鏀瑰杽 宸插畬鎴愮殑浠诲姟,浜嬩欢椤甸潰鍜屾棩鎶ラ〉闈笉鍏佽淇敼 start
+		var TaskCount = await getTaskC({recordId:this.Task_ID__c});
+		if(TaskCount!=null&&TaskCount.taskDifferent__c == '涓婄骇鍒嗛厤浠诲姟'){
+		// if(TaskCount!=null&&TaskCount.taskDifferent__c == '涓诲姩浠诲姟'){
+			const event = new ShowToastEvent({
+	            variant: 'error',
+	            message:"鎿嶄綔澶辫触:"+'涓婄骇鍒嗛厤鐨勪换鍔′笉鑳藉欢鏈�',
+	        });		
+	        this.dispatchEvent(event);
+		}else if(TaskCount!=null&&TaskCount.taskStatus__c == '03 瀹屾垚'){
+			const event = new ShowToastEvent({
+	            variant: 'error',
+	            message:"鎿嶄綔澶辫触:"+'宸插畬鎴愮殑浠诲姟涓嶈兘淇敼',
+	        });		
+	        this.dispatchEvent(event);
+		}else{
+			var date=new Date();
+			if((date > this.StartDateTime)  || IsHasEventC && (date =  this.StartDateTime)){
+				const event = new ShowToastEvent({
+		            variant: 'error',
+		            message:"鎿嶄綔澶辫触:"+'涓嶅厑璁镐慨鏀逛粖澶╁強浠ュ墠鐨勪簨浠�',
+		        });		
+	        	this.dispatchEvent(event);
+			}else if(this.EventStatus__c!=null && this.EventStatus__c!='' && this.EventStatus__c != '02 鎺ュ彈' ){
+
+				const event = new ShowToastEvent({
+		            variant: 'error',
+		            message:"鎿嶄綔澶辫触:"+'涓嶅厑璁镐慨鏀规湰浜嬩欢',
+		        });		
+	        	this.dispatchEvent(event);
+			}else{
+				var url= "/apex/EventHandle?Id="+this.recordId+"&isEventDelay=true";
+				window.open(url,'lexEventDelay');
+				// window.open("/apex/EventHandle?Id="+this.recordId+"&isEventDelay=true",'lexEventCancel', 'width=1000,height=500');
+			}
+			//2021-07-28 mzy update
+		}
+    }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexEventDelay/lexEventDelay.js-meta.xml b/force-app/main/default/lwc/lexEventDelay/lexEventDelay.js-meta.xml
new file mode 100644
index 0000000..8bf7707
--- /dev/null
+++ b/force-app/main/default/lwc/lexEventDelay/lexEventDelay.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexEventDelay">
+    <apiVersion>51.0</apiVersion>
+    <isExposed>true</isExposed>
+	<targets>
+		<target>lightning__RecordPage</target>
+		<target>lightning__AppPage</target>
+		<target>lightning__HomePage</target>
+		<target>lightning__RecordAction</target>
+	</targets>
+</LightningComponentBundle>
\ No newline at end of file

--
Gitblit v1.9.1