From 928399eceec50e3d37ea08669a12789a9410a9d2 Mon Sep 17 00:00:00 2001
From: 沙世明 <shashiming@prec-tech.com>
Date: 星期二, 22 十一月 2022 16:51:16 +0800
Subject: [PATCH] 111

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

diff --git a/force-app/main/default/classes/RentalApplyTriggerHandler.cls b/force-app/main/default/classes/RentalApplyTriggerHandler.cls
index 947c3f0..c7d60e2 100644
--- a/force-app/main/default/classes/RentalApplyTriggerHandler.cls
+++ b/force-app/main/default/classes/RentalApplyTriggerHandler.cls
@@ -11,6 +11,7 @@
     private List<Rental_Apply__c> oldList;
     private static Date td = Date.today();
     private static Map<Id, Rental_Apply__c> oldRaMap = new Map<Id, Rental_Apply__c>();
+    public static Boolean isFirst = true;
 
     //update      wangweipeng                             2021/11/25                   start
     private static Map<String, String> approver_of_Service_DepartmentMap = new Map<String, String>();
@@ -77,6 +78,15 @@
         // 鍙栨秷鐢宠鍗曠殑瀹℃壒
         removedProcessRequest();
 
+        System.debug('---------------newList--------------' + newList);
+
+        // add by lc 2022/11/15 DB202211029119 start
+        if (isFirst) {
+            // 涓讳粠鐢宠鍗曪紝鍙欢涓诲崟鐨勬儏鍐碉紝璧板崟鐙殑澶勭悊閫昏緫锛屽苟涓斿彧鎵ц涓�娆�
+            synchRentalApplyDataMaster();
+        }
+        // add by lc 2022/11/15 DB202211029119 end
+
         synchRentalApplyData2();
         // 寤舵湡瀹℃壒鍚庨渶瑕佹洿鏂颁竴瑙�
         setAppExtensionRaes();
@@ -84,10 +94,50 @@
         setShare();
         // 鍔炰簨澶勫垎鍗曠殑瑁呮満纭
         setAgencyHPReceived();
-        
         //鎵归噺瀹℃壒鏃讹紝闇�瑕佹妸涓诲崟鍜屼粠鍗曠殑寤舵湡瀛楁淇℃伅鍚屾
         synchRentalApplyData();
     }
