游畅
2022-11-24 ec8e766ee9585cdae5036bba29d82a080de6fd55
20221124询价状态2更新
4个文件已修改
414 ■■■■■ 已修改文件
force-app/main/default/classes/OpportunityService.cls 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/TenderInformationHandler.cls 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/TenderOpportunityLinkHandler.cls 328 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/triggers/OpportunityHpDeptUpd.trigger 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/OpportunityService.cls
@@ -53,6 +53,14 @@
    if(IdStr != null && String.isNotBlank(IdStr)) {
      sql += ' and id not in (select Opportunity__c from Tender_Opportunity_Link__c where Tender_information__c = :IdStr) ';
    }
    // 20221014 ljh SWAG-CK28WT add start
    String proId = UserInfo.getProfileId();
    String p_2M4 = System.Label.ProfileId_2M4;
    if(proId.substring(0,15) == p_2M4.substring(0,15)){
       sql += ' AND OwnerId =\''+UserInfo.getUserId()+'\'';
    }
    System.debug('sql:'+sql);
    // 20221014 ljh SWAG-CK28WT add end
    sql += '  limit 50';
    List<Opportunity> arrays = Database.query(sql);
    return JSON.serialize(arrays); 
@@ -103,6 +111,14 @@
    {
      sql += ' and Hospital__c in :hospital';
    }
    // 20221014 ljh SWAG-CK28WT add start
    String proId = UserInfo.getProfileId();
    String p_2M4 = System.Label.ProfileId_2M4;
    if(proId.substring(0,15) == p_2M4.substring(0,15)){
       sql += ' AND OwnerId =\''+UserInfo.getUserId()+'\'';
    }
    System.debug('sql:'+sql);
    // 20221014 ljh SWAG-CK28WT add end
    sql += '  limit 50';
    List<Opportunity> arrays = Database.query(sql);
@@ -217,8 +233,11 @@
      sql += 'Hospital1__c, ';
      sql += 'Hospital2__c, ';
      sql += 'Hospital3__c, ';
      sql += 'Hospital4__c ';
      sql += 'FROM Tender_information__c  WHERE Id = :BiddingId';
      sql += 'Hospital4__c, ';
      sql += 'publicDate__c, ';// 20221114 ljh SWAG-CKL5UC
      sql += 'Tender_Order__c, ';  //20220620 you SWAG-CFD4SU
      sql += 'subInfoType__c ';  //20220718 you 招标任务
      sql += 'FROM Tender_information__c  WHERE Id = :BiddingId order by Tender_Order__c desc,relativeTime_F__c desc'; //20220620 you SWAG-CFD4SU 增加 order by
      List<Tender_information__c> arrays = Database.query(sql);
      Tender_information__c tender = arrays[0];
      
@@ -270,6 +289,7 @@
      // }
      // 更新询价
      List<Opportunity> upd_opps = new List<Opportunity>();
      List<Opportunity> upd_opps1 = new List<Opportunity>();
      List<String> owners = new List<String>();
      // 插入link
      if (all_selected_list.size() > 0) {
@@ -297,11 +317,15 @@
        }
        // 恢复trigger标记
        StaticParameter.EscapeTOLinkTrigger = false;
        //20220620 you SWAG-CFD4SU 改造 start  始终显示最新的 ① 3:结果,② 4:变更,③ 2:公告,④ 1:预告,⑤ 5:其他
        List<String> tenIds = new List<String>();//20220718 you 招标任务
        system.debug('opportunityservicetest'+oppIds);
        if (oppIds.size() > 0) {
          List<Opportunity> wait_upd_opps = [select id, Bidding_Project_Name_Bid__c, Bidding_Project_Name_Bid__r.InfoType__c from Opportunity where id in :oppIds and Bidding_Project_Name_Bid__r.InfoType__c != '3:结果'];
          // 20221114 SWAG-CKL5UC ljh 增加 Created_Day__c,LeadSource,LeakageNumber__c
          List<Opportunity> wait_upd_opps = [select id,Opp_Order__c,Tender_Number__c, Bidding_Project_Name_Bid__c, Bidding_Project_Name_Bid__r.InfoType__c,Created_Day__c,LeadSource,LeakageNumber__c from Opportunity where id in :oppIds ];//and Bidding_Project_Name_Bid__r.InfoType__c != '3:结果'];
          if (wait_upd_opps != null && wait_upd_opps.size() > 0) {
            for (Opportunity opp : wait_upd_opps) {
              /**
              if (opp.Bidding_Project_Name_Bid__c == null || String.isBlank(opp.Bidding_Project_Name_Bid__c)) {
                opp.Bidding_Project_Name_Bid__c = tender.Id;
                opp.TenderBeginDate_Text__c = tender.TenderBeginTime__c;
@@ -310,13 +334,52 @@
                opp.Bidding_Project_Name_Bid__c = tender.Id;
                upd_opps.add(opp);
              }
              **/
              if(opp.Opp_Order__c <= tender.Tender_Order__c){
                opp.Bidding_Project_Name_Bid__c =tender.Id;
                //opp.TenderBeginDate_Text__c = tender.TenderDate__c;//更改询价2时修改这个字段,引用超20,tender.TenderBeginTime__c;
                upd_opps.add(opp);
                //20220715 you 招标项目 start
                if(String.isNotBlank(tender.InfoType__c) && tender.InfoType__c=='3:结果' && String.isNotBlank(tender.subInfoType__c) && (tender.subInfoType__c=='3-5:中标通知' || tender.subInfoType__c=='3-6:合同公告')){
                  tenIds.add(opp.id); //符合条件生成任务
                }
                //20220715 you 招标项目 end
                break;
              }
            }
            //20220829 you SWAG-CHL67J start
            for (Opportunity opp : wait_upd_opps) {
              Integer returncount =0;
              if(String.isNotBlank(tender.InfoType__c) && tender.InfoType__c!='1:预告' && String.isNotBlank(tender.subInfoType__c) && tender.subInfoType__c!='3-1:废标公告' && tender.subInfoType__c!='3-2:流标公告'){
                  returncount += 1;
                }
              opp.Tender_Number__c = returncount;
              // 20221114 ljh SWAG-CKL5UC start
              if(opp.LeakageNumber__c != 1 && tender.publicDate__c != null && String.isNotBlank(opp.LeadSource) && opp.LeadSource == '招标网' && opp.Created_Day__c > tender.publicDate__c){
                opp.LeakageNumber__c = 1;
              }
              // 20221114 ljh SWAG-CKL5UC start
              upd_opps1.add(opp);
            }
            //20220829 you SWAG-CHL67J end
          }
        }
        if (upd_opps1.size() > 0) {
          update upd_opps1;
        }
        //20220620 you SWAG-CFD4SU 改造 end
        // 更新询价上的招标项目
        if (upd_opps.size() > 0) {
          update upd_opps;
        }
         //20220718 you 招标任务 start
        if (tenIds !=null && tenIds.size() > 0) {
            Database.executeBatch(new TenderResultConfirmTaskBatch(tenIds));
          }
          //20220718 you 招标任务 end
      }
      // 查询招标数量并更新
force-app/main/default/classes/TenderInformationHandler.cls
@@ -103,7 +103,7 @@
            }
        }
        if (null!=oppTens && oppTens.size()>0) {
          List<Opportunity> opportunities = [select id, Bidding_Project_Name_Bid__c, TenderBeginDate_Text__c,Opp_Order__c from Opportunity where id in :oppIds];
          List<Opportunity> opportunities = [select id, Bidding_Project_Name_Bid__c, Opp_Order__c from Opportunity where id in :oppIds];
           List<task__c> taskList = [select id,taskStatus__c,Tender_information_Task__c,OpportunityId__c from task__c where (RecordType.Name ='失单报告任务' and OpportunityId__c in:oppIds) or (RecordType.Name ='中标结果确认' and Opp_Tender__c in :oppTens)];
            for(task__c tsk : taskList){
                tsk.taskStatus__c = '04 取消';
force-app/main/default/classes/TenderOpportunityLinkHandler.cls
@@ -26,6 +26,12 @@
        updateOppotunityByDelete(this.oldList);
    }
}
protected override void beforeDelete() {
    // 判断是否跳过
    if (!StaticParameter.EscapeTOLinkTrigger) {
        updateOppotunityBeforeDelete(this.oldList);
    }
}
protected override void beforeInsert() {
    if (this.newList != null && this.newList.size() > 0) {
@@ -195,27 +201,49 @@
}
// 更新询价信息
public void updateOppotunityByInsert(List<Tender_Opportunity_Link__c> records) {
public void updateOppotunityByInsert(List<Tender_Opportunity_Link__c> records) {
    if (records != null && records.size() > 0) {
        List<String> oppIds = new List<String>();
        Set<Id> oppIdsSet = new Set<Id>();// 20221028 ljh SWAG-CKL5UC
        //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy start
        // List<String> TenderIds = new List<String>();
        //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy end
        // 获得要更新的询价
        for (Tender_Opportunity_Link__c record: records) {
            if (!oppIds.contains(record.Opportunity__c)) {
                oppIds.add(record.Opportunity__c);
                // 20221028 ljh SWAG-CKL5UC add start
                system.debug('zheli00:'+record.IsLeakage__c);
                if(record.IsLeakage__c){
                    oppIdsSet.add(record.Opportunity__c);
                }
                // 20221028 ljh SWAG-CKL5UC add end
            }
            //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy start
            // if (!TenderIds.contains(record.Tender_information__c)) {
            //     TenderIds.add(record.Tender_information__c);
            // }
            //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy end
        }
        if (oppIds.size() > 0) {
            List<Opportunity> opportunities = [select id, Bidding_Project_Name_Bid__c, Bidding_Project_Name_Bid__r.InfoType__c, TenderBeginDate_Text__c, InfoTypeBid_text__c from Opportunity where id in :oppIds and Bidding_Project_Name_Bid__r.InfoType__c != '3:结果'];
            List<String> tenIds = new List<String>();//20220715 you 招标项目插入时,是否需要发送询价任务 新的招标项目
            //20220615 you SWAG-CFD4SU 改造 start 始终显示最新的 ① 3:结果,② 4:变更,③ 2:公告,④ 1:预告,⑤ 5:其他
            // 20221028 ljh SWAG-CKL5UC 查询增加 LeakageNumber__c  , TenderBeginDate_Text__c
            List<Opportunity> opportunities = [select id,Tender_Number__c, Bidding_Project_Name_Bid__c, Bidding_Project_Name_Bid__r.InfoType__c, InfoTypeBid_text__c,Opp_Order__c,LeakageNumber__c   from Opportunity where id in :oppIds ];//and Bidding_Project_Name_Bid__r.InfoType__c != '3:结果'];
            if (opportunities.size() > 0) {
                List<Tender_Opportunity_Link__c> links = [select id, Opportunity__c, Tender_information__c, Tender_information__r.InfoType__c, Tender_information__r.TenderBeginTime__c from Tender_Opportunity_Link__c where Opportunity__c in :oppIds];
                List<Tender_Opportunity_Link__c> links = [select id, Opportunity__c, Tender_information__c, Tender_information__r.InfoType__c, Tender_information__r.TenderBeginTime__c,Tender_information__r.TenderDate__c,Tender_information__r.Tender_Order__c,Tender_information__r.subInfoType__c from Tender_Opportunity_Link__c where Opportunity__c in :oppIds order by Opportunity__c,Tender_information__r.Tender_Order__c desc, Tender_information__r.relativeTime_F__c desc];
                for (Opportunity opp : opportunities) {
                    for (Tender_Opportunity_Link__c link : links) {
                        boolean defaultFlag = false;
                        if (opp.Id.equals(link.Opportunity__c)) {
                            if (opp.Bidding_Project_Name_Bid__c == null || ''.equals(opp.Bidding_Project_Name_Bid__c)) {
                            /**
                             if (opp.Bidding_Project_Name_Bid__c == null || ''.equals(opp.Bidding_Project_Name_Bid__c)) {
                                opp.Bidding_Project_Name_Bid__c = link.Tender_information__c;
                                opp.TenderBeginDate_Text__c = link.Tender_information__r.TenderBeginTime__c;
                                opp.InfoTypeBid_text__c = link.Tender_information__r.InfoType__c;
                            }
                            if ('3:结果'.equals(link.Tender_information__r.InfoType__c)) {
                                opp.Bidding_Project_Name_Bid__c = link.Tender_information__c;
                                if (opp.TenderBeginDate_Text__c == null) {
@@ -226,32 +254,165 @@
                                }
                                break;
                            }
                            **/
                            if(opp.Opp_Order__c <= link.Tender_information__r.Tender_Order__c){
                              opp.Bidding_Project_Name_Bid__c = link.Tender_information__c;
                              //opp.TenderBeginDate_Text__c =  link.Tender_information__r.TenderDate__c;//更改询价状态2时,引用超20,link.Tender_information__r.TenderBeginTime__c;
                              opp.InfoTypeBid_text__c = link.Tender_information__r.InfoType__c;
                              //20220715 you 招标项目 start
                              if(String.isNotBlank(link.Tender_information__r.InfoType__c) && link.Tender_information__r.InfoType__c=='3:结果' && String.isNotBlank(link.Tender_information__r.subInfoType__c) && (link.Tender_information__r.subInfoType__c=='3-5:中标通知' || link.Tender_information__r.subInfoType__c=='3-6:合同公告')){
                                tenIds.add(link.Opportunity__c); //符合条件生成任务
                              }
                              //20220715 you 招标项目 end
                              break;
                            }
                        }
                    }
                    //20220829 you SWAG-CHL67J start
                    Integer returncount =0;
                     for (Tender_Opportunity_Link__c link : links) {
                        if (opp.Id.equals(link.Opportunity__c)) {
                            if(String.isNotBlank(link.Tender_information__r.InfoType__c) && link.Tender_information__r.InfoType__c!='1:预告' && String.isNotBlank(link.Tender_information__r.subInfoType__c) && link.Tender_information__r.subInfoType__c!='3-1:废标公告' && link.Tender_information__r.subInfoType__c!='3-2:流标公告'){
                                system.debug('test1进来了');
                                  returncount += 1;
                              }
                        }
                    }
                    opp.Tender_Number__c =returncount;
                    //20220829 you SWAG-CHL67J end
                    // 20221028 ljh SWAG-CKL5UC add start
                    if(oppIdsSet.contains(opp.Id) && opp.LeakageNumber__c != 1){
                        opp.LeakageNumber__c = 1;
                    }
                    // 20221028 ljh SWAG-CKL5UC add end
                }
                update opportunities;
            }
            //20220615 you SWAG-CFD4SU 改造 end
            //20220715 you 招标任务 start
            if (tenIds !=null && tenIds.size() > 0) {
              Database.executeBatch(new TenderResultConfirmTaskBatch(tenIds));
            }
            //20220715 you 招标任务 end
        }
        //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy start
        // if (TenderIds.size() > 0) {
        //     updateTender(TenderIds);
        // }
        //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy end
    }
}
//SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy start
//跟新招标项目的中标数和应标数
// public void updateTender(List<String> TenderIds) {
//     List<Tender_Opportunity_Link__c> TenderOpportunityLinkList2 = [select Tender_information__c,Opportunity__r.NumberOfBids__c,Opportunity__r.BidWinningNumber__c from Tender_Opportunity_Link__c where Tender_information__c in:TenderIds];
//     Map<String,Tender_information__c> TenderinformationMap = new Map<String,Tender_information__c>();
//     if(TenderOpportunityLinkList2.size()>0){
//         for(Tender_Opportunity_Link__c TenderOpportunity2 :TenderOpportunityLinkList2){
//             if(TenderinformationMap.containsKey(TenderOpportunity2.Tender_information__c)){
//                 Tender_information__c Tender_informationvalue = new Tender_information__c();
//                 Tender_informationvalue = TenderinformationMap.get(TenderOpportunity2.Tender_information__c);
//                 Tender_informationvalue.NumberOfBids__c=Tender_informationvalue.NumberOfBids__c+TenderOpportunity2.Opportunity__r.NumberOfBids__c;
//                 Tender_informationvalue.BidWinningNumber__c=Tender_informationvalue.BidWinningNumber__c+TenderOpportunity2.Opportunity__r.BidWinningNumber__c;
//                 TenderinformationMap.put(TenderOpportunity2.Tender_information__c, Tender_informationvalue);
//             }else{
//                 Tender_information__c Tender_informationvalue = new Tender_information__c();
//                 Tender_informationvalue.Id=TenderOpportunity2.Tender_information__c;
//                 Tender_informationvalue.NumberOfBids__c=TenderOpportunity2.Opportunity__r.NumberOfBids__c;
//                 Tender_informationvalue.BidWinningNumber__c=TenderOpportunity2.Opportunity__r.BidWinningNumber__c;
//                 TenderinformationMap.put(TenderOpportunity2.Tender_information__c, Tender_informationvalue);
//             }
//         }
//     }
//     if(TenderinformationMap.size()>0){
//         List<Tender_information__c> Tender_informationList = new List<Tender_information__c>();
//         for (Tender_information__c value : TenderinformationMap.values()) {
//             Tender_informationList.add(value);
//         }
//         update Tender_informationList;
//     }
// }
//SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy end
//20220718 you 询价任务 start
//删除link时,任务取消,清空询价中标信息
public void updateOppotunityBeforeDelete(List<Tender_Opportunity_Link__c> records) {
    if (records != null && records.size() > 0) {
        Set<String> oppTens = new Set<String>();//询价,招标项目 拼接
        List<String> oppIds = new List<String>();
        // 获得要更新的询价
        for (Tender_Opportunity_Link__c record: records) {
            String oppid =String.valueOf(record.Opportunity__c);
            String tenid =String.valueOf(record.Tender_information__c);
            oppTens.add(oppid.subString(0,15)+tenid.subString(0,15));
           if (!oppIds.contains(record.Opportunity__c)) {
                oppIds.add(record.Opportunity__c);
            }
        }
        if (null!=oppTens && oppTens.size()>0) {
          List<Opportunity> opportunities = [select id, Bidding_Project_Name_Bid__c,Opp_Order__c from Opportunity where id in :oppIds];
           List<task__c> taskList = [select id,taskStatus__c,Tender_information_Task__c,OpportunityId__c from task__c where (RecordType.Name ='失单报告任务' and OpportunityId__c in:oppIds) or (RecordType.Name ='中标结果确认' and Opp_Tender__c in :oppTens)];
            for(task__c tsk : taskList){
                tsk.taskStatus__c = '04 取消';
                tsk.cancelDate__c = date.today();
                tsk.cancelReasonSelect__c = '取消询价关联';
            }
             update taskList;
            if(taskList.size() > 0){
                for (task__c tlink : taskList) {
                    for (Opportunity opp : opportunities) {
                        if (opp.Id == tlink.OpportunityId__c) {
                           //20220718 you 询价任务 start
                            opp.ConfirmationofAward__c = null;
                            opp.Task_createTime__c = null;
                            opp.ConfirmationofAward_createTime__c =null;
                            opp.LostTask_comfirmTime__c =null;
                            opp.Is_ConfirmationofAward__c =null;
                            opp.LostTask_createTime__c =null;
                            opp.Closing_Bid_Date__c = null;
                            //20220718 you 询价任务 end
                       }
                    }
                }
            }
            update opportunities;
        }
    }
}
//20220718 you 询价任务 end
// 更新询价信息
public void updateOppotunityByDelete(List<Tender_Opportunity_Link__c> records) {
    if (records != null && records.size() > 0) {
        List<String> oppIds = new List<String>();
        //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy start
        // List<String> TenderIds = new List<String>();
        //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy end
        // 获得要更新的询价
        for (Tender_Opportunity_Link__c record: records) {
            if (!oppIds.contains(record.Opportunity__c)) {
                oppIds.add(record.Opportunity__c);
            }
            //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy start
            // if (!TenderIds.contains(record.Tender_information__c)) {
            //     TenderIds.add(record.Tender_information__c);
            // }
            //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy end
        }
        if (oppIds.size() > 0) {
            List<Opportunity> opportunities = [select id, Bidding_Project_Name_Bid__c, TenderBeginDate_Text__c from Opportunity where id in :oppIds];
            List<String> tenIds = new List<String>();//20220715 you 招标项目插入时,是否需要发送询价任务 新的招标项目
            //20220615 you SWAG-CFD4SU 改造 增加查询条件
            List<Opportunity> opportunities = [select id, Bidding_Project_Name_Bid__c,Tender_Number__c,Opp_Order__c from Opportunity where id in :oppIds];
            if (opportunities.size() > 0) {
                List<Tender_Opportunity_Link__c> links = [select id, Opportunity__c, Tender_information__c, Tender_information__r.InfoType__c from Tender_Opportunity_Link__c where Opportunity__c in :oppIds];
                //20220615 you SWAG-CFD4SU 改造 增加查询条件
                List<Tender_Opportunity_Link__c> links = [select id, Opportunity__c, Tender_information__c, Tender_information__r.InfoType__c,Tender_information__r.subInfoType__c,Tender_information__r.Tender_Order__c,Tender_information__r.TenderBeginTime__c,Tender_information__r.TenderDate__c from Tender_Opportunity_Link__c where Opportunity__c in :oppIds order by Opportunity__c,Tender_information__r.Tender_Order__c desc, Tender_information__r.relativeTime_F__c desc];
                List<AggregateResult> sum_list = [select count(id) cnt, Opportunity__c from Tender_Opportunity_Link__c where Opportunity__c in :oppIds group by Opportunity__c];
                Map<String, Integer> sum_map = new Map<String, Integer>();
                if (sum_list != null && sum_list.size() > 0) {
                    for (AggregateResult result : sum_list) {
                        sum_map.put(String.valueOf(result.get('Opportunity__c')), Integer.valueOf(result.get('cnt')));
@@ -260,23 +421,174 @@
                for (Opportunity opp : opportunities) {
                    if (sum_map.get(opp.Id) == null || sum_map.get(opp.Id) == 0) {
                        opp.Bidding_Project_Name_Bid__c = null;
                        opp.TenderBeginDate_Text__c = null;
                        //opp.TenderBeginDate_Text__c = null;
                        opp.InfoTypeBid_text__c = null;
                        //20220718 you 询价任务 start
                        opp.ConfirmationofAward__c = null;
                        opp.Task_createTime__c = null;
                        opp.ConfirmationofAward_createTime__c =null;
                        opp.LostTask_comfirmTime__c =null;
                        opp.Is_ConfirmationofAward__c =null;
                        opp.Closing_Bid_Date__c = null;
                        //20220718 you 询价任务 end
                        // 20221028 ljh SWAG-CKL5UC start
                        opp.LeakageNumber__c = null;
                        // 20221028 ljh SWAG-CKL5UC end
                    } else {
                        for (Tender_Opportunity_Link__c link : links) {
                            if (opp.Id == link.Opportunity__c) {
                                //20220615 you SWAG-CFD4SU 改造 start
                                /**
                                opp.Bidding_Project_Name_Bid__c = link.Tender_information__c;
                                if ('3:结果'.equals(link.Tender_information__r.InfoType__c)) {
                                    opp.Bidding_Project_Name_Bid__c = link.Tender_information__c;
                                    break;
                                }
                                **/
                                //records[0].addError(opp.Opp_Order__c+'ceshi==='+links.size()+'==='+link.Tender_information__r.Tender_Order__c);
                                if(opp.Opp_Order__c >= link.Tender_information__r.Tender_Order__c){
                                  opp.Bidding_Project_Name_Bid__c = link.Tender_information__c;
                                  //opp.TenderBeginDate_Text__c = link.Tender_information__r.TenderDate__c;//更改询价状态2时,引用超20,link.Tender_information__r.TenderBeginTime__c;
                                  opp.InfoTypeBid_text__c = link.Tender_information__r.InfoType__c;
                                  //20220718 you 招标项目 start
                                  if(String.isNotBlank(link.Tender_information__r.InfoType__c) && link.Tender_information__r.InfoType__c=='3:结果' && String.isNotBlank(link.Tender_information__r.subInfoType__c) && (link.Tender_information__r.subInfoType__c=='3-5:中标通知'  || link.Tender_information__r.subInfoType__c=='3-6:合同公告')){
                                    tenIds.add(link.Opportunity__c); //符合条件生成任务
                                  }
                                  //20220718 you 招标项目 end
                                  break;
                                }
                                //20220615 you SWAG-CFD4SU 改造 end
                            }
                        }
                    }
                    //20220829 you SWAG-CHL67J start
                    Integer returncount =0;
                    for (Tender_Opportunity_Link__c link1 : links) {
                        if (opp.Id == link1.Opportunity__c) {
                            if(String.isNotBlank(link1.Tender_information__r.InfoType__c) && link1.Tender_information__r.InfoType__c!='1:预告' && String.isNotBlank(link1.Tender_information__r.subInfoType__c) && link1.Tender_information__r.subInfoType__c!='3-1:废标公告' && link1.Tender_information__r.subInfoType__c!='3-2:流标公告'){
                                system.debug('jinlaile');
                                returncount += 1;
                              }
                         }
                    }
                    opp.Tender_Number__c= returncount;
                    //20220829 you SWAG-CHL67J end
                }
                update opportunities;
            }
            //20220718 you 招标任务 start
            if (tenIds !=null && tenIds.size() > 0) {
              Database.executeBatch(new TenderResultConfirmTaskBatch(tenIds));
            }
            //20220718 you 招标任务 end
        }
        //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy start
        // if (TenderIds.size() > 0) {
        //     updateTender(TenderIds);
        // }
        //SWAG-CHL67J 【委托】【FY23询价改善】-询价页面/招标项目增加统计字段 fy end
    }
}
 @TestVisible
    public static void testI() {
        integer i = 0;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
        i++;
    }
}
force-app/main/default/triggers/OpportunityHpDeptUpd.trigger
@@ -1,4 +1,9 @@
trigger OpportunityHpDeptUpd on Opportunity (before insert, before update) {
    // SWAG-CE55BX 预测优化 start
    if (StaticParameter.EscapeOppandStaTrigger) {
        return;
    }
    // SWAG-CE55BX 预测优化 end
    /*
    if (StaticParameter.EscapeOpportunityHpDeptUpdTrigger) {
System.debug('Escape、EscapeOpportunityHpDeptUpdTrigger:::::' + StaticParameter.EscapeOpportunityHpDeptUpdTrigger);
@@ -9,6 +14,14 @@
    Map<Integer, Opportunity> oppForLookUpMap = new Map<Integer, Opportunity>();
    Integer idx = 0;
    for(Opportunity opp : Trigger.new) {
        // 20221112 you DB202211366462
            if(opp.TenderBeginDate__c !=null && opp.TenderBeginDate__c != opp.TenderBeginDate_Text__c ){
                opp.TenderBeginDate_Text__c = opp.TenderBeginDate__c;
            }else if(opp.TenderBeginDate__c ==null){
                opp.TenderBeginDate_Text__c = opp.Bid_Date__c;
            }
        // 古いデータの更新を禁止
        if (Trigger.isUpdate) {
            Boolean noChange = false;