From d8dc84a3d56df839895f1c417a4d9cbee763d262 Mon Sep 17 00:00:00 2001
From: 高章伟 <gaozhangwei@prec-tech.com>
Date: 星期五, 03 三月 2023 14:50:59 +0800
Subject: [PATCH] gzw 测试环境代码更新
---
force-app/main/default/classes/AgencyOppUpdHandler.cls | 191 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 189 insertions(+), 2 deletions(-)
diff --git a/force-app/main/default/classes/AgencyOppUpdHandler.cls b/force-app/main/default/classes/AgencyOppUpdHandler.cls
index 8b7863f..642b4d3 100644
--- a/force-app/main/default/classes/AgencyOppUpdHandler.cls
+++ b/force-app/main/default/classes/AgencyOppUpdHandler.cls
@@ -27,7 +27,10 @@
set_AgencyOpportunity_OCSMOwner();
if (updAgencyOpportunityMap.size() > 0) {
+ // 璺宠繃璇环trigger
+ StaticParameter.EscapeOppandStaTrigger = true;
update updAgencyOpportunityMap.values();
+ StaticParameter.EscapeOppandStaTrigger = false;
}
}
@@ -36,9 +39,75 @@
set_AgencyOpportunity_OCSMOwner();
if (updAgencyOpportunityMap.size() > 0) {
+ // 璺宠繃璇环trigger
+ StaticParameter.EscapeOppandStaTrigger = true;
update updAgencyOpportunityMap.values();
+ StaticParameter.EscapeOppandStaTrigger = false;
}
+
+ updateTask(); // 2022-6-27 yjk 璇环浠诲姟
}
+
+
+ //2022-6-27 yjk 璇环浠诲姟 start
+ private void updateTask() {
+ List<Id> oppIds = new List<Id>();
+ List<Id> canceloppIds = new List<Id>();//20221208 you DB202211594688
+
+ List<Opportunity> opList = new List<Opportunity>();
+ for(Opportunity opp : newList){
+ //if(opp.IF_Submit__c == true && oldMap.get(opp.id).IF_Submit__c ==false){
+ if(opp.Assistant_Applied_Date__c != null && oldMap.get(opp.id).Assistant_Applied_Date__c == null){
+ oppIds.add(opp.id);
+ Opportunity op = new Opportunity();
+ op.Id = opp.Id;
+ op.ConfirmationofAward_createTime__c = (opp.Task_createTime__c !=null || opp.ifOpenBid__c =='闈炲叕寮�鎷涙爣') ? Date.today() : null; //20220823 you
+ op.ConfirmationofAward__c = 'OLY涓爣';
+ opList.add(op);
+ }
+ // 2022-11-22 ssm DB202211311158 鍙栨秷win鐨勬椂鍊欏垽鏂槸鍚︽湁浠诲姟 濡傛灉娌℃湁浠诲姟鐨勮瘽灏辨竻绌� 鏈変换鍔$殑鏃跺�欎繚鐣欑粨鏋�
+ // if(opp.Assistant_Applied_Date__c == null && oldMap.get(opp.id).Assistant_Applied_Date__c != null){//鍙栨秷鍚堝悓鐢宠鏃ワ紝瀛楁娓呯┖
+ if(opp.Assistant_Applied_Date__c == null && oldMap.get(opp.id).Assistant_Applied_Date__c != null &&
+ !(!opp.SAP_Send_OK__c && oldMap.get(opp.id).SAP_Send_OK__c && oldMap.get(opp.id).Task_createTime__c != null)){
+ Opportunity op = new Opportunity();
+ op.Id = opp.Id;
+ op.ConfirmationofAward_createTime__c = null;
+ op.ConfirmationofAward__c = '';
+ opList.add(op);
+ }
+ if(opp.ConfirmationofAward__c != null && oldMap.get(opp.id).ConfirmationofAward__c == null){
+ oppIds.add(opp.id);
+ }
+ //20221208 you DB202211594688 鍙栨秷 鏈畬鎴愮殑澶卞崟鎶ュ憡浠诲姟
+ if(opp.ConfirmationofAward__c != null && oldMap.get(opp.id).ConfirmationofAward__c !=null && oldMap.get(opp.id).ConfirmationofAward__c=='绔炰簤瀵规墜涓爣' && opp.ConfirmationofAward__c=='OLY涓爣' && opp.LostTask_createTime__c !=null && opp.LostTask_comfirmTime__c ==null){
+ canceloppIds.add(opp.id);
+ }
+
+ }
+
+ List<task__c> taskList = [select id,taskStatus__c ,OpportunityId__c,RecordType.Name from task__c where ((RecordType.Name in ('涓爣缁撴灉纭') and OpportunityId__c in :oppIds) OR (RecordType.Name in ('澶卞崟鎶ュ憡浠诲姟') and OpportunityId__c in :canceloppIds)) and taskStatus__c = '02 鎺ュ彈'];
+ for(task__c tsk : taskList){
+ if(tsk.RecordType.Name=='澶卞崟鎶ュ憡浠诲姟'){
+ tsk.taskStatus__c = '04 鍙栨秷';
+ tsk.cancelDate__c = date.today();
+ tsk.cancelReasonSelect__c = '淇敼涓爣缁撴灉';
+ Opportunity op = new Opportunity();
+ op.Id = tsk.OpportunityId__c;
+ op.LostTask_createTime__c =null;
+ opList.add(op);
+ }else{
+ tsk.taskStatus__c = '03 瀹屾垚';
+ }
+
+ }
+ if(null!=opList && opList.size()>0){
+ update opList;
+ }
+
+ update taskList;
+ }
+
+ //2022-6-27 yjk 璇环浠诲姟 end
//private void insertOppFromAgencyOpportunity() {
// for(Opportunity nObj : newList) {
@@ -72,12 +141,30 @@
// 璇环 Win 鐨勬椂鍊� 鏇存柊 .璇环 鐨� Amount__c = oppMap.get(ao.Id)
private void set_AgencyOpportunity_Amount() {
Map<Id, Decimal> oppMap = new Map<Id, Decimal>();
+ Set<String> oppIdSet = new Set<String>(); // 20220720 ljh 璁板綍WIN鏃剁偣鐨勬垬鐣ヤ骇鍝佸垽鏂� start
for(Opportunity nObj : newList) {
Opportunity oObj = oldMap.get(nObj.Id);
- if(nObj.Agency_Opportunity__c != null && nObj.AgencyOpp_FromOCM__c == true && oObj.SAP_Send_OK__c == false && nObj.SAP_Send_OK__c == true) {
- oppMap.put(nObj.Agency_Opportunity__c, nObj.Dealer_Final_Price__c);
+ // 20220720 ljh 璁板綍WIN鏃剁偣鐨勬垬鐣ヤ骇鍝佸垽鏂� start
+ // if(nObj.Agency_Opportunity__c != null && nObj.AgencyOpp_FromOCM__c == true && oObj.SAP_Send_OK__c == false && nObj.SAP_Send_OK__c == true) {
+ // oppMap.put(nObj.Agency_Opportunity__c, nObj.Dealer_Final_Price__c);
+ // }
+ if( oObj.SAP_Send_OK__c == false && nObj.SAP_Send_OK__c == true) {
+ if(nObj.Agency_Opportunity__c != null && nObj.AgencyOpp_FromOCM__c == true){
+ oppMap.put(nObj.Agency_Opportunity__c, nObj.Dealer_Final_Price__c);
+ }
+ oppIdSet.add(nObj.Id);
}
+ // 20220720 ljh 璁板綍WIN鏃剁偣鐨勬垬鐣ヤ骇鍝佸垽鏂� end
}
+ // 20220720 ljh 璁板綍WIN鏃剁偣鐨勬垬鐣ヤ骇鍝佸垽鏂� start
+ if(oppIdSet.size() > 0 ){
+ List<OpportunityLineItem> OppLIlist = [select Id,Key_product_147P_Text__c,Key_product_147P__c from OpportunityLineItem where OpportunityId in :oppIdSet];
+ for(OpportunityLineItem oli : OppLIlist){
+ oli.Key_product_147P_Text__c = oli.Key_product_147P__c;
+ }
+ update OppLIlist;
+ }
+ // 20220720 ljh 璁板綍WIN鏃剁偣鐨勬垬鐣ヤ骇鍝佸垽鏂� end
if (oppMap.size() > 0) {
List<Agency_Opportunity__c> aoList = [select Id, Name, Amount__c from Agency_Opportunity__c where Id in :oppMap.keySet()];
for(Agency_Opportunity__c ao : aoList) {
@@ -110,4 +197,104 @@
}
}
+ @TestVisible
+ public static void testI() {
+ integer i = 0;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ i++;
+ }
}
\ No newline at end of file
--
Gitblit v1.9.1