Esempio n. 1
0
        public ActionResult Index()
        {
            var viewModel = new PerformanceComercialViewModel();

            viewModel.AllConsultor         = new MultiSelectList(_gananciaLogica.ObtenerConsultores(), "co_usuario", "no_usuario", new List <string>());
            viewModel.SelectedConsultorIds = new List <string>();
            viewModel.Meses = Common.GetMonthsSelectList();
            viewModel.Anos  = Common.GetYearsSelectList();
            return(View(viewModel));
        }
Esempio n. 2
0
        public ActionResult SearchData(PerformanceComercialViewModel fr)
        {
            DateTime fechaInicial = Convert.ToDateTime(fr.MesDesde.ToString() + "-" + "01-" + fr.AnoDesde.ToString(), CultureInfo.InvariantCulture);
            DateTime fechaFinal   = Convert.ToDateTime(fr.MesHasta.ToString() + "-" + "01-" + fr.AnoHasta.ToString(), CultureInfo.InvariantCulture);
            PerformanceComercialResultViewModel resultViewModel = new PerformanceComercialResultViewModel();

            if (fr.SelectedConsultorIds != null && fechaInicial <= fechaFinal)
            {
                resultViewModel.ListRelatorio = new List <RelatorioViewModel>();
                int diferenciaMeses = Common.MonthDifference(fechaFinal, fechaInicial);
                foreach (string consultor in fr.SelectedConsultorIds)
                {
                    RelatorioViewModel relatorioViewModel = new RelatorioViewModel();
                    relatorioViewModel.ListGanancia = new List <GananciaViewModel>();
                    relatorioViewModel.Consultor    = _gananciaLogica.ObtenerNombreConsulto(consultor);
                    var i = 0;
                    while (i <= diferenciaMeses)
                    {
                        DateTimeFormatInfo mfi               = new DateTimeFormatInfo();
                        string             strMonthName      = mfi.GetMonthName(fechaInicial.AddMonths(i).Month).ToString();
                        GananciaViewModel  gananciaViewModel = new GananciaViewModel();
                        gananciaViewModel.Periodo        = strMonthName + " del " + fechaInicial.AddMonths(i).Year.ToString();
                        gananciaViewModel.ReceitaLiquida = _gananciaLogica.CalcularReceitaLiquidaPorMes(fechaInicial.AddMonths(i), consultor);
                        gananciaViewModel.CustoFixo      = _gananciaLogica.CalcularCustoFixo(consultor);
                        gananciaViewModel.Comissao       = _gananciaLogica.CalcularComissaoPorMes(fechaInicial.AddMonths(i), consultor);
                        gananciaViewModel.Lucro          = gananciaViewModel.ReceitaLiquida - (gananciaViewModel.CustoFixo + gananciaViewModel.Comissao);
                        if (gananciaViewModel.ReceitaLiquida != 0)
                        {
                            relatorioViewModel.ListGanancia.Add(gananciaViewModel);
                        }

                        i++;
                    }
                    if (relatorioViewModel.ListGanancia.Count() > 0)
                    {
                        resultViewModel.ListRelatorio.Add(relatorioViewModel);
                    }
                }
            }
            return(PartialView("_Result", resultViewModel));
        }
