From 5b5c1e16deaa3a9d6d0ed1ffca390655ed103df7 Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期五, 14 七月 2023 14:56:14 +0800
Subject: [PATCH] lex community
---
force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger | 525 ++++++++++++++++++++++++++--------------------------------
1 files changed, 234 insertions(+), 291 deletions(-)
diff --git a/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger b/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger
index 0fedc68..8529340 100644
--- a/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger
+++ b/force-app/main/default/triggers/ConsumableOrderDetail2Trigger.trigger
@@ -1,66 +1,63 @@
-trigger ConsumableOrderDetail2Trigger on Consumable_order_details2__c(after insert, after update, after delete) {
+trigger ConsumableOrderDetail2Trigger on Consumable_order_details2__c (after insert, after update, after delete) {
Set<String> orderSet = new Set<String>();
-
+
if (StaticParameter.EscapeOrderDetail2Trigger) {
- return;
+ return ;
}
- if (Trigger.isInsert) {
- for (Consumable_order_details2__c local : Trigger.New) {
- if (local.Consumable_order_minor__c != null && local.Dealer_Returned__c == false)
- orderSet.add(local.Consumable_order_minor__c);
+ if (trigger.isInsert){
+ for (Consumable_order_details2__c local : Trigger.New) {
+ if (local.Consumable_order_minor__c!=null &&
+ local.Dealer_Returned__c == false)
+ orderSet.add(local.Consumable_order_minor__c);
}
}
- if (Trigger.isUpdate) {
- for (Consumable_order_details2__c local : Trigger.New) {
+ if (trigger.isUpdate){
+ for (Consumable_order_details2__c local : Trigger.New) {
//if (local.Consumable_order_minor__c!=null &&
// local.Dealer_Arrive__c != Trigger.oldMap.get(local.Id).get('Dealer_Arrive__c'))
- if (local.Consumable_order_minor__c != null)
- orderSet.add(local.Consumable_order_minor__c);
+ if (local.Consumable_order_minor__c!=null) orderSet.add(local.Consumable_order_minor__c);
}
}
- if (Trigger.isDelete) {
+ if (trigger.isDelete){
for (Consumable_order_details2__c local : Trigger.old) {
- if (local.Consumable_order_minor__c != null)
- orderSet.add(local.Consumable_order_minor__c);
+ if (local.Consumable_order_minor__c!=null) orderSet.add(local.Consumable_order_minor__c);
}
}
- if (orderSet.size() > 0) {
+
+ if (orderSet.size()>0){
// 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇挎崲 SQL start by 寮犵帀灞�
- list<Consumable_order_details2__c> allresults = [
- SELECT Consumable_order_minor__c, Deliver_date__c, Dealer_Returned__c, Dealer_Arrive__c, RemoveBox_No__c, Cancellation_Date__c
+ list<Consumable_order_details2__c> allresults =
+ [SELECT Consumable_order_minor__c, Deliver_date__c,
+ Dealer_Returned__c, Dealer_Arrive__c, RemoveBox_No__c,Cancellation_Date__c
FROM Consumable_order_details2__c
- WHERE Consumable_order_minor__c IN :orderSet
- ];
+ WHERE Consumable_order_minor__c in :orderSet ];
// 2018骞�8鏈�9鏃� HWAG-B3D9UV end by 寮犵帀灞�
-
+
// 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪�� start by 寮犵帀灞�
- map<string, Integer> orderSetResults = new Map<string, Integer>();
- for (Consumable_order_details2__c results1 : allresults) {
- if (
- results1.Dealer_Arrive__c == false ||
- results1.Dealer_Returned__c == true ||
- (results1.RemoveBox_No__c != null &&
- results1.RemoveBox_No__c != 1)
- ) {
+ map<string,Integer> orderSetResults = new map<string,Integer>();
+ for(Consumable_order_details2__c results1 : allresults){
+ if(results1.Dealer_Arrive__c == false || results1.Dealer_Returned__c== true
+ || (results1.RemoveBox_No__c !=null && results1.RemoveBox_No__c !=1)){
continue;
}
string Consumable_order_minor_str = String.valueOf(results1.Consumable_order_minor__c);
- if (orderSetResults.containsKey(Consumable_order_minor_str)) {
- orderSetResults.put(Consumable_order_minor_str, orderSetResults.get(Consumable_order_minor_str) + 1);
- } else {
- orderSetResults.put(Consumable_order_minor_str, 1);
+ if(orderSetResults.containsKey(Consumable_order_minor_str)){
+ orderSetResults.put(Consumable_order_minor_str,
+ orderSetResults.get(Consumable_order_minor_str)+1);
+ }else{
+ orderSetResults.put(Consumable_order_minor_str,1);
}
}
List<Consumable_Order__c> consumableOrderlist = new List<Consumable_Order__c>();
- for (String strOrder : orderSet) {
- Integer cnt = 0;
+ for (String strOrder:orderSet){
+ Integer cnt =0;
for (string key : orderSetResults.keySet()) {
- if (key.equals(strOrder)) {
+ if(key.equals(strOrder)){
cnt = orderSetResults.get(key);
break;
}
@@ -72,7 +69,7 @@
consumableOrderlist.add(consumableOrder);
}
// 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪�� end end by 寮犵帀灞�
-
+
/* 2018骞�8鏈�9鏃� HWAG-B3D9UV 鍘熸湁SQL 涓庤祴鍊� start by 寮犵帀灞�
AggregateResult[] results = [SELECT Consumable_order_minor__c,count(Id) cnt
FROM Consumable_order_details2__c
@@ -98,57 +95,61 @@
}
2018骞�8鏈�9鏃� HWAG-B3D9UV 鍘熸湁SQL 涓庤祴鍊� end by 寮犵帀灞�
*/
- if (consumableOrderlist.size() > 0) {
- update consumableOrderlist;
+ if (consumableOrderlist.size() > 0){
+ update consumableOrderlist;
}
//鏇存柊娑堣�楀搧璁㈠崟鐨勫彂璐ф棩鏈�
// 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪�� start by 寮犵帀灞�
- Set<string> resultsKeySet = new Set<String>();
- map<string, Date> DeliverdateResults = new Map<string, Date>(); //鏈�鏂板彂璐ф椂闂�
- map<string, Date> DeliverdateminResults = new Map<string, Date>(); //鏈�鏃╁彂璐ф椂闂�
- for (Consumable_order_details2__c results1 : allresults) {
- if (results1.Dealer_Arrive__c == true || results1.Dealer_Returned__c == true) {
+ Set<string> resultsKeySet = new Set<String>();
+ map<string,Date> DeliverdateResults = new map<string,Date>();//鏈�鏂板彂璐ф椂闂�
+ map<string,Date> DeliverdateminResults = new map<string,Date>();//鏈�鏃╁彂璐ф椂闂�
+ for(Consumable_order_details2__c results1 : allresults){
+ if(results1.Dealer_Arrive__c == true || results1.Dealer_Returned__c== true){
continue;
}
string Consumable_order_minor_str = String.valueOf(results1.Consumable_order_minor__c);
- if (DeliverdateResults.containsKey(Consumable_order_minor_str)) {
- if (DeliverdateResults.get(Consumable_order_minor_str) < results1.Deliver_date__c) {
- DeliverdateResults.put(Consumable_order_minor_str, results1.Deliver_date__c);
+ if(DeliverdateResults.containsKey(Consumable_order_minor_str)){
+ if(DeliverdateResults.get(Consumable_order_minor_str)
+ < results1.Deliver_date__c
+ ){
+ DeliverdateResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
resultsKeySet.add(Consumable_order_minor_str);
}
- } else {
- DeliverdateResults.put(Consumable_order_minor_str, results1.Deliver_date__c);
+ }else{
+ DeliverdateResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
resultsKeySet.add(Consumable_order_minor_str);
}
//鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part1 start
- if (DeliverdateminResults.containsKey(Consumable_order_minor_str)) {
- if (DeliverdateminResults.get(Consumable_order_minor_str) > results1.Deliver_date__c) {
- DeliverdateminResults.put(Consumable_order_minor_str, results1.Deliver_date__c);
+ if(DeliverdateminResults.containsKey(Consumable_order_minor_str)){
+ if(DeliverdateminResults.get(Consumable_order_minor_str)
+ > results1.Deliver_date__c
+ ){
+ DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
resultsKeySet.add(Consumable_order_minor_str);
}
- } else {
- DeliverdateminResults.put(Consumable_order_minor_str, results1.Deliver_date__c);
+ }else{
+ DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c);
resultsKeySet.add(Consumable_order_minor_str);
}
//鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part1 end
}
-
+
//涓や釜DeliverdateResults.keySet()锛孌eliverdateminResults.keySet() 鍚堝苟浣滀负涓�涓狶ist 锛岄亶鍘哃ist
//鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part2 start
consumableOrderlist = new List<Consumable_Order__c>();
- for (string temp : resultsKeySet) {
+ for(string temp : resultsKeySet){
Consumable_Order__c consumableOrder1 = new Consumable_Order__c();
consumableOrder1.Id = temp;
- if (DeliverdateResults.get(temp) != null) {
+ if(DeliverdateResults.get(temp)!=null){
consumableOrder1.Shipment_Date__c = DeliverdateResults.get(temp);
}
- if (DeliverdateminResults.get(temp) != null) {
+ if(DeliverdateminResults.get(temp)!=null){
consumableOrder1.First_Delivery__c = DeliverdateResults.get(temp);
}
consumableOrderlist.add(consumableOrder1);
}
-
+
//鑾峰彇鏈�鏃╁彂璐ф椂闂� pk part2 end
// List<Consumable_Order__c> consumableOrderminlist = new List<Consumable_Order__c>();//鏈�鏃╁彂璐ф椂闂�
// for (string key : DeliverdateminResults.keySet()) {
@@ -159,9 +160,9 @@
// consumableOrderminlist.add(consumableOrder1);
// }
// }
-
+
// 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪�� end by 寮犵帀灞�
-
+
//鑾峰彇鏃╁彂璐ф棩鏈� start
// system.debug('DeliverdateResults==============' + DeliverdateResults);
// system.debug('璧板埌鏈�鏃╁彂璐ф棩鏈�');
@@ -193,7 +194,7 @@
// }
// if(consumableOrderminlist.size() > 0){
- // update consumableOrderminlist;
+ // update consumableOrderminlist;
// }
// system.debug('DeliverdateResults==============' + DeliverdateResults);
// //鑾峰彇鏈�鏃╁彂璐ф棩鏈� end
@@ -216,29 +217,31 @@
}
}
2018骞�8鏈�9鏃� HWAG-B3D9UV 鍘熸湁SQL 涓庤祴鍊� end by 寮犵帀灞� */
- if (consumableOrderlist.size() > 0) {
- update consumableOrderlist;
+ if (consumableOrderlist.size() > 0){
+ update consumableOrderlist;
}
-
+
//鏇存柊寰呯‘璁ゆ敹璐ф暟閲�
// 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪�� start by 寮犵帀灞�
- map<string, Integer> resultsMap2 = new Map<string, Integer>();
- for (Consumable_order_details2__c results1 : allresults) {
- if (results1.Dealer_Arrive__c == true || results1.Dealer_Returned__c == true || results1.Cancellation_Date__c != null) {
+ map<string,Integer> resultsMap2 = new map<string,Integer>();
+ for(Consumable_order_details2__c results1 : allresults){
+ if(results1.Dealer_Arrive__c == true || results1.Dealer_Returned__c== true ||
+ results1.Cancellation_Date__c!=null){
continue;
}
string Consumable_order_minor_str = String.valueOf(results1.Consumable_order_minor__c);
- if (resultsMap2.containsKey(Consumable_order_minor_str)) {
- resultsMap2.put(Consumable_order_minor_str, resultsMap2.get(Consumable_order_minor_str) + 1);
- } else {
- resultsMap2.put(Consumable_order_minor_str, 1);
+ if(resultsMap2.containsKey(Consumable_order_minor_str)){
+ resultsMap2.put(Consumable_order_minor_str,
+ resultsMap2.get(Consumable_order_minor_str)+1);
+ }else{
+ resultsMap2.put(Consumable_order_minor_str,1);
}
}
consumableOrderlist = new List<Consumable_Order__c>();
- for (String strOrder : orderSet) {
- Integer cnt = 0;
+ for (String strOrder:orderSet){
+ Integer cnt =0;
for (string key : resultsMap2.keySet()) {
- if (key.equals(strOrder)) {
+ if(key.equals(strOrder)){
cnt = resultsMap2.get(key);
break;
}
@@ -247,14 +250,12 @@
Consumable_Order__c consumableOrder2 = new Consumable_Order__c();
consumableOrder2.Id = strOrder;
consumableOrder2.Delivery_detail_count__c = cnt;
- if (consumableOrder2.Delivery_detail_count__c == 0) {
- consumableOrder2.More_than_seven_days__c = 0;
- }
+ if(consumableOrder2.Delivery_detail_count__c == 0){consumableOrder2.More_than_seven_days__c = 0;}
consumableOrderlist.add(consumableOrder2);
}
// 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇挎崲涓嬮潰鍘熸湁SQL 浣跨敤 map 瀹屾垚璧嬪�� end by 寮犵帀灞�
-
+
/* 2018骞�8鏈�9鏃� HWAG-B3D9UV 鍘熸湁SQL 涓庤祴鍊� start by 寮犵帀灞�
AggregateResult[] results2 = [SELECT Consumable_order_minor__c,count(Id) cnt
FROM Consumable_order_details2__c
@@ -279,8 +280,8 @@
consumableOrderlist.add(consumableOrder2);
}
2018骞�8鏈�9鏃� HWAG-B3D9UV 鍘熸湁SQL 涓庤祴鍊� end by 寮犵帀灞� */
- if (consumableOrderlist.size() > 0) {
- update consumableOrderlist;
+ if (consumableOrderlist.size() > 0){
+ update consumableOrderlist;
}
}
//Back up by DTT - Li Jun 2023-06-14 Start for reduce soql times
@@ -291,12 +292,11 @@
//鍒拌揣鍜岃繑鍝佹椂,鐢熸垚鎴栦慨鏀规秷璐瑰搧璁㈣揣鏄庣粏
Set<String> arrivedSet = new Set<String>();
Set<String> returnSet = new Set<String>();
- if (Trigger.isUpdate || Trigger.isInsert || Trigger.isDelete) {
- if (Trigger.isUpdate || Trigger.isInsert) {
+ if (trigger.isUpdate || trigger.isInsert || trigger.isDelete){
+ if (trigger.isUpdate || trigger.isInsert){
for (Consumable_order_details2__c detail2 : Trigger.New) {
Consumable_order_details2__c oldDetail2 = null;
- if (Trigger.isUpdate)
- oldDetail2 = Trigger.oldMap.get(detail2.Id);
+ if (Trigger.isUpdate) oldDetail2 = Trigger.oldMap.get(detail2.Id);
if (detail2.Consumable_Arrived_order__c != null) {
arrivedSet.add(detail2.Consumable_Arrived_order__c);
}
@@ -306,8 +306,8 @@
}
}
}
- if (Trigger.isDelete) {
- for (Consumable_order_details2__c det2 : Trigger.old) {
+ if (trigger.isDelete){
+ for (Consumable_order_details2__c det2 : Trigger.old) {
if (det2.Consumable_Arrived_order__c != null) {
arrivedSet.add(det2.Consumable_Arrived_order__c);
}
@@ -318,25 +318,15 @@
}
}
System.debug('arrivedSet +++++' + arrivedSet);
- // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃arrivedset start by 寮犵帀灞�
+ // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃arrivedset start by 寮犵帀灞�
if (StaticParameter.EscapeConsumableOrderDetail2Trigger) {
- return;
+ return ;
}
- // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃arrivedset start by 寮犵帀灞�
+ // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃arrivedset start by 寮犵帀灞�
if (arrivedSet.size() > 0) {
- Map<Id, Consumable_order__c> arrivedMap = new Map<Id, Consumable_order__c>(
- [
- SELECT Id, RecordType.DeveloperName, Name
- FROM Consumable_order__c
- WHERE Id IN :arrivedSet
- ]
- );
- List<Consumable_orderdetails__c> detail1List = [
- SELECT Id, Name, Asset_Model_No__c, Consumable_count__c, Consumable_order__c
- FROM Consumable_orderdetails__c
- WHERE Consumable_order__c IN :arrivedSet
- ];
- Map<String, Consumable_orderdetails__c> detail1Map = new Map<String, Consumable_orderdetails__c>();
+ Map<Id, Consumable_order__c> arrivedMap = new Map<Id, Consumable_order__c>([select Id, RecordType.DeveloperName, Name from Consumable_order__c where Id in :arrivedSet]);
+ List<Consumable_orderdetails__c> detail1List = [select Id, Name, Asset_Model_No__c, Consumable_count__c, Consumable_order__c from Consumable_orderdetails__c where Consumable_order__c in :arrivedSet];
+ Map<String,Consumable_orderdetails__c> detail1Map = new Map<String,Consumable_orderdetails__c>();
for (Consumable_orderdetails__c detail1 : detail1List) {
String key = '' + detail1.Consumable_order__c + detail1.Asset_Model_No__c;
detail1Map.put(key, detail1);
@@ -349,25 +339,21 @@
}
}
- AggregateResult[] results = [
- SELECT Consumable_Arrived_order__c, Asset_Model_No__c, count(bar_code__c) recordCount
- FROM Consumable_order_details2__c
- WHERE
- Consumable_Arrived_order__c IN :arrivedSet
- AND Dealer_Arrive__c = TRUE
- //and Dealer_Returned__c <> true
- AND (RemoveBox_No__c = NULL
- OR RemoveBox_No__c = 1)
- GROUP BY Consumable_Arrived_order__c, Asset_Model_No__c
- ];
+ AggregateResult[] results = [select Consumable_Arrived_order__c, Asset_Model_No__c, count(bar_code__c) recordCount
+ from Consumable_order_details2__c
+ where Consumable_Arrived_order__c in :arrivedSet
+ and Dealer_Arrive__c = true
+ //and Dealer_Returned__c <> true
+ AND (RemoveBox_No__c=null or RemoveBox_No__c=1)
+ group by Consumable_Arrived_order__c, Asset_Model_No__c];
Map<String, Integer> keyCount = new Map<String, Integer>();
-
- for (AggregateResult ar : results) {
+
+ for(AggregateResult ar: results){
String key = '' + ar.get('Consumable_Arrived_order__c') + ar.get('Asset_Model_No__c');
keyCount.put(key, Integer.valueOf(ar.get('recordCount')));
}
//Back up by DTT - Li Jun 2023-06-14 Start
- // 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇夸唬涓嬮潰SQL select start by 寮犵帀灞�
+ // 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇夸唬涓嬮潰SQL select start by 寮犵帀灞�
// List<RecordType> rtList = new List<RecordType>();
// for(RecordType rtl : allrtList){
// if('Detail1_Arrival'.equals(rtl.DeveloperName)){
@@ -375,7 +361,7 @@
// }
// }
// 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇夸唬涓嬮潰SQL select end by 寮犵帀灞�
- //Back up by DTT - Li Jun 2023-06-14 End
+ //Back up by DTT - Li Jun 2023-06-14 End
/* 2018骞�8鏈�9鏃� HWAG-B3D9UV 鍘熻幏鍙� recordtype start by 寮犵帀灞�
List<RecordType> rtList = [select Id from RecordType where DeveloperName = 'Detail1_Arrival' and SobjectType = 'Consumable_orderdetails__c'];
@@ -383,52 +369,45 @@
//Back up by DTT - Li Jun 2023-06-14 Start
// Id recordTypeId = null;
// if (rtList.size() > 0) recordTypeId = rtList[0].Id;
- //Back up by DTT - Li Jun 2023-06-14 End
- Id recordtypeId = Schema.SObjectType.Consumable_Orderdetails__c.getRecordTypeInfosByDeveloperName()
- .get('Detail1_Arrival')
- .getRecordTypeId();
- results = [
- SELECT Consumable_order__c, count(Id) noCount
- FROM Consumable_orderdetails__c
- WHERE Consumable_order__c IN :arrivedSet
- GROUP BY Consumable_order__c
- ];
+ //Back up by DTT - Li Jun 2023-06-14 End
+ Id recordtypeId = Schema.SObjectType.Consumable_Orderdetails__c.getRecordTypeInfosByDeveloperName().get('Detail1_Arrival').getRecordTypeId();
+ results = [select Consumable_order__c, count(Id) noCount
+ from Consumable_orderdetails__c
+ where Consumable_order__c in :arrivedSet
+ group by Consumable_order__c];
System.debug('results +++++' + results);
Map<Id, Integer> noCount = new Map<Id, Integer>();
- for (AggregateResult ar : results) {
- noCount.put((Id) ar.get('Consumable_order__c'), Integer.valueOf(ar.get('noCount')));
+ for(AggregateResult ar: results){
+ noCount.put((Id)ar.get('Consumable_order__c'), Integer.valueOf(ar.get('noCount')));
}
System.debug('noCount +++++' + noCount);
Map<String, Consumable_orderdetails__c> upsertMap = new Map<String, Consumable_orderdetails__c>();
Map<String, Consumable_orderdetails__c> deletetMap = new Map<String, Consumable_orderdetails__c>();
Map<String, String> assetModelNoMap = new Map<String, String>();
- if (Trigger.isUpdate || Trigger.isInsert) {
- for (Consumable_order_details2__c detail2 : Trigger.New) {
+ if (trigger.isUpdate || trigger.isInsert){
+ for (Consumable_order_details2__c detail2 : Trigger.New) {
//Dataloader銇у垵鏈熷湪搴櫥閷层倰銇椼仧銇傘仺銆併儑銉笺偪淇銇屽叆銇c仧銇ㄣ亶銇槑绱�1銇屾洿鏂般仌銈屻仾銇勩��
- //if (trigger.isUpdate && detail2.ManualRegisteredStock__c == true) continue;
- if (detail2.Consumable_Arrived_order__c == null)
- continue;
+ //if (trigger.isUpdate && detail2.ManualRegisteredStock__c == true) continue;
+ if (detail2.Consumable_Arrived_order__c == null) continue;
String key = '' + detail2.Consumable_Arrived_order__c + detail2.Asset_Model_No__c;
//if (upsertMap.get(key) != null) continue;
Integer count = keyCount.get(key);
Consumable_orderdetails__c detail1 = detail1Map.get(key);
- if (detail1 == null)
- detail1 = new Consumable_orderdetails__c();
+ if (detail1 == null) detail1 = new Consumable_orderdetails__c();
detail1.Consumable_Arrivecount__c = count;
if (detail1.Id == null) {
Consumable_order__c co = arrivedMap.get(detail2.Consumable_Arrived_order__c);
Integer index = noCount.get(co.Id);
- if (index == null)
- index = 0;
- if (assetModelNoMap.containsKey(detail2.Asset_Model_No__c)) {
+ if (index == null) index = 0;
+ if(assetModelNoMap.containsKey(detail2.Asset_Model_No__c)){
continue;
- } else {
+ }else{
assetModelNoMap.put(detail2.Asset_Model_No__c, detail2.Asset_Model_No__c);
noCount.put(co.Id, index + 1);
}
noCount.put(co.Id, index + 1);
- String newName = co.Name + '-';
+ String newName = co.Name+'-';
System.debug('index +++++' + index);
if (index < 99) {
newName += '0';
@@ -445,83 +424,80 @@
detail1.RecordTypeId = recordTypeId;
//detail1.Consumable_principal__c = co.Id;
detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
+
}
upsertMap.put(key, detail1);
}
}
- if (Trigger.isUpdate) {
- for (Consumable_order_details2__c detail2 : Trigger.old) {
- //Dataloader銇у垵鏈熷湪搴櫥閷层倰銇椼仧銇傘仺銆併儑銉笺偪淇銇屽叆銇c仧銇ㄣ亶銇槑绱�1銇屾洿鏂般仌銈屻仾銇勩��
- //if (detail2.ManualRegisteredStock__c == true) continue;
- if (detail2.Consumable_Arrived_order__c == null)
- continue;
- String key = '' + detail2.Consumable_Arrived_order__c + detail2.Asset_Model_No__c;
+ if (trigger.isUpdate){
+ for (Consumable_order_details2__c detail2 : Trigger.old) {
+ //Dataloader銇у垵鏈熷湪搴櫥閷层倰銇椼仧銇傘仺銆併儑銉笺偪淇銇屽叆銇c仧銇ㄣ亶銇槑绱�1銇屾洿鏂般仌銈屻仾銇勩��
+ //if (detail2.ManualRegisteredStock__c == true) continue;
+ if (detail2.Consumable_Arrived_order__c == null) continue;
+ String key = '' + detail2.Consumable_Arrived_order__c + detail2.Asset_Model_No__c;
//if (upsertMap.get(key) != null) continue;
- Integer count = keyCount.get(key);
+ Integer count = keyCount.get(key);
Consumable_orderdetails__c detail1 = detail1Map.get(key);
- if ((count == null || count == 0) && detail1 != null) {
+ if ((count == null || count ==0) && detail1 !=null){
//delete detail1;
- deletetMap.put(key, detail1);
+ deletetMap.put(key,detail1);
continue;
}
- if (detail1 == null)
- continue;
+ if (detail1 == null) continue;
detail1.Consumable_Arrivecount__c = count;
if (detail1.Id == null) {
- Consumable_order__c co = arrivedMap.get(detail2.Consumable_Arrived_order__c);
- Integer index = noCount.get(co.Id);
- if (index == null)
- index = 0;
- System.debug('indexUp +++++' + index);
- noCount.put(co.Id, index + 1);
- System.debug('noCountUp +++++' + noCount);
- String newName = co.Name + '-';
- if (index < 99) {
- newName += '0';
- }
- if (index < 9) {
- newName += '0';
- }
- newName += String.valueOf(index + 1);
- System.debug('newNameUp +++++' + newName);
- detail1.Name = newName;
- //detail1.Asset_Model_No__c = detail2.Asset_Model_No__c;
- detail1.Consumable_product__c = detail2.Consumable_product__c;
- detail1.Consumable_order__c = co.Id;
- detail1.RecordTypeId = recordTypeId;
- //detail1.Consumable_principal__c = co.Id;
- detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
+ Consumable_order__c co = arrivedMap.get(detail2.Consumable_Arrived_order__c);
+ Integer index = noCount.get(co.Id);
+ if (index == null) index = 0;
+ System.debug('indexUp +++++' + index);
+ noCount.put(co.Id, index + 1);
+ System.debug('noCountUp +++++' + noCount);
+ String newName = co.Name+'-';
+ if (index < 99) {
+ newName += '0';
+ }
+ if (index < 9) {
+ newName += '0';
+ }
+ newName += String.valueOf(index + 1);
+ System.debug('newNameUp +++++' + newName);
+ detail1.Name = newName;
+ //detail1.Asset_Model_No__c = detail2.Asset_Model_No__c;
+ detail1.Consumable_product__c = detail2.Consumable_product__c;
+ detail1.Consumable_order__c = co.Id;
+ detail1.RecordTypeId = recordTypeId;
+ //detail1.Consumable_principal__c = co.Id;
+ detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
+
+
}
upsertMap.put(key, detail1);
}
}
- if (Trigger.isDelete) {
+ if (trigger.isDelete){
for (Consumable_order_details2__c detail2 : Trigger.old) {
- if (detail2.Consumable_Arrived_order__c == null)
- continue;
+ if (detail2.Consumable_Arrived_order__c == null) continue;
String key = '' + detail2.Consumable_Arrived_order__c + detail2.Asset_Model_No__c;
//if (upsertMap.get(key) != null) continue;
Integer count = keyCount.get(key);
Consumable_orderdetails__c detail1 = detail1Map.get(key);
- if ((count == null || count == 0) && detail1 != null) {
+ if ((count == null || count ==0) && detail1 !=null){
//delete detail1;
- deletetMap.put(key, detail1);
+ deletetMap.put(key,detail1);
continue;
}
- if (detail1 == null)
- detail1 = new Consumable_orderdetails__c();
+ if (detail1 == null) detail1 = new Consumable_orderdetails__c();
detail1.Consumable_Arrivecount__c = count;
if (detail1.Id == null) {
Consumable_order__c co = arrivedMap.get(detail2.Consumable_Arrived_order__c);
Integer index = noCount.get(co.Id);
- if (index == null)
- index = 0;
+ if (index == null) index = 0;
noCount.put(co.Id, index + 1);
- String newName = co.Name + '-';
+ String newName = co.Name+'-';
if (index < 99) {
newName += '0';
}
@@ -536,39 +512,31 @@
detail1.RecordTypeId = recordTypeId;
//detail1.Consumable_principal__c = co.Id;
detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
+
}
upsertMap.put(key, detail1);
}
}
Database.upsert(upsertMap.values(), true);
- if (deletetMap.size() > 0) {
- Database.delete(deletetMap.values(), true);
+ if(deletetMap.size()>0){
+ Database.delete(deletetMap.values(),true);
}
+
}
}
- // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃returnSet start by 寮犵帀灞�
-
- if (Trigger.isUpdate || Trigger.isInsert) {
- if (StaticParameter.EscapeConsumableOrderDetail2Trigger) {
- return;
- }
// 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃returnSet start by 寮犵帀灞�
- if (returnSet.size() > 0) {
- Map<Id, Consumable_order__c> returnMap = new Map<Id, Consumable_order__c>(
- [
- SELECT Id, RecordType.DeveloperName, Name
- FROM Consumable_order__c
- WHERE Id IN :returnSet
- ]
- );
- List<Consumable_orderdetails__c> detail1List = [
- SELECT Id, Name, Asset_Model_No__c, Consumable_count__c, Consumable_order__c
- FROM Consumable_orderdetails__c
- WHERE Consumable_order__c IN :returnSet
- ];
- Map<String, Consumable_orderdetails__c> detail1Map = new Map<String, Consumable_orderdetails__c>();
+ if (trigger.isUpdate || trigger.isInsert){
+ if (StaticParameter.EscapeConsumableOrderDetail2Trigger) {
+ return ;
+ }
+ // 2018骞�8鏈�14鏃� HWAG-B3D9UV 鍦ㄨ繘琛孨FM110澶勭悊鏃� 璺宠繃returnSet start by 寮犵帀灞�
+ if (returnSet.size() > 0) {
+ Map<Id, Consumable_order__c> returnMap = new Map<Id, Consumable_order__c>([select Id, RecordType.DeveloperName, Name from Consumable_order__c where Id in :returnSet]);
+ List<Consumable_orderdetails__c> detail1List = [select Id, Name, Asset_Model_No__c, Consumable_count__c, Consumable_order__c from Consumable_orderdetails__c where Consumable_order__c in :returnSet];
+ Map<String,Consumable_orderdetails__c> detail1Map = new Map<String,Consumable_orderdetails__c>();
+
for (Consumable_orderdetails__c detail1 : detail1List) {
String key = '' + detail1.Consumable_order__c + detail1.Asset_Model_No__c;
detail1Map.put(key, detail1);
@@ -581,18 +549,17 @@
}
}
- AggregateResult[] results = [
- SELECT Consumable_Return_order__c, Asset_Model_No__c, count(Id) recordCount
- FROM Consumable_order_details2__c
- WHERE Consumable_Return_order__c IN :returnSet AND Dealer_Returned__c = TRUE
- GROUP BY Consumable_Return_order__c, Asset_Model_No__c
- ];
+ AggregateResult[] results = [select Consumable_Return_order__c, Asset_Model_No__c, count(Id) recordCount
+ from Consumable_order_details2__c
+ where Consumable_Return_order__c in :returnSet
+ and Dealer_Returned__c = true
+ group by Consumable_Return_order__c, Asset_Model_No__c];
Map<String, Integer> keyCount = new Map<String, Integer>();
- for (AggregateResult ar : results) {
+ for(AggregateResult ar: results){
String key = '' + ar.get('Consumable_Return_order__c') + ar.get('Asset_Model_No__c');
keyCount.put(key, Integer.valueOf(ar.get('recordCount')));
}
- //Back up by DTT - Li Jun 2023-06-14 Start for reduce soql times
+ //Back up by DTT - Li Jun 2023-06-14 Start for reduce soql times
// 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇夸唬涓嬮潰SQL select start by 寮犵帀灞�
// List<RecordType> rtList = new List<RecordType>();
// for(RecordType rtl : allrtList){
@@ -601,25 +568,21 @@
// }
// }
// 2018骞�8鏈�9鏃� HWAG-B3D9UV 鏇夸唬涓嬮潰SQL select end by 寮犵帀灞�
- //Back up by DTT - Li Jun 2023-06-14 End
+ //Back up by DTT - Li Jun 2023-06-14 End
/* 2018骞�8鏈�9鏃� HWAG-B3D9UV 鍘熻幏鍙� recordtype start by 寮犵帀灞�
List<RecordType> rtList = [select Id from RecordType where DeveloperName = 'Detail1_ReturnGoods' and SobjectType = 'Consumable_orderdetails__c'];
2018骞�8鏈�9鏃� HWAG-B3D9UV 鍘熻幏鍙� recordtype end by 寮犵帀灞� */
- Id recordTypeId = Schema.SObjectType.Consumable_Orderdetails__c.getRecordTypeInfosByDeveloperName()
- .get('Detail1_ReturnGoods')
- .getRecordTypeId();
+ Id recordTypeId = Schema.SObjectType.Consumable_Orderdetails__c.getRecordTypeInfosByDeveloperName().get('Detail1_ReturnGoods').getRecordTypeId();
//if (rtList.size() > 0) recordTypeId = rtList[0].Id;
- results = [
- SELECT Consumable_order__c, count(Id) noCount
- FROM Consumable_orderdetails__c
- WHERE Consumable_order__c IN :returnSet
- GROUP BY Consumable_order__c
- ];
+ results = [select Consumable_order__c, count(Id) noCount
+ from Consumable_orderdetails__c
+ where Consumable_order__c in :returnSet
+ group by Consumable_order__c];
Map<Id, Integer> noCount = new Map<Id, Integer>();
- for (AggregateResult ar : results) {
- noCount.put((Id) ar.get('Consumable_order__c'), Integer.valueOf(ar.get('noCount')));
+ for(AggregateResult ar: results){
+ noCount.put((Id)ar.get('Consumable_order__c'), Integer.valueOf(ar.get('noCount')));
}
Map<String, Consumable_orderdetails__c> upsertMap = new Map<String, Consumable_orderdetails__c>();
@@ -634,35 +597,25 @@
for (Consumable_order_details2__c detail2 : Trigger.New) {
Consumable_order_details2__c oldDetail2 = null;
- if (detail2.Consumable_Return_order__c == null)
- continue;
+ if (detail2.Consumable_Return_order__c == null) continue;
String key = '' + detail2.Consumable_Return_order__c + detail2.Asset_Model_No__c;
- if (Trigger.isUpdate)
- oldDetail2 = Trigger.oldMap.get(detail2.Id);
+ if(Trigger.isUpdate) oldDetail2 = Trigger.oldMap.get(detail2.Id);
if (oldDetail2 != null) {
if (keyCount.containsKey(key)) {
returnCount += 1;
if (oldDetail2.Consumable_Sale_order__c != null) {
- Integer sCount = updatedSaleCount.containsKey(
- '' + oldDetail2.Consumable_Sale_order__c + detail2.Asset_Model_No__c
- )
- ? updatedSaleCount.get('' + oldDetail2.Consumable_Sale_order__c + detail2.Asset_Model_No__c)
- : 0;
+ Integer sCount = updatedSaleCount.containsKey(''+oldDetail2.Consumable_Sale_order__c+detail2.Asset_Model_No__c) ? updatedSaleCount.get(''+oldDetail2.Consumable_Sale_order__c+detail2.Asset_Model_No__c) : 0;
sCount += 1;
- updatedSaleCount.put('' + oldDetail2.Consumable_Sale_order__c + detail2.Asset_Model_No__c, sCount);
+ updatedSaleCount.put(''+oldDetail2.Consumable_Sale_order__c+detail2.Asset_Model_No__c, sCount);
updatedSaleId.add(oldDetail2.Consumable_Sale_order__c);
}
if (oldDetail2.Consumable_Shipment_order__c != null) {
- Integer sCount = updatedShipmentCount.containsKey(
- '' + oldDetail2.Consumable_Shipment_order__c + detail2.Asset_Model_No__c
- )
- ? updatedShipmentCount.get('' + oldDetail2.Consumable_Shipment_order__c + detail2.Asset_Model_No__c)
- : 0;
+ Integer sCount = updatedShipmentCount.containsKey(''+oldDetail2.Consumable_Shipment_order__c+detail2.Asset_Model_No__c) ? updatedShipmentCount.get(''+oldDetail2.Consumable_Shipment_order__c+detail2.Asset_Model_No__c) : 0;
sCount += 1;
-
- updatedShipmentCount.put('' + oldDetail2.Consumable_Shipment_order__c + detail2.Asset_Model_No__c, sCount);
+
+ updatedShipmentCount.put(''+oldDetail2.Consumable_Shipment_order__c+detail2.Asset_Model_No__c, sCount);
updatedShipmentId.add(oldDetail2.Consumable_Shipment_order__c);
}
/*if (oldDetail2.Invoice_No__c != null) {
@@ -680,23 +633,20 @@
}*/
}
}
- if (upsertMap.get(key) != null)
- continue;
+ if (upsertMap.get(key) != null) continue;
Integer count = keyCount.get(key);
Consumable_orderdetails__c detail1 = detail1Map.get(key);
- if (detail1 == null)
- detail1 = new Consumable_orderdetails__c();
+ if (detail1 == null) detail1 = new Consumable_orderdetails__c();
detail1.RrturnPro_count__c = count;
if (detail1.Id == null) {
Consumable_order__c co = returnMap.get(detail2.Consumable_Return_order__c);
Integer index = noCount.get(co.Id);
- if (index == null)
- index = 0;
+ if (index == null) index = 0;
noCount.put(co.Id, index + 1);
- String newName = co.Name + '-';
+ String newName = co.Name+'-';
if (index < 99) {
newName += '0';
}
@@ -711,47 +661,47 @@
detail1.RecordTypeId = recordTypeId;
//detail1.Consumable_principal__c = co.Id;
detail1.Intra_Trade_List_RMB__c = detail2.Intra_Trade_List_RMB__c;
+
}
upsertMap.put(key, detail1);
}
Database.upsert(upsertMap.values(), true);
// 2018骞�8鏈�8鏃� HWAG-B3D9UV 鍑忓皯 select 鏁伴噺 start by 寮犵帀灞�
- List<Consumable_orderdetails__c> Consumable_orderdetailsList = [
- SELECT Id, Name, Asset_Model_No__c, RrturnPro_count__c, Consumable_order__c, Invoicedet1_OD_link__c
- FROM Consumable_orderdetails__c
- WHERE
- Consumable_order__c IN :updatedSaleId
- OR Consumable_order__c IN :updatedShipmentId
- OR Consumable_order__c IN :updatedConInvoiceId
- ];
-
- List<Consumable_orderdetails__c> detail1SaleList = new List<Consumable_orderdetails__c>();
-
- for (Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList) {
- if (updatedSaleId.contains(orderdetails.id) && 'Sale'.equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)) {
+ List<Consumable_orderdetails__c> Consumable_orderdetailsList =
+ [select Id, Name, Asset_Model_No__c, RrturnPro_count__c,
+ Consumable_order__c,Invoicedet1_OD_link__c
+ from Consumable_orderdetails__c
+ where Consumable_order__c in :updatedSaleId
+ or Consumable_order__c in :updatedShipmentId
+ or Consumable_order__c in :updatedConInvoiceId];
+
+ List<Consumable_orderdetails__c> detail1SaleList
+ = new List<Consumable_orderdetails__c>();
+
+ for (Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList){
+ if(updatedSaleId.contains(orderdetails.id)
+ && 'Sale'.equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)){
detail1SaleList.add(orderdetails);
}
}
- List<Consumable_orderdetails__c> detail1ShipmentList = new List<Consumable_orderdetails__c>();
+ List<Consumable_orderdetails__c> detail1ShipmentList
+ = new List<Consumable_orderdetails__c>();
- for (Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList) {
- if (
- updatedShipmentId.contains(orderdetails.id) &&
- 'Shipment'.equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)
- ) {
+ for (Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList){
+ if(updatedShipmentId.contains(orderdetails.id)
+ && 'Shipment'.equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)){
detail1ShipmentList.add(orderdetails);
}
}
- List<Consumable_orderdetails__c> detail1ConInvoiceList = new List<Consumable_orderdetails__c>();
+ List<Consumable_orderdetails__c> detail1ConInvoiceList
+ = new List<Consumable_orderdetails__c>();
- for (Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList) {
- if (
- updatedConInvoiceId.contains(orderdetails.id) &&
- 'Order_Invoice'.equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)
- ) {
+ for (Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList){
+ if(updatedConInvoiceId.contains(orderdetails.id)
+ && 'Order_Invoice'.equals(orderdetails.Consumable_order__r.RecordType.DeveloperName)){
detail1ConInvoiceList.add(orderdetails);
}
}
@@ -779,31 +729,23 @@
List<Consumable_orderdetails__c> updateData = new List<Consumable_orderdetails__c>();
for (Consumable_orderdetails__c detail1Sale : detail1SaleList) {
- Integer count = updatedSaleCount.get('' + detail1Sale.Consumable_order__c + detail1Sale.Asset_Model_No__c);
+ Integer count = updatedSaleCount.get(''+detail1Sale.Consumable_order__c+detail1Sale.Asset_Model_No__c);
if (count != null) {
detail1Sale.RrturnPro_count__c += count;
updateData.add(detail1Sale);
}
+
}
for (Consumable_orderdetails__c detail1Shipment : detail1ShipmentList) {
- Integer count = updatedShipmentCount.get('' + detail1Shipment.Consumable_order__c + detail1Shipment.Asset_Model_No__c);
+ Integer count = updatedShipmentCount.get(''+detail1Shipment.Consumable_order__c+detail1Shipment.Asset_Model_No__c);
if (count != null) {
detail1Shipment.RrturnPro_count__c += count;
updateData.add(detail1Shipment);
}
}
for (Consumable_orderdetails__c detail1ConInvoice : detail1ConInvoiceList) {
- Integer count = updatedConInvoiceCount.get(
- '' +
- detail1ConInvoice.Consumable_order__c +
- detail1ConInvoice.Invoicedet1_OD_link__c +
- detail1ConInvoice.Asset_Model_No__c
- );
- if (
- count != null &&
- (detail1ConInvoice.Invoicedet1_OD_link__c ==
- shipmentIdMap.get('' + detail1ConInvoice.Invoicedet1_OD_link__c + detail1ConInvoice.Asset_Model_No__c))
- ) {
+ Integer count = updatedConInvoiceCount.get(''+detail1ConInvoice.Consumable_order__c+detail1ConInvoice.Invoicedet1_OD_link__c+detail1ConInvoice.Asset_Model_No__c);
+ if (count != null && (detail1ConInvoice.Invoicedet1_OD_link__c == shipmentIdMap.get(''+detail1ConInvoice.Invoicedet1_OD_link__c+detail1ConInvoice.Asset_Model_No__c)) ) {
detail1ConInvoice.RrturnPro_count__c += count;
//updateData.add(detail1ConInvoice);
}
@@ -811,5 +753,6 @@
Database.upsert(updateData, true);
}
+
}
-}
+}
\ No newline at end of file
--
Gitblit v1.9.1