From 8edba67a8b92dd25c8ef06d8429c08f37bf91692 Mon Sep 17 00:00:00 2001
From: zz <1842059105@qq.com>
Date: 星期五, 31 三月 2023 10:17:08 +0800
Subject: [PATCH] 提交授权申请提交和取消提交按钮

---
 force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.js-meta.xml |   11 ++
 force-app/main/default/lwc/lexApplicationSubmitButton/lexApplicationSubmitButton.js          |   83 ++++++++++++++++
 force-app/main/default/lwc/lexApplicationSubmitButton/lexApplicationSubmitButton.xml         |   11 ++
 force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.html        |    5 +
 force-app/main/default/classes/ApplicationButtonController.cls                               |   72 ++++++++++++++
 force-app/main/default/lwc/lexApplicationSubmitButton/lexApplicationSubmitButton.html        |    5 +
 force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.js          |   78 +++++++++++++++
 7 files changed, 265 insertions(+), 0 deletions(-)

diff --git a/force-app/main/default/classes/ApplicationButtonController.cls b/force-app/main/default/classes/ApplicationButtonController.cls
new file mode 100644
index 0000000..bb3b998
--- /dev/null
+++ b/force-app/main/default/classes/ApplicationButtonController.cls
@@ -0,0 +1,72 @@
+public class OppSubmitController {
+    @AuraEnabled
+    public static InitData initSubmitButton (String recordId){
+        InitData res = new initData();
+        try{
+            // Request_tedner_doc__c report = [SELECT 	OwnerId,Id,Product_discription__c,Status__c FROM Request_tedner_doc__c WHERE Id = :recordId LIMIT 1];
+            Request_tedner_doc__c report = [SELECT 	OwnerId,Id FROM Request_tedner_doc__c WHERE Id = :recordId LIMIT 1];
+            res.OwnerId = report.OwnerId;
+            res.Id = report.Id;
+            System.debug(LoggingLevel.INFO, '*** res: ' + res);
+        }catch(Exception e){
+            System.debug(LoggingLevel.INFO, '*** e: ' + e);
+        }
+        return res;
+    }
+
+    //鎺堟潈鐢宠鐨勬彁浜ゆ寜閽�
+    @AuraEnabled
+    public static String submit(String recordId) {
+       try {
+        // Request_tedner_doc__c rac = [SELECT 	Id,Status__c,Submit_check_flag__c,RecordTypeId,Submit_time__c,Request_target__c,Document_format__c,Bid_distributor__c,Product_discription__c,Tedner_date__c,Tender_active_day__c,tender_inactive_date__c,Tender_request_reason__c FROM Request_tedner_doc__c WHERE Id = :recordId LIMIT 1];
+        Request_tedner_doc__c rac = [SELECT 	Id,Status__c,Submit_check_flag__c,RecordTypeId,Submit_time__c FROM Request_tedner_doc__c WHERE Id = :recordId LIMIT 1];
+        rac.Status__c = '宸叉彁浜�';
+        rac.RecordTypeId = '01210000000RNXn';
+        rac.Submit_check_flag__c = true;
+        rac.Submit_time__c = Datetime.now();
+        update rac;
+        return '1';
+       } catch (Exception ex) {
+        System.debug(LoggingLevel.INFO, '*** xu: ' + ex);
+        return ex.getMessage();
+        // return ex.getMessage().split(',')[1];
+       } finally {
+
+       }
+    }
+
+    //鎺堟潈鐢宠鐨勫彇娑堟彁浜ゆ寜閽�
+    @AuraEnabled
+    public static String submitCancel(String recordId) {
+       try {
+        Request_tedner_doc__c report = [SELECT 	Id,Status__c,Submit_check_flag__c,RecordTypeId,Submit_time__c FROM Request_tedner_doc__c WHERE Id = :recordId LIMIT 1];
+        report.Status__c = '鑽夋涓�';
+        report.RecordTypeId = '01210000000RNXi';
+        report.Submit_check_flag__c = false;
+        report.Submit_time__c = null;
+        update report;
+        return '1';
+       } catch (Exception ex) {
+        System.debug(LoggingLevel.INFO, '*** cancelXu: ' + ex);
+        return ex.getMessage();
+       } finally {
+
+       }
+    }
+
+    public class InitData{
+        @AuraEnabled
+        public String Id;
+        @AuraEnabled
+        public String OwnerId;
+    }
+}
+
+    // if("{!Request_tedner_doc__c.OwnerId}" == "{!$User.Id}") {
+    //     var rac = new sforce.SObject("Request_tedner_doc__c");
+    //     rac.Id = "{!Request_tedner_doc__c.Id}";
+    //     rac.Status__c = "宸叉彁浜�";
+    //     rac.Submit_check_flag__c = "true";
+    //     rac.RecordTypeId = "01210000000RNXn";
+    //     var serverTimestamp = sforce.connection.getServerTimestamp();
+    //     rac.Submit_time__c = serverTimestamp.timestamp;
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.html b/force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.html
new file mode 100644
index 0000000..6a7e8a2
--- /dev/null
+++ b/force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.html
@@ -0,0 +1,5 @@
+<template>
+    <div class="CancelSubmitHolder" 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/lexApplicationCancelSubmit/lexApplicationCancelSubmit.js b/force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.js
new file mode 100644
index 0000000..dd8ac83
--- /dev/null
+++ b/force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.js
@@ -0,0 +1,78 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import  init  from '@salesforce/apex/ApplicationButtonController.initSubmitButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import submitCancel from '@salesforce/apex/ApplicationButtonController.submitCancel';
+export default class Submit extends LightningElement {
+    @api recordId;//OwnerId
+    ownerId;
+    monthlyReportId;
+    IsLoading = true;
+
+    @wire(CurrentPageReference)
+     getStateParameters(currentPageReference) {
+        console.log(currentPageReference);
+         if (currentPageReference) {
+           const urlValue = currentPageReference.state.recordId;
+           if (urlValue) {
+             let str = `${urlValue}`;
+             console.log("str:"+str);
+             this.recordId = str;
+           }
+         }
+     }
+    
+
+    connectedCallback(){
+        init({
+            recordId: this.recordId
+        }).then(result => {
+            if (result != null) {
+                this.IsLoading = false;
+                this.ownerId = result.OwnerId;
+                this.monthlyReportId = result.Id;
+                this.cancelSubmit();
+                this.dispatchEvent(new CloseActionScreenEvent());
+            }
+        }).catch(error => {
+            console.log("error"+error);
+        }).finally(() => {
+            
+        });        
+    }
+
+    cancelSubmit(){
+        submitCancel({
+            recordId: this.recordId
+        }).then(e=>{
+            if(e != "1"){
+                var messageage = "";
+                messageage = e.split(',')[1];
+                this.showToast("error",messageage,"error");
+            }else{
+                this.showToast("success","鍙栨秷鎻愪氦鎺堟潈淇℃伅鎴愬姛","success");
+                this.updateRecordView();
+            }
+        })
+    }
+
+
+    updateRecordView() {
+        console.log(this.recordId)
+        updateRecord({fields: { Id: this.recordId }});
+    }
+
+    showToast(title,msg,type) {
+        console.log(title,msg,type);
+        const event = new ShowToastEvent({
+            title: title,
+            message: msg,
+            variant: type
+        });
+        this.dispatchEvent(event);
+    }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.js-meta.xml b/force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.js-meta.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexApplicationCancelSubmit/lexApplicationCancelSubmit.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+	<apiVersion>54.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/lexApplicationSubmitButton/lexApplicationSubmitButton.html b/force-app/main/default/lwc/lexApplicationSubmitButton/lexApplicationSubmitButton.html
new file mode 100644
index 0000000..6a7e8a2
--- /dev/null
+++ b/force-app/main/default/lwc/lexApplicationSubmitButton/lexApplicationSubmitButton.html
@@ -0,0 +1,5 @@
+<template>
+    <div class="CancelSubmitHolder" 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/lexApplicationSubmitButton/lexApplicationSubmitButton.js b/force-app/main/default/lwc/lexApplicationSubmitButton/lexApplicationSubmitButton.js
new file mode 100644
index 0000000..1cbb7b8
--- /dev/null
+++ b/force-app/main/default/lwc/lexApplicationSubmitButton/lexApplicationSubmitButton.js
@@ -0,0 +1,83 @@
+import { LightningElement,wire,track,api} from 'lwc';
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+import { NavigationMixin } from 'lightning/navigation';
+import  init  from '@salesforce/apex/ApplicationButtonController.initSubmitButton';
+import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
+import submit  from '@salesforce/apex/ApplicationButtonController.submit';
+import { updateRecord } from 'lightning/uiRecordApi';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+export default class Submit extends LightningElement {
+    @api recordId;//OwnerId
+    ownerId;
+    monthlyReportId;
+    IsLoading = true;
+
+    @wire(CurrentPageReference)
+     getStateParameters(currentPageReference) {
+        console.log(currentPageReference);
+         if (currentPageReference) {
+           const urlValue = currentPageReference.state.recordId;
+           if (urlValue) {
+             let str = `${urlValue}`;
+             console.log("str:"+str);
+             this.recordId = str;
+           }
+         }
+     }
+    
+
+    connectedCallback(){
+        init({
+            recordId: this.recordId
+        }).then(result => {
+            if (result != null) {
+                this.IsLoading = false;
+                this.ownerId = result.OwnerId;
+                this.monthlyReportId = result.Id;
+                this.Submit();
+                this.dispatchEvent(new CloseActionScreenEvent());
+            }
+        }).catch(error => {
+            console.log("error"+error);
+        }).finally(() => {
+            
+        });        
+    }
+
+    Submit(){
+        submit({
+            recordId: this.recordId
+        }).then(e=>{
+            if(e != "1"){
+                var messageage = "";
+                if(e.split(',')[1].slice(-1) == '寮�'){
+                    messageage = e.split(',')[1] + "," + e.split(',')[2] + "," +  e.split(',')[3] + "," +  e.split(',')[4] + "," +  e.split(',')[5] + "," + e.split(',')[6];
+                }else{
+                    messageage = e.split(',')[1];
+                }
+                this.showToast("error",messageage,"error");
+            }else{
+                this.showToast("success","鎻愪氦鎺堟潈淇℃伅鎴愬姛","success");
+                this.updateRecordView();
+            }
+        }).catch(()=>{
+            alert("鍙巿鏉冪敵璇蜂功鎵�鏈変汉鍙互鎻愪氦");
+            this.showToast("error","鍙巿鏉冪敵璇蜂功鎵�鏈変汉鍙互鎻愪氦","error");
+        })
+    }
+
+
+    updateRecordView() {
+        updateRecord({fields: { Id: this.recordId }});
+    }
+
+    showToast(title,msg,type) {
+        const event = new ShowToastEvent({
+            title: title,
+            message: msg,
+            variant: type
+        });
+        this.dispatchEvent(event);
+    }
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexApplicationSubmitButton/lexApplicationSubmitButton.xml b/force-app/main/default/lwc/lexApplicationSubmitButton/lexApplicationSubmitButton.xml
new file mode 100644
index 0000000..2b7649d
--- /dev/null
+++ b/force-app/main/default/lwc/lexApplicationSubmitButton/lexApplicationSubmitButton.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+	<apiVersion>54.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