Esempio n. 3
0
        public JsonResult PizzaGrafico(PerformanceComercialViewModel fr)
        {
            List <PizzaViewModel> resultViewModel = new List <PizzaViewModel>();

            DateTime fechaInicial = Convert.ToDateTime(fr.MesDesde.ToString() + "-" + "01-" + fr.AnoDesde.ToString(), CultureInfo.InvariantCulture);
            DateTime fechaFinal   = Convert.ToDateTime(fr.MesHasta.ToString() + "-" + "01-" + fr.AnoHasta.ToString(), CultureInfo.InvariantCulture);

            if (fr.SelectedConsultorIds != null && fechaInicial <= fechaFinal)
            {
                int diferenciaMeses = Common.MonthDifference(fechaFinal, fechaInicial);
                foreach (string consultor in fr.SelectedConsultorIds)
                {
                    PizzaViewModel     pizzaViewModel     = new PizzaViewModel();
                    RelatorioViewModel relatorioViewModel = new RelatorioViewModel();
                    relatorioViewModel.ListGanancia = new List <GananciaViewModel>();
                    pizzaViewModel.Consultor        = _gananciaLogica.ObtenerNombreConsulto(consultor);
                    var i = 0;
                    while (i <= diferenciaMeses)
                    {
                        DateTimeFormatInfo mfi               = new DateTimeFormatInfo();
                        string             strMonthName      = mfi.GetMonthName(fechaInicial.AddMonths(i).Month).ToString();
                        GananciaViewModel  gananciaViewModel = new GananciaViewModel();
                        gananciaViewModel.Periodo        = strMonthName + " del " + fechaInicial.AddMonths(i).Year.ToString();
                        gananciaViewModel.ReceitaLiquida = _gananciaLogica.CalcularReceitaLiquidaPorMes(fechaInicial.AddMonths(i), consultor);
                        if (gananciaViewModel.ReceitaLiquida != 0)
                        {
                            relatorioViewModel.ListGanancia.Add(gananciaViewModel);
                        }

                        i++;
                    }

                    pizzaViewModel.Percentagem = int.Parse(Math.Round(relatorioViewModel.ListGanancia.Sum(g => g.ReceitaLiquida)).ToString());
                    resultViewModel.Add(pizzaViewModel);
                }
            }

            return(Json(resultViewModel, JsonRequestBehavior.AllowGet));
        }
Esempio n. 4
0
        public JsonResult ColumnGrafico(PerformanceComercialViewModel fr)
        {
            List <GraficoViewModel> resultViewModel = new List <GraficoViewModel>();
            DateTime fechaInicial    = Convert.ToDateTime(fr.MesDesde.ToString() + "-" + "01-" + fr.AnoDesde.ToString(), CultureInfo.InvariantCulture);
            DateTime fechaFinal      = Convert.ToDateTime(fr.MesHasta.ToString() + "-" + "01-" + fr.AnoHasta.ToString(), CultureInfo.InvariantCulture);
            int      diferenciaMeses = Common.MonthDifference(fechaFinal, fechaInicial);

            if (fr.SelectedConsultorIds != null && fechaInicial <= fechaFinal)
            {
                var i = 0;
                while (i <= diferenciaMeses)
                {
                    GraficoViewModel   graficoViewModel = new GraficoViewModel();
                    DateTimeFormatInfo mfi          = new DateTimeFormatInfo();
                    string             strMonthName = mfi.GetMonthName(fechaInicial.AddMonths(i).Month).ToString();
                    string             periodo      = strMonthName + " del " + fechaInicial.AddMonths(i).Year.ToString();
                    graficoViewModel.ListColumn  = new List <ColumnChartViewModel>();
                    graficoViewModel.Consultores = new List <string>();
                    graficoViewModel.Periodo     = periodo;
                    double totalReceitaLiquita = 0;
                    foreach (string consultor in fr.SelectedConsultorIds)
                    {
                        var consultorName = _gananciaLogica.ObtenerNombreConsulto(consultor);
                        ColumnChartViewModel gananciaViewModel = new ColumnChartViewModel();
                        gananciaViewModel.Consultor = consultorName;
                        graficoViewModel.Consultores.Add(consultorName);
                        gananciaViewModel.ReceitaLiquida = _gananciaLogica.CalcularReceitaLiquidaPorMes(fechaInicial.AddMonths(i), consultor);
                        totalReceitaLiquita = totalReceitaLiquita + gananciaViewModel.ReceitaLiquida;
                        graficoViewModel.ListColumn.Add(gananciaViewModel);
                    }
                    i++;
                    if (totalReceitaLiquita != 0)
                    {
                        resultViewModel.Add(graficoViewModel);
                    }
                }
            }
            return(Json(resultViewModel, JsonRequestBehavior.AllowGet));
        }