|  |  | 
 |  |  |  * OpportunityBefInsUpdTriggerTest | 
 |  |  |  */ | 
 |  |  | trigger OpportunityBefUpd on Opportunity (before insert, before update) { | 
 |  |  |  | 
 |  |  |     // SWAG-CE55BX 预测优化 start | 
 |  |  |     if (StaticParameter.EscapeOppandStaTrigger) { | 
 |  |  |         return; | 
 |  |  |     } | 
 |  |  |     // SWAG-CE55BX 预测优化 end | 
 |  |  |     List<String> idlist = new List<String>(); | 
 |  |  |     if(Trigger.isInsert){ | 
 |  |  |         //询价担当人和战略科室担当人不一致,在这里同步 20170512 XFUU-ALB9JK | 
 |  |  | 
 |  |  |             // acs.add(ops.) | 
 |  |  |  | 
 |  |  |             //2022-3-29 yjk SWAG-CCL6R7 | 
 |  |  |             Opportunity oldOne = Trigger.oldMap.get(ops.id); | 
 |  |  |             if(oldOne.Bidding_Project_Name_Bid__c==null  && ops.Bidding_Project_Name_Bid__c !=null ){ | 
 |  |  |                 List<Tender_information__c> ticList = [select id,ResultDate__c from Tender_information__c where id = :ops.Bidding_Project_Name_Bid__c]; | 
 |  |  |             //2022-5-18 yjk XLIU-CEJ38N 注释掉 start | 
 |  |  |             // Opportunity oldOne = Trigger.oldMap.get(ops.id); | 
 |  |  |             // if(oldOne.Bidding_Project_Name_Bid__c==null  && ops.Bidding_Project_Name_Bid__c !=null ){ | 
 |  |  |             //     List<Tender_information__c> ticList = [select id,ResultDate__c from Tender_information__c where id = :ops.Bidding_Project_Name_Bid__c]; | 
 |  |  |                  | 
 |  |  |                 ops.Closing_Bid_Date__c = ticList.size() == 1? ticList.get(0).ResultDate__c : null ; | 
 |  |  |             //     ops.Closing_Bid_Date__c = ticList.size() == 1? ticList.get(0).ResultDate__c : null ; | 
 |  |  |  | 
 |  |  |             } | 
 |  |  |             // } | 
 |  |  |             //2022-5-18 yjk XLIU-CEJ38N 注释掉 end | 
 |  |  |         } | 
 |  |  |         // System.debug('====================='+opIds); | 
 |  |  |         // //在询价触发器里改这个验证,排除备品状态是取消的,只要是有备品,就不允许更改最终用户。 | 
 |  |  | 
 |  |  |     for ( Integer i = 0; i < Trigger.New.size(); i++) { | 
 |  |  |         newTarget = Trigger.New[i]; | 
 |  |  |         // 古いデータの更新をスルー | 
 |  |  |         if (Trigger.isUpdate) { | 
 |  |  |             Boolean noChange = false; | 
 |  |  |             for (String colApiName : ControllerUtil.oppColumnList) { | 
 |  |  |                 colApiName = colApiName.trim(); | 
 |  |  |                 if (newTarget.oldData_flg__c &&  | 
 |  |  |                         Trigger.oldMap.get(newTarget.Id).get(colApiName) != Trigger.newMap.get(newTarget.Id).get(colApiName)) { | 
 |  |  |                     noChange = true; | 
 |  |  |                     break; | 
 |  |  |                 } | 
 |  |  |             } | 
 |  |  |             if (noChange) { | 
 |  |  |                 newTarget.addError('不能修改旧数据'); | 
 |  |  |                 continue; | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         //20221229 lt DB202211430986 询价历史不使用字段 | 
 |  |  |         // if (Trigger.isUpdate) { | 
 |  |  |         //     Boolean noChange = false; | 
 |  |  |         //     for (String colApiName : ControllerUtil.oppColumnList) { | 
 |  |  |         //         colApiName = colApiName.trim(); | 
 |  |  |         //         if (newTarget.oldData_flg__c &&  | 
 |  |  |         //                 Trigger.oldMap.get(newTarget.Id).get(colApiName) != Trigger.newMap.get(newTarget.Id).get(colApiName)) { | 
 |  |  |         //             noChange = true; | 
 |  |  |         //             break; | 
 |  |  |         //         } | 
 |  |  |         //     } | 
 |  |  |         //     if (noChange) { | 
 |  |  |         //         newTarget.addError('不能修改旧数据'); | 
 |  |  |         //         continue; | 
 |  |  |         //     } | 
 |  |  |         // } | 
 |  |  |         //20221229 lt DB202211430986 询价历史不使用字段 | 
 |  |  |          | 
 |  |  |         if ( newTarget.DetailNum__c == 0) { | 
 |  |  |             newTarget.CurrencyIsoCode = newTarget.Trade__c == '外貿' ? 'USD' : 'CNY'; | 
 |  |  | 
 |  |  |             // Estimation_Id__c より、 | 
 |  |  |             if (newTarget.Estimation_Id__c != null && newTarget.Estimation_Id__c.length() > 0 && !newTarget.Estimation_Id__c.startsWith('a2K')) { | 
 |  |  |                 quoteIds.add(newTarget.Estimation_Id__c); | 
 |  |  |                 newTarget.Estimation_Id__c = ''; | 
 |  |  |                 // 2022-11-18 ssm 取消decide后仍要显示预测金额,取消清空报价ID的操作 | 
 |  |  |                 // newTarget.Estimation_Id__c = ''; | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  | 
 |  |  |         } | 
 |  |  |         update cancelQuoteList; | 
 |  |  |     } | 
 |  |  |      | 
 |  |  |  | 
 |  |  |     if(System.Test.isRunningTest()) { | 
 |  |  |         Integer i = 0; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |         i++; | 
 |  |  |     } | 
 |  |  | } |