From 0f44cb1a0b7b36860e9ce81c1eac9e395d87f0b4 Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期一, 05 六月 2023 13:53:18 +0800
Subject: [PATCH] mergecode into lex dtt

---
 force-app/main/default/classes/TenderOpportunityLinkHandler.cls |   47 +++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 45 insertions(+), 2 deletions(-)

diff --git a/force-app/main/default/classes/TenderOpportunityLinkHandler.cls b/force-app/main/default/classes/TenderOpportunityLinkHandler.cls
index 197d4a5..128094a 100644
--- a/force-app/main/default/classes/TenderOpportunityLinkHandler.cls
+++ b/force-app/main/default/classes/TenderOpportunityLinkHandler.cls
@@ -10,12 +10,13 @@
     this.newList = (List<Tender_Opportunity_Link__c>) Trigger.new;
     this.oldList = (List<Tender_Opportunity_Link__c>) Trigger.old;
 }
-
+ 
 protected override void afterInsert() {
     // 鍒ゆ柇鏄惁璺宠繃
+    updateTerminateTender(this.newList);  //lt 20230419 椤圭洰缁堟娴佺▼寮�鍙� add
     if (!StaticParameter.EscapeTOLinkTrigger) {
         updateTender(this.newList);
-        updateOppotunityByInsert(this.newList);
+        updateOppotunityByInsert(this.newList);      
     }
 }
 
@@ -43,6 +44,48 @@
     }
 }
 
+//lt 20230419 椤圭洰缁堟娴佺▼寮�鍙� 缁堟鐢宠鐘舵�佹竻闄� add
+//椤圭洰缁堟娴佺▼寮�鍙� -- 娓呴櫎鎷涙爣椤圭洰缁堟鐢宠鐨勪俊鎭紝椤圭洰閲嶅惎鏍囪瘑鎵撳嬀
+public void updateTerminateTender(List<Tender_Opportunity_Link__c> records){
+
+    if (records != null && records.size() > 0){
+        List<String> tenders = new List<String>();
+        // 鑾峰緱瑕佹洿鏂扮殑鎷涙爣椤圭洰
+        for (Tender_Opportunity_Link__c record: records) {
+            if (!tenders.contains(record.Tender_information__c)) {
+                tenders.add(record.Tender_information__c);
+            }
+        }
+
+        List<Tender_information__c> UpdateTenders = new List<Tender_information__c>();
+
+        if (tenders.size() > 0){
+            List<Tender_information__c> tenderList = [SELECT id, status__c, TerminateReason__c, IsTerminate__c,
+                                                             TerminateApprovalStatus__c, TerminateApprovalTime__c,
+                                                             ProjectRestartFLG__c,subInfoType__c
+                                                      FROM Tender_information__c 
+                                                      WHERE id in :tenders];
+
+            if(tenderList.size() > 0){
+                for (Tender_information__c tender : tenderList){
+                    //if(tender.status__c == '09.缁堟' && tender.TerminateReason__c != '缁忛攢鍟嗗師鍥�' && tender.subInfoType__c != '3-1锛氬簾鏍囧叕鍛�' && tender.subInfoType__c != '3-2锛氭祦鏍囧叕鍛�')
+                    if(tender.status__c == '09.缁堟'){
+                        tender.ProjectRestartFLG__c = true;
+                        tender.IsTerminate__c = null;
+                        tender.TerminateApprovalTime__c = null;
+                        tender.TerminateApprovalStatus__c = null;
+    
+                        UpdateTenders.add(tender);
+                    }
+                }
+            }
+        }
+        if(UpdateTenders.size() > 0){
+            update UpdateTenders;
+        }
+    }
+}
+
 // 鏇存柊鎷涙爣淇℃伅
 public void updateTender(List<Tender_Opportunity_Link__c> records) {
     if (records != null && records.size() > 0) {

--
Gitblit v1.9.1