| | |
| | | trigger ConsumableOrderDetail2Trigger on Consumable_order_details2__c (after insert, after update, after delete) { |
| | | Set<String> orderSet = new Set<String>(); |
| | | |
| | | if (StaticParameter.EscapeOrderDetail2Trigger) { |
| | | return ; |
| | | trigger ConsumableOrderDetail2Trigger on Consumable_order_details2__c( |
| | | after insert, |
| | | after update, |
| | | after delete |
| | | ) { |
| | | Set<String> orderSet = new Set<String>(); |
| | | |
| | | if (StaticParameter.EscapeOrderDetail2Trigger) { |
| | | 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 (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 (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 (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 |
| | | FROM Consumable_order_details2__c |
| | | 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) |
| | | ) { |
| | | 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 (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); |
| | | List<Consumable_Order__c> consumableOrderlist = new List<Consumable_Order__c>(); |
| | | for (String strOrder : orderSet) { |
| | | Integer cnt = 0; |
| | | for (string key : orderSetResults.keySet()) { |
| | | if (key.equals(strOrder)) { |
| | | cnt = orderSetResults.get(key); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | Consumable_Order__c consumableOrder = new Consumable_Order__c(); |
| | | consumableOrder.Id = strOrder; |
| | | consumableOrder.OrderNumber_arrived__c = cnt; |
| | | consumableOrderlist.add(consumableOrder); |
| | | } |
| | | // 2018年8月9日 HWAG-B3D9UV 替换下面原有SQL 使用 map 完成赋值 end end by 张玉山 |
| | | |
| | | 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 (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 |
| | | FROM Consumable_order_details2__c |
| | | 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)){ |
| | | 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); |
| | | } |
| | | } |
| | | |
| | | List<Consumable_Order__c> consumableOrderlist = new List<Consumable_Order__c>(); |
| | | for (String strOrder:orderSet){ |
| | | Integer cnt =0; |
| | | for (string key : orderSetResults.keySet()) { |
| | | if(key.equals(strOrder)){ |
| | | cnt = orderSetResults.get(key); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | Consumable_Order__c consumableOrder = new Consumable_Order__c(); |
| | | consumableOrder.Id = strOrder; |
| | | consumableOrder.OrderNumber_arrived__c = cnt; |
| | | consumableOrderlist.add(consumableOrder); |
| | | } |
| | | // 2018年8月9日 HWAG-B3D9UV 替换下面原有SQL 使用 map 完成赋值 end end by 张玉山 |
| | | |
| | | /* 2018年8月9日 HWAG-B3D9UV 原有SQL 与赋值 start by 张玉山 |
| | | /* 2018年8月9日 HWAG-B3D9UV 原有SQL 与赋值 start by 张玉山 |
| | | AggregateResult[] results = [SELECT Consumable_order_minor__c,count(Id) cnt |
| | | FROM Consumable_order_details2__c |
| | | WHERE Consumable_order_minor__c in :orderSet |
| | |
| | | } |
| | | 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 |
| | | ) { |
| | | 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 |
| | | ); |
| | | resultsKeySet.add(Consumable_order_minor_str); |
| | | } |
| | | |
| | | //更新消耗品订单的发货日期 |
| | | // 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){ |
| | | 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); |
| | | resultsKeySet.add(Consumable_order_minor_str); |
| | | } |
| | | }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); |
| | | resultsKeySet.add(Consumable_order_minor_str); |
| | | } |
| | | }else{ |
| | | DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c); |
| | | resultsKeySet.add(Consumable_order_minor_str); |
| | | } |
| | | //获取最早发货时间 pk part1 end |
| | | } 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 |
| | | ); |
| | | resultsKeySet.add(Consumable_order_minor_str); |
| | | } |
| | | |
| | | //两个DeliverdateResults.keySet(),DeliverdateminResults.keySet() 合并作为一个List ,遍历List |
| | | //获取最早发货时间 pk part2 start |
| | | consumableOrderlist = new List<Consumable_Order__c>(); |
| | | for(string temp : resultsKeySet){ |
| | | Consumable_Order__c consumableOrder1 = new Consumable_Order__c(); |
| | | consumableOrder1.Id = temp; |
| | | if(DeliverdateResults.get(temp)!=null){ |
| | | consumableOrder1.Shipment_Date__c = DeliverdateResults.get(temp); |
| | | } |
| | | 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()) { |
| | | // if(DeliverdateminResults.get(key)!=null){ |
| | | // Consumable_Order__c consumableOrder1 = new Consumable_Order__c(); |
| | | // consumableOrder1.Id = key; |
| | | // consumableOrder1.First_Delivery__c = DeliverdateResults.get(key); |
| | | // consumableOrderminlist.add(consumableOrder1); |
| | | // } |
| | | // } |
| | | |
| | | // 2018年8月9日 HWAG-B3D9UV 替换下面原有SQL 使用 map 完成赋值 end by 张玉山 |
| | | |
| | | //获取早发货日期 start |
| | | // system.debug('DeliverdateResults==============' + DeliverdateResults); |
| | | // system.debug('走到最早发货日期'); |
| | | // 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(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); |
| | | // } |
| | | } else { |
| | | DeliverdateminResults.put( |
| | | Consumable_order_minor_str, |
| | | results1.Deliver_date__c |
| | | ); |
| | | resultsKeySet.add(Consumable_order_minor_str); |
| | | } |
| | | //获取最早发货时间 pk part1 end |
| | | } |
| | | |
| | | // }else{ |
| | | // DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c); |
| | | // } |
| | | // } |
| | | // List<Consumable_Order__c> consumableOrderminlist = new List<Consumable_Order__c>(); |
| | | // for (string key : DeliverdateminResults.keySet()) { |
| | | // if(DeliverdateminResults.get(key)!=null){ |
| | | // Consumable_Order__c consumableOrder1 = new Consumable_Order__c(); |
| | | // consumableOrder1.Id = key; |
| | | // consumableOrder1.First_Delivery__c = DeliverdateResults.get(key); |
| | | // consumableOrderminlist.add(consumableOrder1); |
| | | // } |
| | | // } |
| | | //两个DeliverdateResults.keySet(),DeliverdateminResults.keySet() 合并作为一个List ,遍历List |
| | | //获取最早发货时间 pk part2 start |
| | | consumableOrderlist = new List<Consumable_Order__c>(); |
| | | for (string temp : resultsKeySet) { |
| | | Consumable_Order__c consumableOrder1 = new Consumable_Order__c(); |
| | | consumableOrder1.Id = temp; |
| | | if (DeliverdateResults.get(temp) != null) { |
| | | consumableOrder1.Shipment_Date__c = DeliverdateResults.get(temp); |
| | | } |
| | | if (DeliverdateminResults.get(temp) != null) { |
| | | consumableOrder1.First_Delivery__c = DeliverdateResults.get(temp); |
| | | } |
| | | consumableOrderlist.add(consumableOrder1); |
| | | } |
| | | |
| | | // if(consumableOrderminlist.size() > 0){ |
| | | // update consumableOrderminlist; |
| | | // } |
| | | // system.debug('DeliverdateResults==============' + DeliverdateResults); |
| | | // //获取最早发货日期 end |
| | | //获取最早发货时间 pk part2 end |
| | | // List<Consumable_Order__c> consumableOrderminlist = new List<Consumable_Order__c>();//最早发货时间 |
| | | // for (string key : DeliverdateminResults.keySet()) { |
| | | // if(DeliverdateminResults.get(key)!=null){ |
| | | // Consumable_Order__c consumableOrder1 = new Consumable_Order__c(); |
| | | // consumableOrder1.Id = key; |
| | | // consumableOrder1.First_Delivery__c = DeliverdateResults.get(key); |
| | | // consumableOrderminlist.add(consumableOrder1); |
| | | // } |
| | | // } |
| | | |
| | | /* 2018年8月9日 HWAG-B3D9UV 原有SQL 与赋值 start by 张玉山 |
| | | // 2018年8月9日 HWAG-B3D9UV 替换下面原有SQL 使用 map 完成赋值 end by 张玉山 |
| | | |
| | | //获取早发货日期 start |
| | | // system.debug('DeliverdateResults==============' + DeliverdateResults); |
| | | // system.debug('走到最早发货日期'); |
| | | // 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(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); |
| | | // } |
| | | |
| | | // }else{ |
| | | // DeliverdateminResults.put(Consumable_order_minor_str,results1.Deliver_date__c); |
| | | // } |
| | | // } |
| | | // List<Consumable_Order__c> consumableOrderminlist = new List<Consumable_Order__c>(); |
| | | // for (string key : DeliverdateminResults.keySet()) { |
| | | // if(DeliverdateminResults.get(key)!=null){ |
| | | // Consumable_Order__c consumableOrder1 = new Consumable_Order__c(); |
| | | // consumableOrder1.Id = key; |
| | | // consumableOrder1.First_Delivery__c = DeliverdateResults.get(key); |
| | | // consumableOrderminlist.add(consumableOrder1); |
| | | // } |
| | | // } |
| | | |
| | | // if(consumableOrderminlist.size() > 0){ |
| | | // update consumableOrderminlist; |
| | | // } |
| | | // system.debug('DeliverdateResults==============' + DeliverdateResults); |
| | | // //获取最早发货日期 end |
| | | |
| | | /* 2018年8月9日 HWAG-B3D9UV 原有SQL 与赋值 start by 张玉山 |
| | | AggregateResult[] results1 = [SELECT Consumable_order_minor__c,max(Deliver_date__c) Deliver_date__c |
| | | FROM Consumable_order_details2__c |
| | | WHERE Consumable_order_minor__c in :orderSet |
| | |
| | | } |
| | | } |
| | | 2018年8月9日 HWAG-B3D9UV 原有SQL 与赋值 end by 张玉山 */ |
| | | 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){ |
| | | 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); |
| | | } |
| | | } |
| | | consumableOrderlist = new List<Consumable_Order__c>(); |
| | | for (String strOrder:orderSet){ |
| | | Integer cnt =0; |
| | | for (string key : resultsMap2.keySet()) { |
| | | if(key.equals(strOrder)){ |
| | | cnt = resultsMap2.get(key); |
| | | break; |
| | | } |
| | | } |
| | | if (consumableOrderlist.size() > 0) { |
| | | update consumableOrderlist; |
| | | } |
| | | |
| | | Consumable_Order__c consumableOrder2 = new Consumable_Order__c(); |
| | | consumableOrder2.Id = strOrder; |
| | | consumableOrder2.Delivery_detail_count__c = cnt; |
| | | consumableOrderlist.add(consumableOrder2); |
| | | //更新待确认收货数量 |
| | | // 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 |
| | | ) { |
| | | 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); |
| | | } |
| | | } |
| | | consumableOrderlist = new List<Consumable_Order__c>(); |
| | | for (String strOrder : orderSet) { |
| | | Integer cnt = 0; |
| | | for (string key : resultsMap2.keySet()) { |
| | | if (key.equals(strOrder)) { |
| | | cnt = resultsMap2.get(key); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | // 2018年8月9日 HWAG-B3D9UV 替换下面原有SQL 使用 map 完成赋值 end by 张玉山 |
| | | |
| | | /* 2018年8月9日 HWAG-B3D9UV 原有SQL 与赋值 start by 张玉山 |
| | | 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; |
| | | } |
| | | 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 |
| | | WHERE Consumable_order_minor__c in :orderSet |
| | |
| | | consumableOrderlist.add(consumableOrder2); |
| | | } |
| | | 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 获取所有的record ID start by 张玉山 |
| | | List<RecordType> allrtList = [select Id,DeveloperName from RecordType where SobjectType = 'Consumable_orderdetails__c']; |
| | | // 2018年8月9日 HWAG-B3D9UV 获取所有的record ID end by 张玉山 |
| | | //到货和返品时,生成或修改消费品订货明细 |
| | | Set<String> arrivedSet = new Set<String>(); |
| | | Set<String> returnSet = new Set<String>(); |
| | | 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 (detail2.Consumable_Arrived_order__c != null) { |
| | | arrivedSet.add(detail2.Consumable_Arrived_order__c); |
| | | } |
| | | |
| | | if ((oldDetail2 == null || oldDetail2.Consumable_Return_order__c == null) && detail2.Consumable_Return_order__c != null) { |
| | | returnSet.add(detail2.Consumable_Return_order__c); |
| | | } |
| | | } |
| | | // 2018年8月9日 HWAG-B3D9UV 获取所有的record ID start by 张玉山 |
| | | List<RecordType> allrtList = [ |
| | | SELECT Id, DeveloperName |
| | | FROM RecordType |
| | | WHERE SobjectType = 'Consumable_orderdetails__c' |
| | | ]; |
| | | // 2018年8月9日 HWAG-B3D9UV 获取所有的record ID end by 张玉山 |
| | | //到货和返品时,生成或修改消费品订货明细 |
| | | Set<String> arrivedSet = new Set<String>(); |
| | | Set<String> returnSet = new Set<String>(); |
| | | 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 (detail2.Consumable_Arrived_order__c != null) { |
| | | arrivedSet.add(detail2.Consumable_Arrived_order__c); |
| | | } |
| | | 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); |
| | | } |
| | | |
| | | if (det2.Consumable_Return_order__c != null) { |
| | | returnSet.add(det2.Consumable_Return_order__c); |
| | | } |
| | | } |
| | | if ( |
| | | (oldDetail2 == null || |
| | | oldDetail2.Consumable_Return_order__c == null) && |
| | | detail2.Consumable_Return_order__c != null |
| | | ) { |
| | | returnSet.add(detail2.Consumable_Return_order__c); |
| | | } |
| | | System.debug('arrivedSet +++++' + arrivedSet); |
| | | } |
| | | } |
| | | 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); |
| | | } |
| | | |
| | | if (det2.Consumable_Return_order__c != null) { |
| | | returnSet.add(det2.Consumable_Return_order__c); |
| | | } |
| | | } |
| | | } |
| | | System.debug('arrivedSet +++++' + arrivedSet); |
| | | // 2018年8月14日 HWAG-B3D9UV 在进行NFM110处理时 跳过arrivedset start by 张玉山 |
| | | if (StaticParameter.EscapeConsumableOrderDetail2Trigger) { |
| | | return ; |
| | | } |
| | | if (StaticParameter.EscapeConsumableOrderDetail2Trigger) { |
| | | return; |
| | | } |
| | | // 2018年8月14日 HWAG-B3D9UV 在进行NFM110处理时 跳过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>(); |
| | | for (Consumable_orderdetails__c detail1 : detail1List) { |
| | | String key = '' + detail1.Consumable_order__c + detail1.Asset_Model_No__c; |
| | | detail1Map.put(key, detail1); |
| | | } |
| | | 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>(); |
| | | for (Consumable_orderdetails__c detail1 : detail1List) { |
| | | String key = |
| | | '' + |
| | | detail1.Consumable_order__c + |
| | | detail1.Asset_Model_No__c; |
| | | detail1Map.put(key, detail1); |
| | | } |
| | | |
| | | arrivedSet.clear(); |
| | | for (Consumable_order__c arrivedCo : arrivedMap.values()) { |
| | | if (arrivedCo.RecordType.DeveloperName == 'Arrive') { |
| | | arrivedSet.add(arrivedCo.Id); |
| | | } |
| | | } |
| | | arrivedSet.clear(); |
| | | for (Consumable_order__c arrivedCo : arrivedMap.values()) { |
| | | if (arrivedCo.RecordType.DeveloperName == 'Arrive') { |
| | | arrivedSet.add(arrivedCo.Id); |
| | | } |
| | | } |
| | | |
| | | 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){ |
| | | String key = '' + ar.get('Consumable_Arrived_order__c') + ar.get('Asset_Model_No__c'); |
| | | keyCount.put(key, Integer.valueOf(ar.get('recordCount'))); |
| | | } |
| | | // 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)){ |
| | | rtList.add(rtl); |
| | | } |
| | | } |
| | | // 2018年8月9日 HWAG-B3D9UV 替代下面SQL select end by 张玉山 |
| | | 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>(); |
| | | |
| | | /* 2018年8月9日 HWAG-B3D9UV 原获取 recordtype start by 张玉山 |
| | | 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'))); |
| | | } |
| | | // 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)) { |
| | | rtList.add(rtl); |
| | | } |
| | | } |
| | | // 2018年8月9日 HWAG-B3D9UV 替代下面SQL select end by 张玉山 |
| | | |
| | | /* 2018年8月9日 HWAG-B3D9UV 原获取 recordtype start by 张玉山 |
| | | List<RecordType> rtList = [select Id from RecordType where DeveloperName = 'Detail1_Arrival' and SobjectType = 'Consumable_orderdetails__c']; |
| | | 2018年8月9日 HWAG-B3D9UV 原获取 recordtype end by 张玉山 */ |
| | | Id recordTypeId = null; |
| | | if (rtList.size() > 0) recordTypeId = rtList[0].Id; |
| | | Id recordTypeId = null; |
| | | 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 :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'))); |
| | | 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')) |
| | | ); |
| | | } |
| | | 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) { |
| | | //Dataloaderで初期在庫登録をしたあと、データ修正が入ったときに明細1が更新されない。 |
| | | //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(); |
| | | 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)) { |
| | | continue; |
| | | } else { |
| | | assetModelNoMap.put( |
| | | detail2.Asset_Model_No__c, |
| | | detail2.Asset_Model_No__c |
| | | ); |
| | | noCount.put(co.Id, index + 1); |
| | | } |
| | | 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) { |
| | | //Dataloaderで初期在庫登録をしたあと、データ修正が入ったときに明細1が更新されない。 |
| | | //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(); |
| | | 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)){ |
| | | continue; |
| | | }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+'-'; |
| | | System.debug('index +++++' + index); |
| | | if (index < 99) { |
| | | newName += '0'; |
| | | } |
| | | if (index < 9) { |
| | | newName += '0'; |
| | | } |
| | | newName += String.valueOf(index + 1); |
| | | System.debug('newName +++++' + 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); |
| | | } |
| | | noCount.put(co.Id, index + 1); |
| | | String newName = co.Name + '-'; |
| | | System.debug('index +++++' + index); |
| | | if (index < 99) { |
| | | newName += '0'; |
| | | } |
| | | |
| | | if (trigger.isUpdate){ |
| | | for (Consumable_order_details2__c detail2 : Trigger.old) { |
| | | //Dataloaderで初期在庫登録をしたあと、データ修正が入ったときに明細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); |
| | | Consumable_orderdetails__c detail1 = detail1Map.get(key); |
| | | if ((count == null || count ==0) && detail1 !=null){ |
| | | //delete detail1; |
| | | deletetMap.put(key,detail1); |
| | | 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; |
| | | |
| | | |
| | | } |
| | | upsertMap.put(key, detail1); |
| | | } |
| | | if (index < 9) { |
| | | newName += '0'; |
| | | } |
| | | |
| | | if (trigger.isDelete){ |
| | | for (Consumable_order_details2__c detail2 : Trigger.old) { |
| | | 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){ |
| | | //delete detail1; |
| | | deletetMap.put(key,detail1); |
| | | continue; |
| | | } |
| | | 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; |
| | | noCount.put(co.Id, index + 1); |
| | | String newName = co.Name+'-'; |
| | | if (index < 99) { |
| | | newName += '0'; |
| | | } |
| | | if (index < 9) { |
| | | newName += '0'; |
| | | } |
| | | newName += String.valueOf(index + 1); |
| | | 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); |
| | | } |
| | | } |
| | | |
| | | Database.upsert(upsertMap.values(), true); |
| | | if(deletetMap.size()>0){ |
| | | Database.delete(deletetMap.values(),true); |
| | | } |
| | | |
| | | newName += String.valueOf(index + 1); |
| | | System.debug('newName +++++' + 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); |
| | | } |
| | | } |
| | | // 2018年8月14日 HWAG-B3D9UV 在进行NFM110处理时 跳过returnSet start by 张玉山 |
| | | } |
| | | |
| | | if (trigger.isUpdate || trigger.isInsert){ |
| | | if (StaticParameter.EscapeConsumableOrderDetail2Trigger) { |
| | | return ; |
| | | if (Trigger.isUpdate) { |
| | | for (Consumable_order_details2__c detail2 : Trigger.old) { |
| | | //Dataloaderで初期在庫登録をしたあと、データ修正が入ったときに明細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); |
| | | Consumable_orderdetails__c detail1 = detail1Map.get(key); |
| | | if ((count == null || count == 0) && detail1 != null) { |
| | | //delete detail1; |
| | | deletetMap.put(key, detail1); |
| | | 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; |
| | | } |
| | | upsertMap.put(key, detail1); |
| | | } |
| | | } |
| | | |
| | | if (Trigger.isDelete) { |
| | | for (Consumable_order_details2__c detail2 : Trigger.old) { |
| | | 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) { |
| | | //delete detail1; |
| | | deletetMap.put(key, detail1); |
| | | continue; |
| | | } |
| | | 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; |
| | | noCount.put(co.Id, index + 1); |
| | | String newName = co.Name + '-'; |
| | | if (index < 99) { |
| | | newName += '0'; |
| | | } |
| | | if (index < 9) { |
| | | newName += '0'; |
| | | } |
| | | newName += String.valueOf(index + 1); |
| | | 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); |
| | | } |
| | | } |
| | | |
| | | Database.upsert(upsertMap.values(), true); |
| | | if (deletetMap.size() > 0) { |
| | | Database.delete(deletetMap.values(), true); |
| | | } |
| | | } |
| | | } |
| | | // 2018年8月14日 HWAG-B3D9UV 在进行NFM110处理时 跳过returnSet start by 张玉山 |
| | | |
| | | if (Trigger.isUpdate || Trigger.isInsert) { |
| | | if (StaticParameter.EscapeConsumableOrderDetail2Trigger) { |
| | | return; |
| | | } |
| | | // 2018年8月14日 HWAG-B3D9UV 在进行NFM110处理时 跳过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); |
| | | } |
| | | 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>(); |
| | | |
| | | returnSet.clear(); |
| | | for (Consumable_order__c returnCo : returnMap.values()) { |
| | | if (returnCo.RecordType.DeveloperName == 'ReturnGoods') { |
| | | returnSet.add(returnCo.Id); |
| | | } |
| | | } |
| | | for (Consumable_orderdetails__c detail1 : detail1List) { |
| | | String key = |
| | | '' + |
| | | detail1.Consumable_order__c + |
| | | detail1.Asset_Model_No__c; |
| | | detail1Map.put(key, detail1); |
| | | } |
| | | |
| | | 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){ |
| | | String key = '' + ar.get('Consumable_Return_order__c') + ar.get('Asset_Model_No__c'); |
| | | keyCount.put(key, Integer.valueOf(ar.get('recordCount'))); |
| | | } |
| | | returnSet.clear(); |
| | | for (Consumable_order__c returnCo : returnMap.values()) { |
| | | if (returnCo.RecordType.DeveloperName == 'ReturnGoods') { |
| | | returnSet.add(returnCo.Id); |
| | | } |
| | | } |
| | | |
| | | // 2018年8月9日 HWAG-B3D9UV 替代下面SQL select start by 张玉山 |
| | | List<RecordType> rtList = new List<RecordType>(); |
| | | for(RecordType rtl : allrtList){ |
| | | if('Detail1_ReturnGoods'.equals(rtl.DeveloperName)){ |
| | | rtList.add(rtl); |
| | | } |
| | | } |
| | | // 2018年8月9日 HWAG-B3D9UV 替代下面SQL select end by 张玉山 |
| | | 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) { |
| | | String key = |
| | | '' + |
| | | ar.get('Consumable_Return_order__c') + |
| | | ar.get('Asset_Model_No__c'); |
| | | keyCount.put(key, Integer.valueOf(ar.get('recordCount'))); |
| | | } |
| | | |
| | | /* 2018年8月9日 HWAG-B3D9UV 原获取 recordtype start by 张玉山 |
| | | // 2018年8月9日 HWAG-B3D9UV 替代下面SQL select start by 张玉山 |
| | | List<RecordType> rtList = new List<RecordType>(); |
| | | for (RecordType rtl : allrtList) { |
| | | if ('Detail1_ReturnGoods'.equals(rtl.DeveloperName)) { |
| | | rtList.add(rtl); |
| | | } |
| | | } |
| | | // 2018年8月9日 HWAG-B3D9UV 替代下面SQL select end by 张玉山 |
| | | |
| | | /* 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 = null; |
| | | if (rtList.size() > 0) recordTypeId = rtList[0].Id; |
| | | Id recordTypeId = null; |
| | | 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]; |
| | | 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'))); |
| | | 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')) |
| | | ); |
| | | } |
| | | |
| | | Map<String, Consumable_orderdetails__c> upsertMap = new Map<String, Consumable_orderdetails__c>(); |
| | | Map<String, Integer> updatedSaleCount = new Map<String, Integer>(); |
| | | Set<Id> updatedSaleId = new Set<Id>(); |
| | | Map<String, Integer> updatedShipmentCount = new Map<String, Integer>(); |
| | | Set<Id> updatedShipmentId = new Set<Id>(); |
| | | Map<String, Integer> updatedConInvoiceCount = new Map<String, Integer>(); |
| | | Map<String, String> shipmentIdMap = new Map<String, String>(); |
| | | Set<Id> updatedConInvoiceId = new Set<Id>(); |
| | | Integer returnCount = 0; |
| | | |
| | | for (Consumable_order_details2__c detail2 : Trigger.New) { |
| | | Consumable_order_details2__c oldDetail2 = null; |
| | | 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 (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; |
| | | sCount += 1; |
| | | 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; |
| | | sCount += 1; |
| | | |
| | | Map<String, Consumable_orderdetails__c> upsertMap = new Map<String, Consumable_orderdetails__c>(); |
| | | Map<String, Integer> updatedSaleCount = new Map<String, Integer>(); |
| | | Set<Id> updatedSaleId = new Set<Id>(); |
| | | Map<String, Integer> updatedShipmentCount = new Map<String, Integer>(); |
| | | Set<Id> updatedShipmentId = new Set<Id>(); |
| | | Map<String, Integer> updatedConInvoiceCount = new Map<String, Integer>(); |
| | | Map<String, String> shipmentIdMap = new Map<String, String>(); |
| | | Set<Id> updatedConInvoiceId = new Set<Id>(); |
| | | Integer returnCount = 0; |
| | | |
| | | for (Consumable_order_details2__c detail2 : Trigger.New) { |
| | | Consumable_order_details2__c oldDetail2 = null; |
| | | 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 (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; |
| | | sCount += 1; |
| | | 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; |
| | | sCount += 1; |
| | | |
| | | 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) { |
| | | 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) { |
| | | Integer sCount = updatedConInvoiceCount.containsKey(''+oldDetail2.Invoice_No__c+oldDetail2.Consumable_Sale_order__c+detail2.Asset_Model_No__c) ? updatedConInvoiceCount.get(''+oldDetail2.Invoice_No__c+oldDetail2.Consumable_Sale_order__c+detail2.Asset_Model_No__c) : 0; |
| | | sCount += 1; |
| | | if(oldDetail2.Consumable_Shipment_order__c == null){ |
| | |
| | | |
| | | updatedConInvoiceId.add(oldDetail2.Invoice_No__c); |
| | | }*/ |
| | | } |
| | | } |
| | | if (upsertMap.get(key) != null) continue; |
| | | Integer count = keyCount.get(key); |
| | | } |
| | | } |
| | | if (upsertMap.get(key) != null) |
| | | continue; |
| | | Integer count = keyCount.get(key); |
| | | |
| | | Consumable_orderdetails__c detail1 = detail1Map.get(key); |
| | | Consumable_orderdetails__c detail1 = detail1Map.get(key); |
| | | |
| | | if (detail1 == null) detail1 = new Consumable_orderdetails__c(); |
| | | detail1.RrturnPro_count__c = count; |
| | | 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; |
| | | noCount.put(co.Id, index + 1); |
| | | String newName = co.Name+'-'; |
| | | if (index < 99) { |
| | | newName += '0'; |
| | | } |
| | | if (index < 9) { |
| | | newName += '0'; |
| | | } |
| | | newName += String.valueOf(index + 1); |
| | | 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 (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; |
| | | noCount.put(co.Id, index + 1); |
| | | String newName = co.Name + '-'; |
| | | if (index < 99) { |
| | | newName += '0'; |
| | | } |
| | | if (index < 9) { |
| | | newName += '0'; |
| | | } |
| | | newName += String.valueOf(index + 1); |
| | | 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); |
| | | } |
| | | |
| | | 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)){ |
| | | detail1SaleList.add(orderdetails); |
| | | } |
| | | } |
| | | 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> detail1ShipmentList |
| | | = new List<Consumable_orderdetails__c>(); |
| | | List<Consumable_orderdetails__c> detail1SaleList = 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)){ |
| | | detail1ShipmentList.add(orderdetails); |
| | | } |
| | | } |
| | | 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> detail1ConInvoiceList |
| | | = new List<Consumable_orderdetails__c>(); |
| | | List<Consumable_orderdetails__c> detail1ShipmentList = 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)){ |
| | | detail1ConInvoiceList.add(orderdetails); |
| | | } |
| | | } |
| | | // 2018年8月8日 HWAG-B3D9UV 减少 select 数量 end by 张玉山 |
| | | /* 2018年8月8日 HWAG-B3D9UV 注释 替换为上面的那个 end by 张玉山 |
| | | 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>(); |
| | | |
| | | for ( |
| | | Consumable_orderdetails__c orderdetails : Consumable_orderdetailsList |
| | | ) { |
| | | if ( |
| | | updatedConInvoiceId.contains(orderdetails.id) && |
| | | 'Order_Invoice' |
| | | .equals(orderdetails.Consumable_order__r.RecordType.DeveloperName) |
| | | ) { |
| | | detail1ConInvoiceList.add(orderdetails); |
| | | } |
| | | } |
| | | // 2018年8月8日 HWAG-B3D9UV 减少 select 数量 end by 张玉山 |
| | | /* 2018年8月8日 HWAG-B3D9UV 注释 替换为上面的那个 end by 张玉山 |
| | | List<Consumable_orderdetails__c> detail1SaleList = |
| | | [select Id, Name, Asset_Model_No__c, RrturnPro_count__c, Consumable_order__c |
| | | from Consumable_orderdetails__c |
| | |
| | | where Consumable_order__c in :updatedConInvoiceId |
| | | and Consumable_order__r.RecordType.DeveloperName = 'Order_Invoice']; |
| | | */ |
| | | List<Consumable_orderdetails__c> updateData = new List<Consumable_orderdetails__c>(); |
| | | 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); |
| | | 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); |
| | | 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)) ) { |
| | | detail1ConInvoice.RrturnPro_count__c += count; |
| | | //updateData.add(detail1ConInvoice); |
| | | } |
| | | } |
| | | |
| | | Database.upsert(updateData, true); |
| | | for (Consumable_orderdetails__c detail1Sale : detail1SaleList) { |
| | | 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 |
| | | ); |
| | | 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 |
| | | )) |
| | | ) { |
| | | detail1ConInvoice.RrturnPro_count__c += count; |
| | | //updateData.add(detail1ConInvoice); |
| | | } |
| | | } |
| | | |
| | | Database.upsert(updateData, true); |
| | | } |
| | | } |
| | | } |
| | | } |