public void SetValuesForReport(string Year, string isQuarterly, string Stage) { objReportController = new ReportController(); objReportModel = new ReportModel(); objConversionToPlanModel = new ConversionToPlanModel(); SubDataTableModel = new ConversionSubDataTableModel(); objProjected_Goal = new Projected_Goal(); objCardSection = new CardSectionModel(); ObjPlanCommonFunctions.SetSessionData(); var result1 = objReportController.GetTopConversionToPlanByCustomFilter("Campaign", "", "", currentYear, isQuarterly, Stage) as PartialViewResult; objConversionToPlanModel = (ConversionToPlanModel)(result1.ViewData.Model); objConversionDataTable = objConversionToPlanModel.ConversionToPlanDataTableModel; SubDataTableModel = objConversionDataTable.SubDataModel; objProjected_Goal = objConversionToPlanModel.RevenueHeaderModel; if (isQuarterly == "Monthly") { ActualList = objConversionDataTable.ActualList; ProjectedList = objConversionDataTable.ProjectedList; GoalList = objConversionDataTable.GoalList; } }
public void SetValuesForReport(string Year, string isQuarterly) { objReportController = new ReportController(); objReportModel = new ReportModel(); objReportDataTable = new RevenueDataTable(); subModelList = new RevenueSubDataTableModel(); objRevenueToPlanModel = new RevenueToPlanModel(); objProjected_Goal = new Projected_Goal(); objCardSection = new CardSectionModel(); objlineChartData = new lineChartData(); objCardSectionListModel = new CardSectionListModel(); ObjPlanCommonFunctions.SetSessionData(); var result1 = objReportController.GetRevenueData(Year, isQuarterly) as PartialViewResult; objReportModel = (ReportModel)(result1.ViewData.Model); objRevenueToPlanModel = objReportModel.RevenueToPlanModel; objReportDataTable = objRevenueToPlanModel.RevenueToPlanDataModel; subModelList = objReportDataTable.SubDataModel; objlineChartData = objRevenueToPlanModel.LineChartModel; objProjected_Goal = objReportModel.RevenueHeaderModel; objCardSection = objReportModel.CardSectionModel; objCardSectionListModel = objCardSection.CardSectionListModel[0]; if (isQuarterly == "Monthly") { ActualList = objReportDataTable.ActualList; ProjectedList = objReportDataTable.ProjectedList; GoalList = objReportDataTable.GoalList; PerformanceList = subModelList.PerformanceList; ActualCostList = subModelList.CostList; ROIList = subModelList.ROIList; TotalRevenueList = subModelList.RevenueList; } else { QuaterlyActualList = objReportDataTable.ActualList; QuaterlyProjectedList = objReportDataTable.ProjectedList; QuaterlyGoalList = objReportDataTable.GoalList; QuaterlyPerformanceList = subModelList.PerformanceList; QuaterlyActualCostList = subModelList.CostList; QuaterlyROIList = subModelList.ROIList; QuaterlyTotalRevenueList = subModelList.RevenueList; } }
public void VerifyHeaderValue(Projected_Goal objProjected_Goal, List <double> ActualList, List <double> GoalList, List <double> ProjectedList) { #region Actual // Get actual projected value decimal GoalUpToCurrentMonth = 0; decimal actualPerecentage = 0; decimal SumOfProjected = 0; decimal TotalProjected = 0; decimal ProjectedPercentage = 0; foreach (decimal actual in ActualList) { actualProjected = actualProjected + actual; } Assert.AreEqual(Math.Round(actualProjected, 2), Math.Round(Convert.ToDecimal(objProjected_Goal.Actual_Projected), 2)); Console.WriteLine("ReportController - GetTopConversionToPlanByCustomFilter \n Report - TQL Waterfall Report Header Section \n The assert value of actual TQL in header is " + objProjected_Goal.Actual_Projected + "."); // Get actual perecentage value for (int i = 1; i <= GoalList.Count(); i++) { if (currentMonth >= i) { GoalUpToCurrentMonth = GoalUpToCurrentMonth + Convert.ToDecimal(GoalList[i - 1].ToString()); } } actualPerecentage = ((actualProjected - GoalUpToCurrentMonth) / GoalUpToCurrentMonth) * 100; Assert.AreEqual(Math.Round(actualPerecentage, 2), Math.Round(Convert.ToDecimal(objProjected_Goal.ActualPercentage), 2)); Console.WriteLine("ReportController - GetTopConversionToPlanByCustomFilter \n Report - TQL Waterfall Report Header Section \n The assert value of actual TQL perecentage in header is " + objProjected_Goal.Actual_Projected + "."); #endregion #region Projected // Get projected value for (int i = 0; i < ProjectedList.Count(); i++) { SumOfProjected = SumOfProjected + Convert.ToDecimal(ProjectedList[i].ToString()); } TotalProjected = SumOfProjected + actualProjected; Assert.AreEqual(Math.Round(TotalProjected, 2), Math.Round(Convert.ToDecimal(objProjected_Goal.Projected), 2)); Console.WriteLine("ReportController - GetTopConversionToPlanByCustomFilter \n Report - TQL Waterfall Report Header Section \n The assert value of projected TQL in header is " + Math.Round(TotalProjected, 2).ToString() + "."); //Calculation for projected percentage ProjectedPercentage = ((TotalProjected - TacticTQL) / TacticTQL) * 100; Assert.AreEqual(Math.Round(ProjectedPercentage, 2), Math.Round(Convert.ToDecimal(objProjected_Goal.ProjectedPercentage), 2)); Console.WriteLine("ReportController - GetTopConversionToPlanByCustomFilter \n Report - TQL Waterfall Report Header Section \n The assert value of projected TQL perecentage in header is " + Math.Round(ProjectedPercentage, 2).ToString() + "."); #endregion }
public async Task INQSummaryReport() { try { //Call common function for login var IsLogin = ObjCommonFunctions.CheckLogin(); if (IsLogin != null) { Assert.AreEqual("Index", IsLogin.RouteValues["Action"]); Console.WriteLine("LoginController - Index With Parameters \n The assert value of Action : " + IsLogin.RouteValues["Action"]); ObjPlanCommonFunctions.SetSessionData(); SetValuesForReport(currentYear, "Monthly", "ProjectedStageValue"); decimal sumOfActual = 0; decimal sumOfProjected = 0; Sessions.PlanExchangeRate = 1.0; var result = await objReportController.GetOverviewData(currentYear, "Quarterly") as PartialViewResult; objReportOverviewModel = new ReportOverviewModel(); objReportOverviewModel = (ReportOverviewModel)result.Model; if (objReportOverviewModel != null) { objProjected_Goal = new Projected_Goal(); objProjected_Goal = objReportOverviewModel.conversionOverviewModel.Projected_LineChartList[0].projected_goal; #region Actual Projected foreach (double actual in ActualList) { sumOfActual = sumOfActual + Convert.ToDecimal(actual); } foreach (double projected in ProjectedList) { sumOfProjected = sumOfProjected + Convert.ToDecimal(projected); } INQTotalProjected = sumOfActual + sumOfProjected; Assert.AreEqual(Math.Round(Convert.ToDecimal(objProjected_Goal.Actual_Projected), 2), Math.Round(INQTotalProjected, 2)); Console.WriteLine("ReportController -> GetOverviewData \n Report - Waterfall Summary Report \n The assert value of projected INQ in volume section " + objProjected_Goal.Actual_Projected + "."); #endregion #region Actual Goal DataTable dtModel = ObjCommonFunctions.GetExcelData("GamePlanExcelConn", "[Model$]").Tables[0]; DataRow drModel = dtModel.Rows[0]; INQGoal = Convert.ToDecimal(drModel["TACTIC_PROJECTED_STAGE"].ToString()); Assert.AreEqual(Math.Round(Convert.ToDecimal(objProjected_Goal.Goal), 2), Math.Round(INQGoal, 2)); Console.WriteLine("ReportController -> GetOverviewData \n Report - Waterfall Summary Report \n The assert value of projected INQ goal in volume section " + objProjected_Goal.Goal + "."); #endregion #region Actual Percentage INQPercentage = ((INQTotalProjected - INQGoal) / INQGoal) * 100; Assert.AreEqual(Math.Round(Convert.ToDecimal(objProjected_Goal.Percentage), 2), Math.Round(INQPercentage, 2)); Console.WriteLine("ReportController -> GetOverviewData \n Report - Waterfall Summary Report \n The assert value of projected INQ percentage in volume section " + objProjected_Goal.Percentage + "."); #endregion } } } catch (Exception e) { throw e; } }
public async Task RevenueSummaryReport() { try { var IsLogin = ObjCommonFunctions.CheckLogin(); if (IsLogin != null) { Assert.AreEqual("Index", IsLogin.RouteValues["Action"]); Console.WriteLine("LoginController - Index With Parameters \n The assert value of Action : " + IsLogin.RouteValues["Action"]); ObjPlanCommonFunctions.SetSessionData(); objReportController = new ReportController(); objReportModel = new ReportModel(); Sessions.PlanExchangeRate = 1.0; var result = await objReportController.GetOverviewData("2016", "Quarterly") as PartialViewResult; objReportOverviewModel = new ReportOverviewModel(); objReportOverviewModel = (ReportOverviewModel)result.Model; List <sparkLineCharts> SparkLineChartsList = new List <sparkLineCharts>(); SparkLineChartsList = objReportOverviewModel.revenueOverviewModel.SparkLineChartsData; if (objReportOverviewModel != null) { objProjected_Goal = new Projected_Goal(); objProjected_Goal = objReportOverviewModel.revenueOverviewModel.projected_goal; DataTable dt = ObjCommonFunctions.GetExcelData("GamePlanExcelConn", "[Actual Data$]").Tables[0]; TotalProjected = SetValuesForSummeryRevenueReport(dt); Assert.AreEqual(Math.Round(TotalProjected, 2), Math.Round(Convert.ToDecimal(objProjected_Goal.Actual_Projected), 2)); Console.WriteLine("ReportController - revenueOverviewModel \n The assert value of actual projected is " + Math.Round(Convert.ToDecimal(objProjected_Goal.Actual_Projected), 2).ToString() + "."); Assert.AreEqual(Math.Round(TacticRevenueAmount, 2), Math.Round(Convert.ToDecimal(objProjected_Goal.Goal), 2)); Console.WriteLine("ReportController - revenueOverviewModel \n The assert value of actual goal is " + Math.Round(Convert.ToDecimal(objProjected_Goal.Goal), 2).ToString() + "."); decimal Percentage = ((TotalProjected - TacticRevenueAmount) / TacticRevenueAmount) * 100; Assert.AreEqual(Math.Round(Percentage, 2), Math.Round(Convert.ToDecimal(objProjected_Goal.Percentage), 2)); Console.WriteLine("ReportController - revenueOverviewModel \n The assert value of actual percentage is " + Math.Round(Convert.ToDecimal(objProjected_Goal.Percentage), 2) + "."); if (SparkLineChartsList != null) { decimal value = 0; for (int i = 0; i < SparkLineChartsList.Count; i++) { var sparkLineData = SparkLineChartsList[i]; string attributeName1 = sparkLineData.sparklinechartdata[0].Name.ToLower(); string percentage = sparkLineData.sparklinechartdata[0].RevenueTypeValue; string Totalpercentage = sparkLineData.sparklinechartdata[1].RevenueTypeValue.ToLower(); string attributeName2 = sparkLineData.sparklinechartdata[1].RevenueTypeValue.ToLower(); string Header = sparkLineData.ChartHeader; if (sparkLineData.ChartHeader.ToLower() == "top revenue by") { value = SumOfActual; } else if (sparkLineData.ChartHeader.ToLower() == "top cost by") { if (dt.Rows[4] != null) { for (int j = 1; j <= dt.Columns.Count - 1; j++) { if (j <= currentMonth) { SumOfCost = SumOfCost + Convert.ToDecimal(dt.Rows[4][j].ToString()); } } } value = SumOfCost; } else if (sparkLineData.ChartHeader.ToLower() == "top performance by") { value = ((SumOfActual - TacticRevenueAmount) / TacticRevenueAmount) * 100; } else if (sparkLineData.ChartHeader.ToLower() == "top roi by") { value = ((SumOfActual - SumOfCost) / SumOfCost) * 100; } if (percentage.Contains('%')) { percentage = percentage.Replace('%', '0'); Totalpercentage = Totalpercentage.Replace('%', '0'); } Assert.AreEqual(Math.Round(Convert.ToDecimal(percentage), 1), Math.Round(Convert.ToDecimal(value), 1)); Console.WriteLine("ReportController - revenueOverviewModel \n Report - Revenue Summery Report \n The assert value of " + attributeName1 + " in " + Header + " is " + Math.Round(Convert.ToDecimal(percentage), 2) + "."); Assert.AreEqual(Math.Round(Convert.ToDecimal(Totalpercentage), 1), Math.Round(Convert.ToDecimal(value), 1)); Console.WriteLine("ReportController - revenueOverviewModel \n Report - Revenue Summery Report \n The assert value of " + attributeName2 + " in " + Header + " is " + Math.Round(Convert.ToDecimal(Totalpercentage), 2) + "."); } } } } } catch (Exception e) { throw e; } }
public async Task CWSummaryReport() { try { //Call common function for login var IsLogin = ObjCommonFunctions.CheckLogin(); if (IsLogin != null) { Assert.AreEqual("Index", IsLogin.RouteValues["Action"]); Console.WriteLine("LoginController - Index With Parameters \n The assert value of Action : " + IsLogin.RouteValues["Action"]); ObjPlanCommonFunctions.SetSessionData(); SetValuesForReport(currentYear, "Monthly", "CW"); decimal sumOfActual = 0; decimal sumOfProjected = 0; Sessions.PlanExchangeRate = 1.0; var result = await objReportController.GetOverviewData(currentYear, "Quarterly") as PartialViewResult; objReportOverviewModel = new ReportOverviewModel(); objReportOverviewModel = (ReportOverviewModel)result.Model; if (objReportOverviewModel != null) { objProjected_Goal = new Projected_Goal(); objProjected_Goal = objReportOverviewModel.conversionOverviewModel.Projected_LineChartList[2].projected_goal; objConversion_Benchmark_Model = new Conversion_Benchmark_Model(); objConversion_Benchmark_Model = objReportOverviewModel.conversionOverviewModel.Projected_LineChartList[2].Stage_Benchmark; #region Actual Projected foreach (double actual in ActualList) { sumOfActual = sumOfActual + Convert.ToDecimal(actual); } foreach (double projected in ProjectedList) { sumOfProjected = sumOfProjected + Convert.ToDecimal(projected); } CWTotalProjected = sumOfActual + sumOfProjected; Assert.AreEqual(Math.Round(Convert.ToDecimal(objProjected_Goal.Actual_Projected), 2), Math.Round(CWTotalProjected, 2)); Console.WriteLine("ReportController - GetOverviewData \n The assert value of projected CW is " + objProjected_Goal.Actual_Projected + "."); #endregion #region Actual Goal DataTable dtModel = ObjCommonFunctions.GetExcelData("GamePlanExcelConn", "[Model$]").Tables[0]; DataRow drModel = dtModel.Rows[0]; INQGoal = Convert.ToDecimal(drModel["TACTIC_PROJECTED_STAGE"].ToString()); TQLGoal = ObjPlanCommonFunctions.CalculationForTactic(drModel, INQGoal, "TQL"); CWGoal = ObjPlanCommonFunctions.CalculationForTactic(drModel, TQLGoal, "CW"); Assert.AreEqual(Math.Round(Convert.ToDecimal(objProjected_Goal.Goal), 2), Math.Round(CWGoal, 2)); Console.WriteLine("ReportController - GetOverviewData \n The assert value of projected CW goal is " + objProjected_Goal.Goal + "."); #endregion #region Actual Percentage CWPercentage = ((CWTotalProjected - CWGoal) / CWGoal) * 100; Assert.AreEqual(Math.Round(Convert.ToDecimal(objProjected_Goal.Percentage), 2), Math.Round(CWPercentage, 2)); Console.WriteLine("ReportController - GetOverviewData \n The assert value of projected CW percentage is " + objProjected_Goal.Percentage + "."); #endregion #region CW Stage Volume decimal CWConversionRate = CalculateConversionValues("CW"); Assert.AreEqual(objConversion_Benchmark_Model.stageVolume, Math.Floor(CWConversionRate).ToString()); Console.WriteLine("ReportController - GetOverviewData \n The assert value of projected CW percentage " + objConversion_Benchmark_Model.stageVolume + "."); #endregion #region CW Stage Goal decimal CWConversionGoal = (CWGoal / TQLGoal) * 100; Assert.AreEqual(Math.Round(Convert.ToDecimal(objConversion_Benchmark_Model.Benchmark), 2), Math.Round(CWConversionGoal, 2)); Console.WriteLine("ReportController - GetOverviewData \n The assert value of projected CW goal percentage" + objConversion_Benchmark_Model.Benchmark + "."); #endregion #region CW Stage Percentage Difference decimal CWPercentageDiff = ((Math.Floor(CWConversionRate) - CWConversionGoal) / CWConversionGoal) * 100; Assert.AreEqual(Math.Round(Convert.ToDecimal(objConversion_Benchmark_Model.PercentageDifference), 2), Math.Round(CWPercentageDiff, 2)); Console.WriteLine("ReportController - GetOverviewData \n The assert value of projected CW difference percentage " + objConversion_Benchmark_Model.PercentageDifference + "."); #endregion } } } catch (Exception e) { throw e; } }