From 19ae52ae3e06c44c646ae6b45dc2b0d7f2cead88 Mon Sep 17 00:00:00 2001
From: 李彤 <litong@prec-tech.com>
Date: 星期一, 15 五月 2023 18:55:53 +0800
Subject: [PATCH] 招标项目终止
---
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