Guest User

Untitled

a guest
Jan 22nd, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.76 KB | None | 0 0
  1. public class LeadTriggerHandler {
  2.  
  3. public void BeforeInsert(List<Lead> newList){
  4. List<Lead> leadsWithFive9InboundCampaign = new List<Lead>();
  5. for(Lead l : newList){
  6. if(l.Five9_Inbound_Campaign_Name__c != null){
  7. leadsWithFive9InboundCampaign.add(l);
  8. }
  9. }
  10. if(!leadsWithFive9InboundCampaign .isEmpty()){
  11. populateLeadSourceNameLookup(leadsWithFive9InboundCampaign );
  12. }
  13. }
  14.  
  15. public void BeforeUpdate(List<Lead> newList, Map<ID,Lead> newMap, List<Lead> oldList, Map<ID,Lead> oldMap){
  16. List<Lead> leadsWithChangedFive9InboundCampaign = new List<Lead>();
  17.  
  18. if(!leadsWithChangedFive9InboundCampaign .isEmpty()){
  19. populateLeadSourceNameLookup(leadsWithChangedFive9InboundCampaign );
  20. }
  21. }
  22.  
  23. private void populateLeadSourceNameLookup(List<Lead> myLeads){
  24. Set<String> five9CampaignNames = new Set<String>();
  25. for(Lead l : myLeads){
  26. if(l.Five9_Inbound_Campaign_Name__c == null){
  27. l.Lead_Source_Name__c = null;
  28. } else {
  29. five9CampaignNames.add(l.Five9_Inbound_Campaign_Name__c);
  30. }
  31. }
  32. Map<String,Id> campaignNameToId = new Map<String,Id>();
  33. for( Campaign c : [SELECT ID, Name FROM Campaign WHERE Name IN :five9CampaignNames ]){
  34. campaignNameToId.put(c.name,c.id);
  35. }
  36. for(Lead l : myLeads){
  37. if(l.Five9_Inbound_Campaign_Name__c != null){
  38. l.Lead_Source_Name__c = campaignNameToId.get(l.Five9_Inbound_Campaign_Name__c);
  39. }
  40. }
  41.  
  42. }
  43.  
  44. Method does not exist or incorrect signature: void AfterInsert(List<Lead>, Map<Id,Lead>) from the type LeadTriggerHandler
  45.  
  46. Method does not exist or incorrect signature: void AfterUpdate(List<Lead>, Map<Id,Lead>, List<Lead>, Map<Id,Lead>) from the type LeadTriggerHandler
  47.  
  48. Method does not exist or incorrect signature: void BeforeDelete(List<Lead>, Map<Id,Lead>) from the type LeadTriggerHandler
  49. Method does not exist or incorrect signature: void AfterDelete(List<Lead>, Map<Id,Lead>) from the type LeadTriggerHandler
  50.  
  51. trigger LeadTrigger on Lead (before insert, before update, before delete, after insert, after update, after delete) {
  52.  
  53. LeadTriggerHandler handler = new LeadTriggerHandler();
  54.  
  55.  
  56. if(Trigger.isInsert && Trigger.isBefore){
  57. handler.BeforeInsert(Trigger.new);
  58. }
  59. if(Trigger.isInsert && Trigger.isAfter){
  60. handler.AfterInsert(Trigger.new, Trigger.newMap);
  61. }
  62. if(Trigger.isUpdate && Trigger.isBefore){
  63. handler.BeforeUpdate(Trigger.new, Trigger.newMap, Trigger.old, Trigger.oldMap);
  64. }
  65. if(Trigger.isUpdate && Trigger.isAfter){
  66. handler.AfterUpdate(Trigger.new, Trigger.newMap, Trigger.old, Trigger.oldMap);
  67. }
  68. if(Trigger.isDelete && Trigger.isBefore){
  69. handler.BeforeDelete(Trigger.old, Trigger.oldMap);
  70. }
  71. if(Trigger.isDelete && Trigger.isAfter){
  72. handler.AfterDelete(Trigger.old, Trigger.oldMap);
  73. }
Add Comment
Please, Sign In to add comment