/// <summary> /// Initial chart /// </summary> /// <returns></returns> public ChartModel InitialChart() { var series = new List <DotNet.Highcharts.Options.Series>(); var seriesNames = SummaryGridColumns.Where(c => c.IsDetailedColumn).ToList(); var dataNetInjection = from d in SumGrid select new object[] { d.CategoryStartDate.AddDays(1), d.NetInjection }; series.Add(new Series { Name = this.IsInEnglish ? seriesNames[0].ColumnHeaderEN : seriesNames[0].ColumnHeaderCN, Data = new Data(dataNetInjection.OrderBy(d => d[0]).ToArray()), Type = ChartTypes.Column }); var dataNetWithdrawal = from d in SumGrid select new object[] { d.CategoryStartDate.AddDays(1), d.NetWithdrawal }; series.Add(new Series { Name = this.IsInEnglish ? seriesNames[1].ColumnHeaderEN : seriesNames[1].ColumnHeaderCN, Data = new Data(dataNetWithdrawal.OrderBy(d => d[0]).ToArray()), Type = ChartTypes.Column }); var dataNetInjectionWithdrawal = from d in SumGrid select new object[] { d.CategoryStartDate.AddDays(1), d.NetInjectionWithdrawal }; series.Add(new Series { Name = this.IsInEnglish ? seriesNames[2].ColumnHeaderEN : seriesNames[2].ColumnHeaderCN, Data = new Data(dataNetInjectionWithdrawal.OrderBy(d => d[0]).ToArray()), Type = ChartTypes.Line }); var dataSumInjectionWithdrawal = from d in SumGrid select new object[] { d.CategoryStartDate.AddDays(1), d.SumInjectionWithdrawal }; series.Add(new Series { Name = this.IsInEnglish ? seriesNames[3].ColumnHeaderEN : seriesNames[3].ColumnHeaderCN, Data = new Data(dataSumInjectionWithdrawal.OrderBy(d => d[0]).ToArray()), Type = ChartTypes.Line }); Chart = new ChartModel(Resources.Global.Source) { ChartName = "chart" + this.ID, Series = series.ToArray(), Title = ChartDisplayName, //TODO:global resource //ChartType = ChartTypes.Line, IsXAxisDate = true, YAxisText = this.IsInEnglish ? "Volume" : "面额", //TODO:global resource StartDate = SumGrid.Min(d => d.CategoryStartDate), IsResizeable = true, ReportID = ID, Theme = ChartTheme }; return(Chart); }
/// <summary> /// Initializations this instance. /// </summary> public void InitializationSumGridColumn() { var operations = OperationType.Split(','); //SummaryGridColumns.Add(new Column { ColumnHeaderCN = "种类", ColumnHeaderEN = "Category", ColumnName = "Category", ColumnIndex = 0, IsDetailedColumn = false }); SummaryGridColumns.Add(new Column { ColumnHeaderCN = "开始日期", ColumnHeaderEN = "Start Date", ColumnName = "CategoryStartDate", ColumnIndex = 1, IsDetailedColumn = false, ColumnFormat = "Date" }); SummaryGridColumns.Add(new Column { ColumnHeaderCN = "结束日期", ColumnHeaderEN = "End Date", ColumnName = "CategoryEndDate", ColumnIndex = 2, IsDetailedColumn = false, ColumnFormat = "Date" }); if (OperationType == "ALL" || operations.Contains("RP")) { SummaryGridColumns.Add(new Column { ColumnHeaderCN = "正回购发行量", ColumnHeaderEN = "Repo Injection", ColumnName = "RepoInjection", ColumnIndex = 3, IsDetailedColumn = false, ColumnFormat = "MinusValue" }); SummaryGridColumns.Add(new Column { ColumnHeaderCN = "正回购到期量", ColumnHeaderEN = "Repo Withdrawal", ColumnName = "RepoWithdrawal", ColumnIndex = 4, IsDetailedColumn = false }); } if (OperationType == "ALL" || operations.Contains("RRP")) { SummaryGridColumns.Add(new Column { ColumnHeaderCN = "逆回购发行量", ColumnHeaderEN = "Reverse Repo Injection", ColumnName = "ReverseRepoInjection", ColumnIndex = 5, IsDetailedColumn = false }); SummaryGridColumns.Add(new Column { ColumnHeaderCN = "逆回购到期量", ColumnHeaderEN = "Reverse Repo Withdrawal", ColumnName = "ReverseRepoWithdrawal", ColumnIndex = 6, IsDetailedColumn = false, ColumnFormat = "MinusValue" }); } if (OperationType == "ALL" || operations.Contains("CBB")) { SummaryGridColumns.Add(new Column { ColumnHeaderCN = "央行票据发行量", ColumnHeaderEN = "Central Bank Bill Injection", ColumnName = "CbbInjection", ColumnIndex = 7, IsDetailedColumn = false, ColumnFormat = "MinusValue" }); SummaryGridColumns.Add(new Column { ColumnHeaderCN = "央行票据到期量", ColumnHeaderEN = "Central Bank Bill Withdrawal", ColumnName = "CbbWithdrawal", ColumnIndex = 8, IsDetailedColumn = false }); } if (OperationType == "ALL" || operations.Contains("MLF")) { SummaryGridColumns.Add(new Column { ColumnHeaderCN = "中期借贷便利发行量", ColumnHeaderEN = "Medium-term Lending Facility Injection", ColumnName = "MlfInjection", ColumnIndex = 8, IsDetailedColumn = false, ColumnFormat = "MinusValue" }); SummaryGridColumns.Add(new Column { ColumnHeaderCN = "中期借贷便利到期量", ColumnHeaderEN = "Medium-term Lending Facility Withdrawal", ColumnName = "MlfWithdrawal", ColumnIndex = 9, IsDetailedColumn = false }); } if (OperationType == "ALL" || operations.Contains("FMD")) { SummaryGridColumns.Add(new Column { ColumnHeaderCN = "中央国库现金管理发行量", ColumnHeaderEN = "Central treasury cash management Injection", ColumnName = "FmdInjection", ColumnIndex = 9, IsDetailedColumn = false }); SummaryGridColumns.Add(new Column { ColumnHeaderCN = "中央国库现金管理到期量", ColumnHeaderEN = "Central treasury cash management Withdrawal", ColumnName = "FmdWithdrawal", ColumnIndex = 10, IsDetailedColumn = false, ColumnFormat = "MinusValue" }); } SummaryGridColumns.Add(new Column { ColumnHeaderCN = "投放量(+)", ColumnHeaderEN = "Injection(+)", ColumnName = "NetInjection", ColumnIndex = 11, IsDetailedColumn = true }); SummaryGridColumns.Add(new Column { ColumnHeaderCN = "回笼量(-)", ColumnHeaderEN = "Withdrawal(-)", ColumnName = "NetWithdrawal", ColumnIndex = 12, IsDetailedColumn = true }); SummaryGridColumns.Add(new Column { ColumnHeaderCN = "净投放量(+)/净回笼量(-)", ColumnHeaderEN = "Net Injection(+)/Net Withdrawal(-)", ColumnName = "NetInjectionWithdrawal", ColumnIndex = 13, IsDetailedColumn = true }); SummaryGridColumns.Add(new Column { ColumnHeaderCN = "总投放量(+)/总回笼量(-)", ColumnHeaderEN = "Sum Injection(+)/Sum Withdrawal(-)", ColumnName = "SumInjectionWithdrawal", ColumnIndex = 14, IsDetailedColumn = true }); IsStatisticalReport = true; }