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/OpportunityLineItemTrigger.cls | 80 +++++++++++++++++++++++++++++++--------
1 files changed, 63 insertions(+), 17 deletions(-)
diff --git a/force-app/main/default/classes/OpportunityLineItemTrigger.cls b/force-app/main/default/classes/OpportunityLineItemTrigger.cls
index 118fb99..e3f1570 100644
--- a/force-app/main/default/classes/OpportunityLineItemTrigger.cls
+++ b/force-app/main/default/classes/OpportunityLineItemTrigger.cls
@@ -22,7 +22,7 @@
List<OpportunityLineItem> retList =
[Select Id, OpportunityId, Category3__c, Product2.MDM_Model_No__c, Opportunity.STMS_Package_Sale__c
- , Opportunity.State_Owner__c, Product2.Family, Opportunity.EnergyHost__c
+ , Opportunity.State_Owner__c, Product2.Family, Opportunity.EnergyHost__c, Product2.Asset_Model_No__c
from OpportunityLineItem
where OpportunityId in: selIds
order by OpportunityId];
@@ -51,6 +51,14 @@
}
}
Map<String, Opportunity> updateOpportunityMap = new Map<String, Opportunity>();
+ Boolean flg_usg =false;
+ Boolean flg_usg1 =false;
+ for (OpportunityLineItem oli1 : retList) {
+ if(oli1.Product2.Asset_Model_No__c != null && oli1.Product2.Asset_Model_No__c.contains('USG-400')){
+ flg_usg1 = true;
+ break;
+ }
+ }
for (OpportunityLineItem oli : retList) {
// 鑾峰彇鍘熷瓧娈靛��
String oppId = oli.OpportunityId;
@@ -67,16 +75,30 @@
// 鍒ゆ柇 璇环浜у搧鏄惁鍚湁 ENG 涓绘満 浜у搧
string mapkey1 = 'ENG_涓绘満';
string mapkey2 = 'ENG_鑳介噺涓绘満';
+ //if (oli.Product2.Asset_Model_No__c != null && oli.Product2.Asset_Model_No__c.contains('USG-400')) {
+ // flg_usg = true;
+ // }
if (familyMap.containsKey(mapkey1) || familyMap.containsKey(mapkey2)) {
+ OpportunityLineItem FamMap1 = familyMap.get(mapkey1);
+ OpportunityLineItem FamMap2 = familyMap.get(mapkey2);
+ if((FamMap1 !=null && FamMap1.Product2.Asset_Model_No__c != null && FamMap1.Product2.Asset_Model_No__c.contains('USG-400')) || (FamMap2 !=null &&FamMap2.Product2.Asset_Model_No__c != null && FamMap2.Product2.Asset_Model_No__c.contains('USG-400'))){
+ flg_usg = true;
+ }
+ system.debug('flg_usg=='+flg_usg+'========='+familyMap.size());
// 鍙惈鏈� ENG 涓绘満浜у搧
if (familyMap.size() == 1 ) {
//鑳介噺鎵撳寘 False
//鑳介噺涓绘満 True
- if (getOldStmsPackageSale || !getOldEnergyHost) {
+ //if (getOldStmsPackageSale || !getOldEnergyHost) {
updateOpportunity.STMS_Package_Sale__c = false;
- updateOpportunity.EnergyHost__c = true;
+ //updateOpportunity.EnergyHost__c = true;
+ if(flg_usg){
+ updateOpportunity.EnergyHost__c = true;
+ }else{
+ updateOpportunity.EnergyHost__c = false;
+ }
updateOpportunityMap.put(oppId, updateOpportunity);
- }
+ //}
} else {
//鍒ゆ柇鏄惁閮芥槸涓绘満
Boolean principalMachine = true;
@@ -84,6 +106,7 @@
Boolean energyHost = true;
Boolean notContains = true;
Boolean principalMachinENG = false;
+
for(String key :familyMap.keySet()) {
@@ -99,17 +122,26 @@
principalMachinENG = true;
}
}
+
}
+ system.debug(energyHost+'===='+notContains+'===='+principalMachinENG);
+ system.debug('==='+flg_usg1);
if (energyHost ) {
// 閮芥槸鑳介噺涓绘満
//鑳介噺鎵撳寘 False
//鑳介噺涓绘満 True
- if (getOldStmsPackageSale || !getOldEnergyHost) {
+ system.debug('鑳介噺鎵撳寘=='+getOldStmsPackageSale+'==鑳介噺涓绘満=='+getOldEnergyHost);
+ //if (getOldStmsPackageSale || !getOldEnergyHost) {
updateOpportunity.STMS_Package_Sale__c = false;
- updateOpportunity.EnergyHost__c = true;
+ //updateOpportunity.EnergyHost__c = true;
+ if(flg_usg1){
+ updateOpportunity.EnergyHost__c = true;
+ }else{
+ updateOpportunity.EnergyHost__c = false;
+ }
updateOpportunityMap.put(oppId, updateOpportunity);
- }
+ //}
} else {
@@ -117,27 +149,42 @@
// 鍙湁 ENG 涓绘満
//鑳介噺鎵撳寘 False
//鑳介噺涓绘満 True
- if (getOldStmsPackageSale || !getOldEnergyHost) {
+ //if (getOldStmsPackageSale || !getOldEnergyHost) {
updateOpportunity.STMS_Package_Sale__c = false;
- updateOpportunity.EnergyHost__c = true;
+ //updateOpportunity.EnergyHost__c = true;
+ if(flg_usg1){
+ updateOpportunity.EnergyHost__c = true;
+ }else{
+ updateOpportunity.EnergyHost__c = false;
+ }
updateOpportunityMap.put(oppId, updateOpportunity);
- }
+ //}
} else {
if (principalMachinENG ) {
// 鑳介噺鎵撳寘 True
// 鑳介噺涓绘満 False
- if (!getOldStmsPackageSale || getOldEnergyHost) {
+ //if (!getOldStmsPackageSale || getOldEnergyHost) {
updateOpportunity.STMS_Package_Sale__c = true;
- updateOpportunity.EnergyHost__c = false;
+ //updateOpportunity.EnergyHost__c = false;
+ if(flg_usg1){
+ updateOpportunity.EnergyHost__c = true;
+ }else{
+ updateOpportunity.EnergyHost__c = false;
+ }
updateOpportunityMap.put(oppId, updateOpportunity);
- }
+ //}
} else {
- if (getOldStmsPackageSale || getOldEnergyHost) {
+ //if (getOldStmsPackageSale || getOldEnergyHost) {
updateOpportunity.STMS_Package_Sale__c = false;
- updateOpportunity.EnergyHost__c = false;
+ //updateOpportunity.EnergyHost__c = false;
+ if(flg_usg1){
+ updateOpportunity.EnergyHost__c = true;
+ }else{
+ updateOpportunity.EnergyHost__c = false;
+ }
updateOpportunityMap.put(oppId, updateOpportunity);
- }
+ //}
}
}
}
@@ -175,7 +222,6 @@
}
}
-
}
--
Gitblit v1.9.1