From 8d006ac357a60d77f086c37f2ae7338530a607f2 Mon Sep 17 00:00:00 2001
From: chenjingwu <chenjingwu@prec-tech.com>
Date: 星期四, 11 四月 2024 15:30:55 +0800
Subject: [PATCH] 123

---
 force-app/main/default/lwc/lexRequestDB/lexRequestDB.js |  130 +++++++++++++++++++++++++++++--------------
 1 files changed, 87 insertions(+), 43 deletions(-)

diff --git a/force-app/main/default/lwc/lexRequestDB/lexRequestDB.js b/force-app/main/default/lwc/lexRequestDB/lexRequestDB.js
index b3ddb3a..605b790 100644
--- a/force-app/main/default/lwc/lexRequestDB/lexRequestDB.js
+++ b/force-app/main/default/lwc/lexRequestDB/lexRequestDB.js
@@ -4,8 +4,11 @@
 import init  from '@salesforce/apex/OpportunityLightingButtonController.initForRequestDBButton';
 import { updateRecord } from 'lightning/uiRecordApi';
 import { ShowToastEvent } from 'lightning/platformShowToastEvent';
-
-export default class LexRequestDB extends LightningElement {
+import { NavigationMixin } from 'lightning/navigation';
+import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
+import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
+import {loadStyle} from 'lightning/platformResourceLoader';
+export default class LexRequestDB extends NavigationMixin(LightningElement) {
     @api recordId;
     stageName;
     sapSendOK;
@@ -18,6 +21,10 @@
     salesAssistantName;
     salesAssistantID;
     profileId;
+    systemProfileId;
+    s1ProfileId;
+    s4ProfileId;
+    recordTypeId;
     @wire(CurrentPageReference)
     getStateParameters(currentPageReference) {
             console.log(111);
@@ -34,34 +41,42 @@
         }
     }
     connectedCallback(){
+        Promise.all([
+            loadStyle(this, lwcCSS)
+           ]);
         init({
             recordId: this.recordId
         }).then(result=>{
-            this.stageName = result.stageName;
-            this.sapSendOK = result.sapSendOK;
-            this.cntLostCancelReport = result.cntLostCancelReport;
-            this.cntLostCancelDraft = result.cntLostCancelDraft;
-            this.agency1 = result.agency1;
-            this.agency1Id = result.agency1Id;
-            this.name = result.name;
-            this.bidPlannedDate = result.bidPlannedDate;
-            this.salesAssistantName = result.salesAssistantName;
-            this.salesAssistantID = result.salesAssistantID;
-            this.profileId = result.profileId;
+            console.log(result);
+            this.stageName = result.stageName == undefined ? '' : result.stageName;
+            this.sapSendOK = result.sapSendOK == undefined ? '' : result.sapSendOK;
+            this.cntLostCancelReport = result.cntLostCancelReport == undefined ? '' : result.cntLostCancelReport;
+            this.cntLostCancelDraft = result.cntLostCancelDraft == undefined ? '' : result.cntLostCancelDraft;
+            this.agency1 = result.agency1 == undefined ? '' : result.agency1;
+            this.agency1Id = result.agency1Id == undefined ? '' : result.agency1Id;
+            this.name = result.name == undefined ? '' : result.name;
+            this.bidPlannedDate = result.bidPlannedDate == undefined ? '' : result.bidPlannedDate.replace(/-/g, '/');;
+            this.salesAssistantName = result.salesAssistantName == undefined ? '' : result.salesAssistantName;
+            this.salesAssistantID = result.salesAssistantID == undefined ? '' : result.salesAssistantID;
+            this.profileId = result.profileId == undefined ? '' : result.profileId;
+            this.systemProfileId = result.systemProfileId == undefined ? '' : result.systemProfileId;
+            this.s1ProfileId = result.s1ProfileId == undefined ? '' : result.s1ProfileId;
+            this.s4ProfileId = result.s4ProfileId == undefined ? '' : result.s4ProfileId;
+            this.recordTypeId = result.recordTypeId == undefined ? '' : result.recordTypeId;
             this.requestDB();
         })
     }
     requestDB(){
         var profileId = this.profileId;
-        if (profileId != '00e10000000Y3o5' && profileId != '00e10000000xnp2' &&
-        profileId != '00e10000000xnpH') {
+        if (profileId != this.systemProfileId && profileId != this.s1ProfileId &&
+        profileId != this.s4ProfileId) {
             this.showToast("鎮ㄦ病鏈夋巿鏉冨鎵樼殑鏉冮檺銆傝鑱旂郴绯荤粺绠$悊鍛樸��","error");
         }
         // js銇牬鍚堛�佺炕瑷炽仌銈屻仧鍊ゃ亴銇с倠銇仹銆佽娉ㄦ剰
         else if (this.stageName != '寮曞悎'
         && this.stageName != '璇环'
         ) {
-            this.showToast("鐘舵��1:" + this.stageName + "銆佷笉鑳藉仛鎺堟潈鐢宠锛�","");
+            this.showToast("鐘舵��1:" + this.stageName + "銆佷笉鑳藉仛鎺堟潈鐢宠锛�","error");
         }
         else if (this.sapSendOK == '1') {
             this.showToast("宸茬粡涓婁紶SAP銆佷笉鑳藉仛鎺堟潈鐢宠浜嗭紒","error");
@@ -70,36 +85,65 @@
             this.showToast("璇环宸茬粡鏈夊彇娑堬紡澶卞崟鎶ュ憡浜嗭紒","error");
         }
         else {
-        location.href = '/a2C/e?retURL=%2F' + 
-            encodeURI(this.recordId) +
-            '&RecordType=01210000000RNXi' +
-            '&CF00N10000006QdJz=' +
-            encodeURI(this.agency1) +
-            '&CF00N10000006QdJz_lkid=' +
-            encodeURI(this.agency1Id) +
-            '&CF00N10000006QdKn=' +
-            encodeURI(this.name) +
-            '&CF00N10000006QdKn_lkid=' +
-            encodeURI(this.recordId) +
-            '&00N10000006QdK4=' +
-            encodeURI(this.name) +
-            '&00N10000006QdYB=' +
-            encodeURI(this.bidPlannedDate) +
-            '&CF00N10000006QdZT=' +
-            encodeURI(this.salesAssistantName) +
-            '&CF00N10000006QdZT_lkid=' +
-            encodeURI(this.salesAssistantID) +
-            '';
-        };
+        // location.href = '/a2C/e?retURL=%2F' + 
+        //     encodeURI(this.recordId) +
+        //     '&RecordType=01210000000RNXi' +
+        //     '&CF00N10000006QdJz=' +
+        //     encodeURI(this.agency1) +
+        //     '&CF00N10000006QdJz_lkid=' +
+        //     encodeURI(this.agency1Id) +
+        //     '&CF00N10000006QdKn=' +
+        //     encodeURI(this.name) +
+        //     '&CF00N10000006QdKn_lkid=' +
+        //     encodeURI(this.recordId) +
+        //     '&00N10000006QdK4=' +
+        //     encodeURI(this.name) +
+        //     '&00N10000006QdYB=' +
+        //     encodeURI(this.bidPlannedDate) +
+        //     '&CF00N10000006QdZT=' +
+        //     encodeURI(this.salesAssistantName) +
+        //     '&CF00N10000006QdZT_lkid=' +
+        //     encodeURI(this.salesAssistantID) +
+        //     '';
+            const defaultValues = encodeDefaultFieldValues({
+                Bid_distributor__c: this.agency1Id,
+                Prospect_name__c: this.recordId,
+                Product_discription__c: this.name,
+                Tedner_date__c: this.bidPlannedDate,
+                Request_target__c: this.salesAssistantID
+            });
+            this[NavigationMixin.Navigate]({
+                type: 'standard__objectPage',
+                attributes: {
+                    objectApiName: 'Request_tedner_doc__c',
+                    actionName: 'new'
+                },
+                state: {
+                    nooverride: '1',
+                    defaultFieldValues: defaultValues,
+                    RecordTypeId: this.recordTypeId,
+                }
+            });
+        }
         this.dispatchEvent(new CloseActionScreenEvent());
     }
     showToast(msg,type) {
-      const event = new ShowToastEvent({
-          title: '',
-          message: msg,
-          variant: type
-      });
-      this.dispatchEvent(event);
+        if(type == 'success'){
+            const event = new ShowToastEvent({
+                message: msg,
+                variant: type,
+            });
+            this.dispatchEvent(event);
+            this.dispatchEvent(new CloseActionScreenEvent());
+        }else{
+            const event = new ShowToastEvent({
+                message: msg,
+                variant: type,
+                mode: 'sticky'
+            });
+            this.dispatchEvent(event);
+            this.dispatchEvent(new CloseActionScreenEvent());
+        }   
     }
     updateRecordView(recordId) {
       updateRecord({fields: { Id: recordId }});

--
Gitblit v1.9.1