private void RefreshData(List <BusinessVisitRank> analysis) { if (analysis == null) { return; } RankSeries = new ObservableCollection <BusinessVisitRank>(analysis); SubTotal = analysis.Select(s => s.VisitedCount).Sum(); Total = analysis.Select(s => s.CustomerCount).Sum(); var ranks = analysis.ToList(); if (ranks.Count > 10) { ranks = ranks.Take(10).ToList(); } var data = new ChartViewConfig() { BackgroundColor = Color.White, ChartConfig = new ChartConfig { type = Wesley.ChartJS.ChartTypes.Bar, data = ChartDataProvider.GetCustomerVisitRank(ranks) } }; ChartConfig = data; }
/// <summary> /// 客户拜访排行 /// </summary> /// <param name="app"></param> /// <param name="title"></param> /// <returns></returns> private async Task <ChartViewConfig> CustomerVisitRankPage_Chart(Module app, string title) { ChartViewConfig chartData = null; try { var result = await _terminalService.GetBusinessVisitRankingAsync(0, DateTime.Now.AddDays(-15), DateTime.Now, this.ForceRefresh, new System.Threading.CancellationToken()); if (result != null && result.Any()) { var series = result.ToList(); if (series.Count > 50) { series = result.Take(50).ToList(); } chartData = new ChartViewConfig() { BackgroundColor = Color.White, ChartConfig = new ChartConfig { type = Wesley.ChartJS.ChartTypes.Bar, data = ChartDataProvider.GetCustomerVisitRank(series) } }; } return(chartData); } catch (Exception ex) { Crashes.TrackError(ex); return(chartData); } }