Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public Class LogAcallController{
- private ApexPages.StandardController con;
- public class DataException extends Exception {}
- public Boolean isError = FALSE;
- public String whatId = ApexPages.CurrentPage().getParameters().get('what_Id');
- public String leadId = ApexPages.CurrentPage().getParameters().get('lead_id');
- public string WhoID=ApexPages.CurrentPage().getParameters().get('who_id');
- public Lead LeadData;
- public String retURL = ApexPages.CurrentPage().getParameters().get('id');
- public String parentId;
- public Task logACall {get;set;}
- public list<Task> TaskList{get;set;}
- public Task followUpTask {get;set;}
- public Boolean createFollowUpTask {get;set;}
- public LogAcallController(){
- String queryString = GeneralUtilityClass.getQueryString('Lead');
- queryString += ' From Lead WHERE Id =: leadId ';
- LeadData= dataBase.query(queryString);
- if(WhoId !=null){
- parentId = LeadData.Id;
- }
- else{
- parentId = WhatID;
- }
- TaskList =new List<Task>();
- logACall = new Task();
- logACall.WhoID=LeadData.id;
- logACALL.lEAD__C=LeadData.Id;
- logACall.Subject = 'Transferred';
- logACall.Task_Type__c = 'Inbound';
- followUpTask = new Task();
- followUpTask.WhoID=LeadData.id;
- createFollowUpTask = FALSE;
- Map<String, String> taskRecordTypeMap = new Map<String, String>();
- for(Schema.RecordTypeInfo r :Task.SObjectType.getDescribe().getRecordTypeInfos()){
- taskRecordTypeMap.put(r.getName(), r.getRecordTypeId());
- }
- Task logACall = new Task();
- logACall.whatId =whatId;
- logACall.RecordTypeId = taskRecordTypeMap.get('Call');
- logACall.WhoId = WhoId;
- }
- public PageReference save(){
- try{
- isError=false;
- validateData();
- if(isError == TRUE ){
- throw new DataException(ErrorMessages.REVIEW_ERROR_MESSAGE);
- }
- }
- catch(exception e){
- ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, e.getMessage()));
- return null;
- }
- try{
- Savepoint sp = Database.setSavepoint();
- database.insert(logACall); // insert logACall ;
- PageReference pr = new pageReference('/'+leadId);
- pr.setRedirect(true);
- return pr;
- }
- catch(exception e){
- ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, e.getMessage()));
- return null;
- }
- }
- public PageReference cancel(){
- // PageReference pr = new pageReference(retURL);
- PageReference pr = new pageReference ('/apex/LeadEditOverridePage?retURL=/'+leadId+'&id='+leadId);
- // PageReference pr = new pageReference(retURL);
- pr.setRedirect(true);
- return pr;
- }
- public Boolean validateData() {
- isError =False;
- if(logACall.Attended_By__c==null) {
- logACall.Attended_By__c.addError('Please Enter Attended By Fields');
- isError = TRUE;
- }
- if(logACall.Call_Status__c!='Transferred') {
- logACall.Call_Status__c.addError('Please Enter Call Status as Transferred');
- isError = TRUE;
- }
- if(logACall.Call_Status__c=='Transferred' && (logACall.Transferred_To__c==null || logACall.Transferred_To__c=='' )) {
- logACall.Transferred_To__c.addError('Please Enter a value');
- isError = TRUE;
- }
- return isError;
- }
- }
- **TEST CLASSS**
- @isTest(seeAllData=false)
- private class LogAcallController_TestClass
- {
- private static Lead newLead;
- private static Campaign newCampaign;
- private static Task newTask;
- private static Task newLogACall;
- private static Task newAnotherTask;
- private static User newUser;
- private static void init() {
- newUser = InitializeTestData.createUser('cgpet00D900000010QJQ.test@demmo.com.test');
- database.insert(newUser);
- newCampaign = InitializeTestData.createCampaign();
- database.insert(newCampaign);
- newLead = InitializeTestData.createLeadWebsite(newCampaign.Id);
- newLead.DecisionMaker__c='Self';
- newLead.IsConverted = FALSE;
- database.insert(newLead);
- newLogACall=InitializeTestData.createLeadLogACall(newLead.Id,newUser.Id);
- database.insert(newLogACall);
- System.debug('@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'+newLead.Id);
- }
- private static TestMethod void Test1() {
- init();
- Test.StartTest();
- PageReference pageRef = Page.LogACallPageNew; // Add your VF page Name here
- pageRef.getParameters().put('who_id', String.valueOf(newLead.Id));
- pageRef.getParameters().put('lead_id', String.valueOf(newLead.Id));
- pageRef.getParameters().put('what_Id','');
- Test.setCurrentPage(pageRef);
- // PageReference testPage = testAccPlan.save();
- LogAcallController taskinfo= new LogAcallController();
- taskInfo.parentId = newLead.Id;
- taskInfo.logACall = newLogACall;
- taskInfo.createFollowUpTask = TRUE;
- taskinfo.save();
- taskinfo.cancel();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement