| | |
| | | } |
| | | } |
| | | |
| | | //20221017 lt SWAG-CHL5XA【FY23询价改善】-统计主机台数 start |
| | | System.debug('lt123 oly主机'+op.OlyNumberHosts__c); |
| | | System.debug('lt123 老oly主机'+oldopp.OlyNumberHosts__c); |
| | | System.debug('lt123 对手主机'+op.RivalHostsNumber__c); |
| | | System.debug('lt123 老对手主机'+oldopp.RivalHostsNumber__c); |
| | | |
| | | if(op.OlyNumberHosts__c != oldopp.OlyNumberHosts__c || op.RivalHostsNumber__c != oldopp.RivalHostsNumber__c || op.InquireNumberHosts__c != oldopp.InquireNumberHosts__c){ |
| | | for (Tender_Opportunity_Link__c link : links){ |
| | | if (link.Opportunity__c == op.Id){ |
| | | Tender_information__c temptender = new Tender_information__c(); |
| | | temptender.Id = link.Tender_information__c; |
| | | temptender.IsReactionOpp__c = true; |
| | | tenderMap.put(temptender.id ,temptender); |
| | | } |
| | | } |
| | | } |
| | | //20221017 lt SWAG-CHL5XA【FY23询价改善】-统计主机台数 end |
| | | |
| | | // }else { |
| | | // //新建时判断询价的招标项目是不是从无到有 |
| | | // if(String.isNotBlank(op.Bidding_Project_Name_Bid__c) ){ |
| | |
| | | } |
| | | |
| | | Set<Id> oppoIds = new Set<Id>(); |
| | | Map<Id,String> mapoppid = new Map<Id,String>(); |
| | | list<task__c> taskUpdateList = new list<task__c>(); |
| | | for(Opportunity op : newList){ |
| | | Opportunity oldopp = oldMap.get(op.Id); |
| | | //询价中标结果确认竞争对手中标时实时创建失单任务 且 询价状态1等于询价 |
| | | if (oldopp.ConfirmationofAward__c != '竞争对手中标' && op.ConfirmationofAward__c == '竞争对手中标' && op.StageName__c == '询价'){ |
| | | if (oldopp.ConfirmationofAward__c != '竞争对手中标' && op.ConfirmationofAward__c == '竞争对手中标' && op.StageName__c == '询价' && op.LeakageNumber__c !=1){ |
| | | oppoIds.add(op.Id); |
| | | } |
| | | //20220929 you SWAG-CJP7TL 手动更改询价所有人,同步修改任务所有人 |
| | | if(String.isNotBlank(op.OwnerId) && op.OwnerId !=oldopp.OwnerId){ |
| | | mapoppid.put(op.id,op.OwnerId); |
| | | } |
| | | } |
| | | if(mapoppid.size() > 0){ |
| | | List<Task__c> taskList = [ |
| | | SELECT Id,OpportunityId__c,taskStatus__c |
| | | FROM task__c |
| | | WHERE OpportunityId__c in :mapoppid.keySet() |
| | | AND (RecordType.Name = '中标结果确认' OR RecordType.Name = '失单报告任务') |
| | | AND taskStatus__c = '02 接受']; |
| | | system.debug(mapoppid.keySet()+'test1-----'+taskList); |
| | | for(Task__c t: taskList){ |
| | | if(mapoppid.containsKey(t.OpportunityId__c)){ |
| | | t.Ownerid = mapoppid.get(t.OpportunityId__c); |
| | | t.assignee__c = mapoppid.get(t.OpportunityId__c); |
| | | taskUpdateList.add(t); |
| | | } |
| | | |
| | | } |
| | | if (taskUpdateList != null && taskUpdateList.size() > 0) { |
| | | update taskUpdateList; |
| | | } |
| | | } |
| | | |
| | | if (!oppoIds.isEmpty()) { |
| | | // 有效失单状态一览 |
| | |
| | | |
| | | if(!oppoIds.isEmpty()){ |
| | | |
| | | list<Tender_Opportunity_Link__c> toppLinkList = [Select Id, Opportunity__c, Tender_information__c,Tender_information__r.ResultDate__c FROM Tender_Opportunity_Link__c WHERE Opportunity__c in :oppoIds]; |
| | | list<Tender_Opportunity_Link__c> toppLinkList = [Select Id, Opportunity__c, Tender_information__c,Tender_information__r.ResultDate__c,Tender_information__r.InfoType__c FROM Tender_Opportunity_Link__c WHERE Opportunity__c in :oppoIds and Tender_information__r.InfoType__c = '3:结果']; |
| | | Map<String, Tender_Opportunity_Link__c> toopLinkMap = new Map<String, Tender_Opportunity_Link__c>(); |
| | | |
| | | for(Tender_Opportunity_Link__c tol : toppLinkList){ |
| | | toopLinkMap.put(tol.Opportunity__c, tol); |
| | | Opportunity oppoTemp = newMap.get(tol.Opportunity__c); |
| | | //询价关联到招标项目才进行操作 |
| | | if(oppoTemp.Bidding_Project_Name_Bid__c == tol.Tender_information__c){ |
| | | toopLinkMap.put(tol.Opportunity__c, tol); |
| | | } |
| | | |
| | | } |
| | | |
| | | for (String key : toopLinkMap.keySet()) { |
| | | Opportunity oppoTemp = newMap.get(key); |
| | | |
| | | //20220628会议新需求 OLY中标 7.中标日(结果记录日)= 招标项目.结果记录日 |
| | | oppoTemp.Closing_Bid_Date__c = toopLinkMap.get(key).Tender_information__r.ResultDate__c; |
| | | System.debug('============'+toopLinkMap.get(key).Tender_information__r.ResultDate__c); |
| | | |
| | | |
| | | //是否按时确认:3个工作日内按时1,不按时0 |
| | | //String inttemp = CalendarUtil.getWorkDayNum(String.valueOf(oppoTemp.Task_createTime__c), String.valueOf(oppoTemp.ConfirmationofAward_createTime__c)); |
| | |
| | | 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++; |
| | | |
| | | } |
| | | } |