| | |
| | | System.debug('进入任务触发器'); |
| | | //定义变量保存记录类型 |
| | | |
| | | Schema.DescribeFieldResult fieldResult = task__share.RowCause.getDescribe(); |
| | | List<Schema.PicklistEntry> ple = fieldResult.getPicklistValues(); |
| | | |
| | | Id Hcen_TaskId = Schema.SObjectType.task__c.getRecordTypeInfosByDeveloperName().get('HAccountVisit').getRecordTypeId(); |
| | | Map<String,String> taskPREMap = gettaskPREMap(); |
| | | List<Task__c> needUpdate = new List<Task__c>(); |
| | | Set<String> searchTaskId = new Set<String>(); |
| | | Set<String> tempSet = new Set<String>(); //2022-01-12 mzy 上级分配的记录类型为其他 的任务可能没有客户,需要把名称变为 其他:任务名称 |
| | | Set<String> OtherLeadAssig = new Set<String>(); //2022-01-12 mzy 上级分配的记录类型为其他 的任务可能没有客户,需要把名称变为 其他:任务名称 |
| | | String rowCause = 'SharingRecordCollection';//2022-5-10 yjk SWAG-CEA5AM |
| | | for(Task__c task :newList){ |
| | | if(task.Id!=null){ |
| | | //任务名称为*时,且客户不为空时 |
| | |
| | | } |
| | | |
| | | //2022-01-12 mzy 上级分配的记录类型为其他 的任务可能没有客户,需要把名称变为 其他:任务名称 |
| | | |
| | | if('上级分配任务'.equals(task.TaskDifferent__c)&&task.account__c == null){ |
| | | tempSet.add(task.Id); |
| | | |
| | | } |
| | | } |
| | | } |
| | |
| | | if(t.assignee__c!=null){ |
| | | tempTsk.OwnerId = t.assignee__c; |
| | | } |
| | | |
| | | //2022-5-10 yjk SWAG-CEA5AM |
| | | Task__Share aos = new Task__Share( |
| | | RowCause = rowCause, |
| | | ParentId = tempTsk.Id, |
| | | UserOrGroupId = t.OwnerId, |
| | | AccessLevel = 'Edit'); |
| | | insert aos; |
| | | |
| | | //如果页面选择询价了,则将询价的以下字段赋值给任务 |
| | | //询价等级(分配):记录分配时点的询价等级 |
| | | //预测OCSM签约日(分配):记录分配时点的预测签约日 |
| | |
| | | if(t.assignee__c!=null){ |
| | | tempTsk.OwnerId = t.assignee__c; |
| | | } |
| | | |
| | | //2022-5-10 yjk SWAG-CEA5AM |
| | | Task__Share aos = new Task__Share( |
| | | RowCause = rowCause, |
| | | ParentId = tempTsk.Id, |
| | | UserOrGroupId = t.OwnerId, |
| | | AccessLevel = 'Edit'); |
| | | insert aos; |
| | | |
| | | //如果页面选择询价了,则将询价的以下字段赋值给任务 |
| | | //询价等级(分配):记录分配时点的询价等级 |
| | | //预测OCSM签约日(分配):记录分配时点的预测签约日 |
| | |
| | | |
| | | } |
| | | //2021-11-29 mzy 任务管理改善 end |
| | | //20220720 you 中标任务 you start |
| | | public void BeforeTaskOlympus(List<task__c> newList,List<task__c> oldList,Map<Id,task__c> newMap,Map<Id,task__c> oldMap){ |
| | | List<Date> cd = new List<Date>(); |
| | | List<Task__c> TaskOlyUpdate = new List<Task__c>(); |
| | | for(task__c tsk : newList){ |
| | | String datestr =String.valueOf(tsk.CreatedDate); |
| | | cd.add( Date.valueOf(datestr.substring(0,10)) ); |
| | | } |
| | | System.debug(LoggingLevel.INFO, '*** cd: ' + cd); |
| | | Map<Date,Date> lm = new Map<Date,Date>(); |
| | | |
| | | for(OlympusCalendar__c oc:[SELECT Id,Date__c,After_3_WorkDay__c FROM OlympusCalendar__c WHERE Date__c IN:cd]){ |
| | | lm.put(oc.Date__c,oc.After_3_WorkDay__c); |
| | | } |
| | | System.debug(LoggingLevel.INFO, '*** map赋值: ' + lm); |
| | | |
| | | for(task__c tsk : newList){ |
| | | String datestr =String.valueOf(tsk.CreatedDate); |
| | | Date dt = lm.get(Date.valueOf(datestr.substring(0,10))); |
| | | Task__c tempTsk = new Task__c(); |
| | | //if(Trigger.isInsert){空更新数据 |
| | | tempTsk.Id = tsk.Id; |
| | | tempTsk.Task_After_3_WorkDay__c = dt; |
| | | TaskOlyUpdate.add(tempTsk); |
| | | System.debug(LoggingLevel.INFO, '*** 任务奥林巴斯赋值: ' + tsk.Task_After_3_WorkDay__c); |
| | | //}else{ |
| | | //tsk.Task_After_3_WorkDay__c = dt; |
| | | //} |
| | | } |
| | | if(TaskOlyUpdate.size()>0){ |
| | | update TaskOlyUpdate; |
| | | } |
| | | |
| | | } |
| | | //20220720 you 中标任务 you end |
| | | |
| | | } |