public ActionResult PrintCommissionsReport(int idPeriod = 0) { if (idPeriod != 0) { var period = new Period().Get(Settings.AutenticationKeyEarningSystem, idPeriod); ViewBag.Period = period.DataInicio.ToString(Resources.Resource.GS_CommissionsReport_DateFormat) + " - " + period.DataTermino.ToString(Resources.Resource.GS_CommissionsReport_DateFormat); if (period.IdStatusPeriodo == 3) { ViewBag.Partial = Resources.Resource.GS_CommissionsReport_PartialMsg; } } else { return View(new List<ConsolidatedCommissionModel>()); } var consolidatedCommissionModel = new List<ConsolidatedCommissionModel>(); if (idPeriod != 0) { consolidatedCommissionModel = new Commissions().SelectConsolidatedCommissions(Settings.AutenticationKeyEarningSystem, idPeriod).ToList(); ViewBag.TotalComissoes = consolidatedCommissionModel.Sum(m => m.ValorComissionamento); ViewBag.TotalComissoesPagas = consolidatedCommissionModel.Where(m => m.IsPago).Sum(m => m.ValorComissionamento); ViewBag.TotalCompras = consolidatedCommissionModel.Sum(m => m.ValorPedido); } return View(consolidatedCommissionModel); }
public ActionResult CommissionsReport(int idPeriod = 0, int page = 1) { var period = new Period().GetAll(Settings.AutenticationKeyEarningSystem).OrderByDescending(m => m.DataInicio).Where(m => m.IdStatusPeriodo == 2 || m.IdStatusPeriodo == 3).ToList(); ViewBag.Periods = GetPeriodSelectListItem(period, idPeriod); if (idPeriod != 0) { ViewBag.SelectedPeriod = idPeriod; } else { var periodAnterior = period.FirstOrDefault(m => m.DataTermino < DateTime.Today); if (periodAnterior == null || periodAnterior == new PeriodModel()) { periodAnterior = period.FirstOrDefault() ?? new PeriodModel(); } ViewBag.SelectedPeriod = periodAnterior.IdPeriodo; } var consolidatedCommissionModel = new List<ConsolidatedCommissionModel>(); if (idPeriod != 0) { consolidatedCommissionModel = new Commissions().SelectConsolidatedCommissions(Settings.AutenticationKeyEarningSystem, idPeriod).ToList(); ViewBag.TotalComissoes = consolidatedCommissionModel.Sum(m => m.ValorComissionamento); ViewBag.TotalComissoesPagas = consolidatedCommissionModel.Where(m => m.IsPago).Sum(m => m.ValorComissionamento); ViewBag.TotalCompras = consolidatedCommissionModel.Sum(m => m.ValorPedido); ViewBag.IsPartial = period.Any(m => m.IdPeriodo == idPeriod && m.IdStatusPeriodo == 3); } return View(CreateMvcList(consolidatedCommissionModel, page)); }
/// <summary> /// Sums all commissions that a promoter has the rights. /// </summary> /// <param name="year"></param> /// <param name="idPromoter"></param> /// <returns></returns> public Decimal GetTotalCommissionsByYear(string year, int idPromoter) { var commissions = new Commissions().SelectConsolidatedCommissionsByYear(Settings.AutenticationKeyEarningSystem, year, idPromoter); return commissions .Where(commissionModel => !commissionModel.IsPago) .Sum(commissionModel => commissionModel.ValorComissionamento); }