+
+    // add by lc 2022/11/15 DB202211029119 start
+    // 涓讳粠鐢宠鍗曪紝鍙欢涓诲崟鐨勬儏鍐碉紝璧板崟鐙殑澶勭悊閫昏緫
+    private void synchRentalApplyDataMaster() {
+        List<Rental_Apply_Equipment_Set__c> raesList = new List<Rental_Apply_Equipment_Set__c>();
+        // 鎵瑰噯鍙兘涓�鏉′竴鏉$殑鎵瑰噯
+        for (Rental_Apply__c nObj : newList) {
+            Rental_Apply__c oObj = oldMap.get(nObj.Id);
+
+            if (oObj.ExtensionApprovalTime_Initial__c != nObj.ExtensionApprovalTime_Initial__c 
+                && nObj.ExtensionApprovalTime_Initial__c != null && oObj.ExtensionApprovalTime_Initial__c == null
+                && String.isNotBlank(nObj.Extension_Type__c) && nObj.Extension_Type__c == '鎵归噺寤舵湡'
+                && (nObj.demo_purpose2__c == '璇曠敤锛堟棤璇环锛�' || nObj.demo_purpose2__c == '璇曠敤锛堟湁璇环锛�')
+                && String.isBlank(oObj.Extension_Much_ID__c)
+                && String.isBlank(oObj.Root_Rental_Apply__c)) {
+                isFirst = false;
+                List<Rental_Apply__c> checkRentalApply = new List<Rental_Apply__c>();
+                checkRentalApply.add(oObj);
+                try {
+                    System.debug('========================checkRentalApply=========================' + checkRentalApply);
+                    for (Rental_Apply_Equipment_Set__c raes : getCan_Extend_RequestList(checkRentalApply)) {
+                        System.debug('raes.Id=========================' + raes.Id);
+                        //鍒ゆ柇鏄鐢宠鍗曟槸鍚﹀瓨鍦� ok骞朵笖鍥炲瘎鏃堕棿涓嶄负绌虹殑涓�瑙堬紝
+                        if ((raes.Received_Confirm__c == 'OK' || raes.Received_Confirm__c == '榛樿绛炬敹-OK') && raes.Asset_return_time__c != null) {
+
+                        }else{
+                            raes.RcUnexpectExpiryDelay__c = raes.Rental_Apply__r.RcUnexpectExpiryDelay__c;
+                            raesList.add(raes);
+                        }
+                    }
+                }
+                catch (Exception e) {
+                    nObj.addError(e.getMessage() + ',璇锋搷浣滈┏鍥炪��');
+                }
+            }
+        }
+        if (0 < raesList.size()) {
+            update raesList;
+        }
+    }
+    // add by lc 2022/11/15 DB202211029119 end
 
     private void setAgencyHPReceived() {
         Set<Id> raIdSet = new Set<Id>();
@@ -334,8 +384,11 @@
                     //濡傛灉涓烘壒閲忓欢鏈燂紝閭d箞杩欎釜闆嗗悎閲岄潰浼氬瓨鏀� 鍘熷崟+鍘熷崟涓嬫墍鏈夌殑浠庡崟
                     //濡傛灉涓轰粠鍗曪紝骞朵笖鐩殑2涓鸿浠凤紝閭d箞浼氬瓨鏀� 褰撳墠浠庡崟鐨勫師鍗�+浠庡崟鍘熷崟涓嬫墍鏈夌殑浠庡崟锛堝寘鎷綋鍓嶄粠鍗曪級
                     List<Rental_Apply__c> checkRentalApply = new List<Rental_Apply__c>();
+                    // 鍙湁浜у搧璇曠敤浼氬瓨鍦ㄦ壒閲忓欢鏈�
                     if(String.isNotBlank(nObj.Extension_Type__c) && nObj.Extension_Type__c == '鎵归噺寤舵湡'){
+                        System.debug('========================1=========================');
                         if(String.isNotBlank(nObj.Extension_Much_ID__c)){
+                            System.debug('========================2=========================');
                             String parentId = nObj.Id;
                             parentId = parentId.substring(0,15);
                             String likeParentId = parentId+'%';
@@ -365,6 +418,7 @@
                                             order by CreatedDate asc];
                         }
                     }else{
+                        System.debug('========================3=========================');
                         //濡傛灉寤舵湡鐨勬槸浠庡崟锛岄偅涔堥渶瑕佺壒娈婂鐞�
                         if(String.isNotBlank(nObj.Root_Rental_Apply__c) && (nObj.demo_purpose2__c == '璇曠敤锛堟棤璇环锛�' || nObj.demo_purpose2__c == '璇曠敤锛堟湁璇环锛�')){
                             String likeParentId = nObj.Root_Rental_Apply__c+'%';
@@ -397,6 +451,8 @@
                         }
                         checkRentalApply.add(oObj);
                     }
+
+                    System.debug('========================checkRentalApply=========================' + checkRentalApply);
                     for (Rental_Apply_Equipment_Set__c raes : getCan_Extend_RequestList(checkRentalApply)) {
                         //寤舵湡鎵瑰噯鏃堕棿(鏈�鍒�)鎴栧欢鏈熸壒鍑嗘椂闂�(鏈�缁�) 鍊奸兘鏈夊彉鍔紝閭d箞璇佹槑姝ゆ寤舵湡宸茬粡鎵瑰噯浜嗭紝閭d箞闇�瑕佺粰鐢宠鍗曠殑涓�瑙堣祴鍊�
                         if (oObj.ExtensionApprovalTime_Initial__c != nObj.ExtensionApprovalTime_Initial__c
@@ -1371,6 +1427,8 @@
                             }
                         }
                     }
+                    System.debug('raes==============' + raes);
+                    System.debug('raes1==============' + checkCan_Extend_Request(raes, false));
                     if (checkCan_Extend_Request(raes, false)) {
                         raesList.add(raes);
                     }

--
Gitblit v1.9.1