Advertisement
Guest User

Untitled

a guest
Feb 27th, 2017
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.52 KB | None | 0 0
  1. <apex:page sidebar="false" controller="SalesDevAccountUpdateTABController_AC" standardStylesheets="true">
  2. <apex:includeScript value="{!URLFOR($Resource.AccountStatusMassUpdate, '/jquery-1.10.2.js')}"/>
  3. <apex:includeScript value="{!URLFOR($Resource.AccountStatusMassUpdate, '/jquery-ui.js')}"/>
  4. <apex:includeScript value="{!URLFOR($Resource.AccountStatusMassUpdate, '/sort.js')}"/>
  5. <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"/>
  6.  
  7. public with sharing class SalesDevAccountUpdateTABController_AC{
  8. public Map<Id,aAccount> mapOrgAccsThisWeek;
  9. Public Boolean viewThisWeek {get;set;}
  10. Public Boolean editThisWeek {get;set;}
  11. private List<Account> lstAccsThisWeek;
  12. private List<aAccount> lstAccsWrapThisWeek;
  13. public Id selectedAcc {get;set;}
  14. public String salesDevelopmentDivision {get;set;}
  15. public SalesDevAccountUpdateTABController_AC(){
  16. viewThisWeek = true;
  17. editThisWeek = false;
  18. salesDevelopmentDivision = 'Sales Development';
  19. mapOrgAccsThisWeek = new Map<Id,aAccount>();
  20. }
  21.  
  22. // toggles the sorting of query from asc<-->desc
  23. public void toggleSort() {
  24. // simply toggle the direction
  25. sortDir = sortDir.equals('asc') ? 'desc' : 'asc';
  26. // run the query again
  27. getlstAccsThisWeek();
  28. }
  29.  
  30. // the current sort direction. defaults to asc
  31. public String sortDir {
  32. get { if (sortDir == null) { sortDir = 'desc'; } return sortDir; }
  33. set;
  34. }
  35.  
  36. // the current field to sort by. defaults to CreatedDate
  37. public String sortField {
  38. get { if (sortField == null) {sortField = 'CreatedDate'; } return sortField; }
  39. set;
  40. }
  41.  
  42. public List<Account> getlstAccsThisWeek(){
  43. lstAccsThisWeek = new List<Account>();
  44. lstAccsThisWeek.clear();
  45. //Id ownerid = Userinfo.getUserId();
  46. String SOQL = 'SELECT Id,Name,Owner.Name,Advertiser_Market__c,current_status__c,Activity_Type__c,Due_Date__c,Contact_Name__c,Contact_Title__c,Lead_Source__c,';
  47. SOQL+= 'lastmodifieddate FROM Account WHERE lastmodifieddate = THIS_WEEK AND Owner.division=:salesDevelopmentDivision';
  48. //(OwnerId=:ownerid OR Secondary_Account_Owner__c=:ownerid)';
  49.  
  50. SOQL+= ' order by ' + sortField + ' ' + sortDir + ' LIMIT 500';
  51.  
  52. lstAccsThisWeek = database.query(SOQL);
  53. system.debug('lstAccsThisWeek : '+lstAccsThisWeek);
  54.  
  55. if(selectedAcc != null){
  56. Account acc = [SELECT Id,Name,Owner.Name,Advertiser_Market__c,current_status__c,Activity_Type__c,Due_Date__c,Contact_Name__c,Contact_Title__c,Lead_Source__c,
  57. lastmodifieddate FROM Account WHERE id=:selectedAcc Limit 1];
  58. lstAccsThisWeek.add(acc);
  59. system.debug('lstAccsThisWeek inside : '+lstAccsThisWeek);
  60.  
  61. }
  62.  
  63. for(Account a:lstAccsThisWeek){
  64. mapOrgAccsThisWeek.put(a.Id,new aAccount(a.Id,a.Contact_Name__c,a.Advertiser_Market__c,a.current_status__c,a.Activity_Type__c,a.Due_Date__c,a.Lead_Source__c));
  65. }
  66. system.debug('mapOrgAccsThisWeek : '+mapOrgAccsThisWeek);
  67. //selectedAcc=null;
  68. return lstAccsThisWeek;
  69. }
  70.  
  71. Public class aAccount{
  72. Public Id AccId { get; set; }
  73. Public Id Contact_Name {get; set;}
  74. Public string Advertiser_Market {get; set;}
  75. Public string Current_status {get; set;}
  76. Public string Activity_Type{get; set;}
  77. Public Date Due_Date{get; set;}
  78. Public String Lead_Source{get; set;}
  79. public aAccount(Id AccId,Id Contact_Name,string Advertiser_Market,string Current_status,string Activity_Type,Date Due_Date,String Lead_Source){
  80. this.AccId = AccId;
  81. this.Contact_Name = Contact_Name;
  82. this.Advertiser_Market = Advertiser_Market;
  83. this.Current_status = Current_status;
  84. this.Activity_Type = Activity_Type;
  85. this.Due_Date = Due_Date;
  86. this.Lead_Source = Lead_Source;
  87. }
  88. }
  89.  
  90. public pagereference saveThisWeek(){
  91. viewThisWeek = true;
  92. editThisWeek = false;
  93. List<Account> lstAccsToUpdate = new List<Account>();
  94. try{
  95. for(Account a: lstAccsThisWeek){
  96. system.debug('mapOrgAccsThisWeek.get(a.Id).Activity_Type : '+mapOrgAccsThisWeek.get(a.Id).Activity_Type);
  97. system.debug('a.Activity_Type__c : '+a.Activity_Type__c);
  98. if(mapOrgAccsThisWeek.get(a.Id).Advertiser_Market != a.Advertiser_Market__c || mapOrgAccsThisWeek.get(a.Id).Current_status != a.Current_status__c ||
  99. mapOrgAccsThisWeek.get(a.Id).Activity_Type != a.Activity_Type__c || mapOrgAccsThisWeek.get(a.Id).Due_Date != a.Due_Date__c ||
  100. mapOrgAccsThisWeek.get(a.Id).Contact_Name != a.Contact_Name__c || mapOrgAccsThisWeek.get(a.Id).Lead_Source != a.Lead_Source__c){
  101. lstAccsToUpdate.add(a);
  102. system.debug('FOR Loop lstAccsToUpdate: '+lstAccsToUpdate);
  103. }
  104. }
  105. if(!lstAccsToUpdate.isEmpty()){
  106. system.debug(' after empty check - lstAccsToUpdate: '+lstAccsToUpdate);
  107. update lstAccsToUpdate;
  108. selectedAcc = null;
  109. getlstAccsThisWeek();
  110. searchRender = false;
  111. searchstring = '';
  112.  
  113. }
  114. // return new pagereference('/apex/MassAccUpdateStatusTab_VF');
  115. }
  116. catch(DMlException e){
  117. ApexPages.Message myMsg = new ApexPages.Message(ApexPages.Severity.ERROR,'Error: Save Failed Due to :' +e);
  118. ApexPages.addMessage(myMsg);
  119. return null;
  120. }
  121. return null;
  122. }
  123. public pagereference cancelThisWeek(){
  124. editThisWeek = false;
  125. viewThisWeek = true;
  126. return null;
  127. }
  128.  
  129. public pagereference EditThisWeek(){
  130. editThisWeek = true;
  131. viewThisWeek = false;
  132. return null;
  133. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement