public ActionResult GetSalesSecion(FiltersToken token) { var tokenList = _dashboardServices.GetSales(token, token.UserId); tokenList.Filters = token; return(PartialView("~/Areas/AuthorAdmin/Views/Shared/Dashboard/_dbYourSales.cshtml", tokenList)); }
public ActionResult GetPeriods(FiltersToken token) { var periodKind = token.PeriodTypeId.ToPeriodSelectionKind(); var result = new PeriodsToken { Period = _dashboardServices.PeriodKindToDateRange(periodKind, false), ComparePeriod = token.IsCompareMode ? _dashboardServices.PeriodKindToDateRange(periodKind, true) : null }; return(Json(result, JsonRequestBehavior.AllowGet)); }
public ActionResult GetSubscriptionCancellation([DataSourceRequest] DataSourceRequest request, DashboardEnums.eSaleBoxType saleBoxType, short CurrencyId, int?StoreId, DateTime from, DateTime to, int userId) { var filter = new FiltersToken { CurrencyId = CurrencyId, DateRange = new DateRangeToken { from = from, to = to }, StoreId = StoreId }; var list = _dashboardServices.GetSubscriptionCancelRows(userId, filter); return(Json(list.ToDataSourceResult(request), JsonRequestBehavior.AllowGet)); }
public ActionResult GetSalesDetailsWindow(FiltersToken filter, DashboardEnums.eSaleBoxType type, bool compareBox) { var periodKind = filter.PeriodTypeId.ToPeriodSelectionKind(); filter.DateRange = _dashboardServices.PeriodKindToDateRange(periodKind, compareBox); var token = new SalesDetailsWindowToken { Title = String.Format("{0} for {1}-{2}", Utils.GetEnumDescription(type), filter.DateRange.from.ToString("MMMM dd, yyyy"), filter.DateRange.to.ToString("MMMM dd, yyyy")) , Filter = filter , Type = type , IsCompareBox = compareBox }; return(PartialView("Dashboard/_SalesDetailWindow", token)); }
public DashboardSaleBoxTokenLists GetSales(FiltersToken filter, int userId) { var token = new DashboardSaleBoxTokenLists { Currency = ActiveCurrencies.FirstOrDefault(x => x.CurrencyId == filter.CurrencyId), CompareToList = new List <DashboardSaleBoxToken>(), Filters = filter }; try { var period = Utils.ParseEnum <ReportEnums.ePeriodSelectionKinds>(filter.PeriodTypeId.ToString()); var dates = PeriodKindToDateRange(period, false); var mainList = getDashboardSaleStats(dates, userId, filter.CurrencyId, filter.StoreId); var secondDates = PeriodKindToDateRange(period, true); var secondList = getDashboardSaleStats(secondDates, userId, filter.CurrencyId, filter.StoreId); setSalesBoxesComparsion(mainList, secondList); token.List = mainList; if (!filter.IsCompareMode) { return(token); } var thirdDates = PreviousRangeFromRange(secondDates); var thirdList = getDashboardSaleStats(thirdDates, userId, filter.CurrencyId, filter.StoreId); setSalesBoxesComparsion(secondList, thirdList); token.CompareToList = secondList; return(token); } catch (Exception ex) { Logger.Error("get sales statistic for dashboard", CurrentUserId, ex, CommonEnums.LoggerObjectTypes.Dashboard); return(token); } }
public List <DbRefundDetailToken> GetRefundRows(int userId, FiltersToken filter) { try { using (var context = new lfeAuthorEntities()) { var result = context.tvf_DB_GetUserRefundDetails(filter.DateRange.from, filter.DateRange.to, userId, filter.CurrencyId, filter.StoreId, null, null).ToList(); var lines = result.Select(x => x.DbRefundEntity2BaseOrderLineDto()).OrderByDescending(x => x.OrderNumber).ToList(); return(lines); } } catch (Exception ex) { Logger.Error("GetRefundRows", ex, CommonEnums.LoggerObjectTypes.Dashboard); return(new List <DbRefundDetailToken>()); } }
public List <DashboardKpiChartDTO> GetChartData(FiltersToken filter, int userId, bool isCompareChart) { try { var period = Utils.ParseEnum <ReportEnums.ePeriodSelectionKinds>(filter.PeriodTypeId.ToString()); var results = new List <DashboardKpiChartDTO>(); var dates = PeriodKindToDateRange(period, isCompareChart); using (var context = new lfeAuthorEntities()) { var rows = context.tvf_FACT_GetEventsDailyLiveAggregates(dates.from, dates.to, userId, filter.StoreId).ToList(); var points = rows.Where(x => x.EventDate != null).GroupBy(x => new { FactDate = DateTime.Parse(x.EventDate.ToString()) }).ToArray(); results.AddRange(from point in points let current = point let videoWatch = rows.FirstOrDefault(x => x.EventDate == current.Key.FactDate && x.TypeId == (int)CommonEnums.eUserEvents.VIDEO_PREVIEW_WATCH) let buyEntered = rows.FirstOrDefault(x => x.EventDate == current.Key.FactDate && x.TypeId == (int)CommonEnums.eUserEvents.BUY_PAGE_ENTERED) let purchaseComplete = rows.FirstOrDefault(x => x.EventDate == current.Key.FactDate && x.TypeId == (int)CommonEnums.eUserEvents.PURCHASE_COMPLETE) let itemPreview = rows.FirstOrDefault(x => x.EventDate == current.Key.FactDate && x.TypeId == (int)CommonEnums.eUserEvents.COURSE_PREVIEW_ENTER) let storeViews = rows.FirstOrDefault(x => x.EventDate == current.Key.FactDate && x.TypeId == (int)CommonEnums.eUserEvents.STORE_VIEW) select new DashboardKpiChartDTO { date = point.Key.FactDate, video_preview_watch = videoWatch != null ? videoWatch.cnt : 0, buy_entered = buyEntered != null ? buyEntered.cnt : 0, purchase_complete = purchaseComplete != null ? purchaseComplete.cnt : 0, items = itemPreview != null ? itemPreview.cnt : 0, stores = storeViews != null ? storeViews.cnt : 0 }); } return(results); } catch (Exception ex) { Logger.Error("Get Dashboard Chart data", ex, CommonEnums.LoggerObjectTypes.Dashboard); return(new List <DashboardKpiChartDTO>()); } }
public List <BaseOrderLineDTO> GetSalesRows(int userId, DashboardEnums.eSaleBoxType type, FiltersToken filter) { try { using (var context = new lfeAuthorEntities()) { string paymentSource = null; byte? lineTypeId = null; switch (type) { case DashboardEnums.eSaleBoxType.ONE_TIME: paymentSource = DashboardEnums.eSaleSources.AS.ToString(); lineTypeId = (byte)BillingEnums.eOrderLineTypes.SALE; break; case DashboardEnums.eSaleBoxType.SUBSCRIPTION: paymentSource = DashboardEnums.eSaleSources.AS.ToString(); lineTypeId = (byte)BillingEnums.eOrderLineTypes.SUBSCRIPTION; break; case DashboardEnums.eSaleBoxType.RENTAL: paymentSource = DashboardEnums.eSaleSources.AS.ToString(); lineTypeId = (byte)BillingEnums.eOrderLineTypes.RENTAL; break; case DashboardEnums.eSaleBoxType.SALES_BY_AFFILIATES: paymentSource = DashboardEnums.eSaleSources.BAFS.ToString(); break; case DashboardEnums.eSaleBoxType.AFFILIATE_SALES: paymentSource = DashboardEnums.eSaleSources.AFS.ToString(); break; } var result = context.tvf_DB_GetUserSalesDetails(filter.DateRange.from, filter.DateRange.to, userId, filter.CurrencyId, filter.StoreId, paymentSource, lineTypeId).ToList(); var lines = result.Select(x => x.DbSaleEntity2BaseOrderLineDto()).OrderByDescending(x => x.OrderNumber).ToList(); return(lines); } } catch (Exception ex) { Logger.Error("GetSalesRows", ex, CommonEnums.LoggerObjectTypes.Dashboard); return(new List <BaseOrderLineDTO>()); } }
public ActionResult GetCompChartData(FiltersToken token) { return(GetChartData(true, token)); }
public ActionResult GetMainChartData(FiltersToken token) { return(GetChartData(false, token)); }
private ActionResult GetChartData(bool isCompareChart, FiltersToken filter) { var facts = _dashboardServices.GetChartData(filter, filter.UserId, isCompareChart); return(Json(facts, JsonRequestBehavior.AllowGet)); }