From 962519811b7c4be07f30d09e791798b0ea79d3ae Mon Sep 17 00:00:00 2001
From: 黄千龙 <huangqianlong@prec-tech.com>
Date: 星期三, 08 三月 2023 09:54:02 +0800
Subject: [PATCH] 同步代码

---
 force-app/main/default/classes/RentalApplyTriggerHandler.cls |   16 ++++++++++++++--
 1 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/force-app/main/default/classes/RentalApplyTriggerHandler.cls b/force-app/main/default/classes/RentalApplyTriggerHandler.cls
index d9fa0d3..4803b23 100644
--- a/force-app/main/default/classes/RentalApplyTriggerHandler.cls
+++ b/force-app/main/default/classes/RentalApplyTriggerHandler.cls
@@ -241,6 +241,7 @@
         List<Rental_Apply__Share> rasList = new List<Rental_Apply__Share>();
         List<Id> deleteOfficeAssistantShare_nObjId_List = new List<Id>();       // 鍏变韩鍒犻櫎鐢�
         List<Id> deleteApplyUserShare_nObjId_List = new List<Id>();// 20210727 ljh SFDC-C54C33 鍏变韩鍒犻櫎鐢�
+        Set<Id> shareSet = new Set<Id>(); // 20230301 ljh DB202302444522 add
         for (Rental_Apply__c nObj : newList) {
             Rental_Apply__c oObj = (null == this.oldMap) ? null : this.oldMap.get(nObj.Id);
             // 鏈嶅姟閮ㄥ鎵逛汉
@@ -296,6 +297,7 @@
                 ) {
                 deleteApplyUserShare_nObjId_List.add(nObj.Id);
                 if(nObj.SalesManager__c != null){
+                    shareSet.add(nObj.SalesManager__c);// 20230301 ljh DB202302444522 add
                     Rental_Apply__Share rasSalesManager = new Rental_Apply__Share(
                             RowCause = 'ApplyUserShare__c',
                             ParentId = nObj.Id,
@@ -305,6 +307,7 @@
                     rasList.add(rasSalesManager);
                 }
                 if(nObj.BuchangApprovalManagerSales__c != null){
+                    shareSet.add(nObj.BuchangApprovalManagerSales__c);// 20230301 ljh DB202302444522 add
                     Rental_Apply__Share rasBz = new Rental_Apply__Share(
                             RowCause = 'ApplyUserShare__c',
                             ParentId = nObj.Id,
@@ -314,6 +317,7 @@
                     rasList.add(rasBz);
                 }
                 if(nObj.ZongjianApprovalManager__c != null){
+                    shareSet.add(nObj.ZongjianApprovalManager__c);// 20230301 ljh DB202302444522 add
                     Rental_Apply__Share rasZj = new Rental_Apply__Share(
                             RowCause = 'ApplyUserShare__c',
                             ParentId = nObj.Id,
@@ -336,10 +340,18 @@
         if(deleteOfficeAssistantShare_nObjId_List.size() > 0){
             soql += ' AND (RowCause = \'Office_Assistant__c\' AND ParentId =: deleteOfficeAssistantShare_nObjId_List) ';
             if(deleteApplyUserShare_nObjId_List.size() > 0){
-                soql += ' OR (RowCause = \'ApplyUserShare__c\'AND ParentId =: deleteApplyUserShare_nObjId_List)';
+                // 20230301 ljh DB202302444522 update start
+                // soql += ' OR (RowCause = \'ApplyUserShare__c\'AND ParentId =: deleteApplyUserShare_nObjId_List)';
+                soql += ' OR (RowCause = \'ApplyUserShare__c\'AND ParentId =: deleteApplyUserShare_nObjId_List';
+                soql += ' and UserOrGroupId IN :shareSet)';
+                // 20230301 ljh DB202302444522 update end
             }
         }else if(deleteApplyUserShare_nObjId_List.size() > 0){
-            soql += ' AND (RowCause = \'ApplyUserShare__c\'AND ParentId =: deleteApplyUserShare_nObjId_List)';
+            // 20230301 ljh DB202302444522 update start
+            // soql += ' AND (RowCause = \'ApplyUserShare__c\'AND ParentId =: deleteApplyUserShare_nObjId_List)';
+            soql += ' AND (RowCause = \'ApplyUserShare__c\'AND ParentId =: deleteApplyUserShare_nObjId_List';
+            soql += ' and UserOrGroupId IN :shareSet)';
+            // 20230301 ljh DB202302444522 update end
         }
         List<Rental_Apply__Share> deleteShareList = new List<Rental_Apply__Share>();
         if(deleteOfficeAssistantShare_nObjId_List.size() > 0 || deleteApplyUserShare_nObjId_List.size() > 0){

--
Gitblit v1.9.1