public StatisticCharWindow(List <RecordChart> records, StatisticModel Model) { this.Model = Model; InitializeComponent(); this.Text = Model.Title; Assembly asm = Assembly.LoadFrom(System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Res.dll")); this.Icon = new Icon(asm.GetManifestResourceStream(@"Oybab.Res.Resources.Images.PC.Statistic.ico")); Model.DataSource = records; ChartReport report = new ChartReport(Model.Parameters["PriceSymbol"].ToString()); webBrowser1.ScrollBarsEnabled = false; webBrowser1.Refresh(); string htmlContent = report.ProcessHTMLContent(Model); webBrowser1.DocumentText = htmlContent; webBrowser1.DocumentCompleted -= WebBrowser1_DocumentCompleted; webBrowser1.DocumentCompleted += WebBrowser1_DocumentCompleted; }
internal void Initial(List <RecordChart> records, StatisticModel statisticModel) { statisticModel.DataSource = records; ChartReport report = new ChartReport(statisticModel.Parameters["PriceSymbol"].ToString()); string htmlContent = report.ProcessHTMLContent(statisticModel); var htmlSource = new HtmlWebViewSource(); htmlSource.Html = htmlContent; _browser.Source = htmlSource; }
private void ReportForm_Load(object sender, EventArgs e) { WindowState = FormWindowState.Maximized; LibraryDataSet dataSet = new LibraryDataSet(); switch (reportType) { case BOOK_ASSESSMENT_REPORT: var bookAdapter = new LibraryDataSetTableAdapters.BookAssessmentListTableAdapter(); bookAdapter.Fill(dataSet.BookAssessmentList); BookAssessmentReport bookReport = new BookAssessmentReport(); bookReport.SetDataSource(dataSet); reportViewer.ReportSource = bookReport; break; case MEMBER_DETAIL_REPORT: var memberAdapter = new LibraryDataSetTableAdapters.MemberDetailListTableAdapter(); memberAdapter.Fill(dataSet.MemberDetailList); MemberDetailReport memberReport = new MemberDetailReport(); memberReport.SetDataSource(dataSet); reportViewer.ReportSource = memberReport; break; case CHART_REPORT: var subjectAdapter = new LibraryDataSetTableAdapters.BooksBySubjectTableAdapter(); subjectAdapter.Fill(dataSet.BooksBySubject); ChartReport chartReport = new ChartReport(); chartReport.SetDataSource(dataSet); reportViewer.ReportSource = chartReport; break; default: break; } }
public async Task <ChartReport> GetChartReport(Report report, int userID, bool includeData = false) { var rp = new ChartReport { ReportID = report.ID, ReportType = report.ReportType.ReportTypeCode, Title = report.Title, Name = report.Name, Series = string.IsNullOrWhiteSpace(report.SeriesColumns) ? null : report.SeriesColumns.Split(','), Description = report.Description, Priority = report.Priority, Width = report.Width }; if (includeData) { if (!_innerFilterDictionaryMap.Keys.Any()) { var user = await _userService.GetAsync(userID); var userAgent = (await _userAgentService.FindByAsync(ur => ur.UserID == userID && ur.IsActive)).FirstOrDefault(); PopulateInnerFiltersDictionaryMap(user, userAgent?.AgentID); } var filters = report.FilterColumns.Select(s => s.ToObject <Filter> ()).ToList(); //Populate default inner filter values foreach (var innerFilter in filters.Where(f => f.IsInnerFilter)) { var defaultFilterValue = _innerFilterDictionaryMap[innerFilter.FieldName]; innerFilter.Value = defaultFilterValue; } var reportData = _dataProvider.GetData(report.Query, filters); rp.Data = reportData; } return(rp); }
/// <summary> /// 保存一个chart报表 /// </summary> /// <param name="childrReport"></param> /// <param name="reportId"></param> /// <param name="code"></param> public void SaveChartReport(ChildReportModel childrReport, long reportId, string code) { if (childrReport.ChildReportJson != null && childrReport.ChildReportJson.Length > 0) { var chartReport = JSON.EncodeToEntity <ChartReportModel>(childrReport.ChildReportJson); if (chartReport != null) { #region 基础信息修改,得到chartReportId ChartReport chart = AutoMapper.Mapper.Map <ChartReport>(chartReport); chart.ReportId = reportId; chart.ApplicationType = childrReport.ApplicationType; chart.IsOpen = childrReport.IsOpen; chart.Id = childrReport.ChildReportId; chart.MakeWay = 1; //自定义 var chartReportId = _chartReportRepository.InsertOrUpdateAndGetId(chart); //修改chart报表并获得ID #endregion SaveChartInEventList(chartReport, reportId, chartReportId, code); //保存内置事件 SaveRpFilterList(chartReport, chartReportId); //保存筛选条件信息 } } }
public DataTable CarregaRelatorio(int idEmpresa, string statusFiltro) { DataTable dt = new DataTable(); //Instância de ChamadosBLL ChamadosBLL chamadosBLL = new ChamadosBLL(); //Chama método BLL GetNumeroChamados dt = chamadosBLL.GetNumeroChamados(idEmpresa, statusFiltro); //Se o objeto dt não estiver vazio if (dt.Rows.Count > 0) { ChartReport.DataSource = dt; ChartReport.ChartAreas["ChartAreaReport"].AxisY.Title = "Número de Chamados"; ChartReport.ChartAreas["ChartAreaReport"].AxisX.Title = "Categoria do Chamado"; ChartReport.ChartAreas["ChartAreaReport"].AxisY.TitleFont = new System.Drawing.Font("Verdana, Geneva, sans-serif", 9.50F, System.Drawing.FontStyle.Bold); ChartReport.ChartAreas["ChartAreaReport"].AxisX.TitleFont = new System.Drawing.Font("Verdana, Geneva, sans-serif", 9.50F, System.Drawing.FontStyle.Bold); ChartReport.ChartAreas["ChartAreaReport"].AxisY.LabelStyle.Font = new System.Drawing.Font("Verdana, Geneva, sans-serif;", 9.05F, System.Drawing.FontStyle.Regular); ChartReport.ChartAreas["ChartAreaReport"].AxisX.LabelStyle.Font = new System.Drawing.Font("Verdana, Geneva, sans-serif;", 9.05F, System.Drawing.FontStyle.Regular); ChartReport.Series["SeriesReport"].YValueMembers = "NumeroOcorrencias"; ChartReport.Series["SeriesReport"].XValueMember = "CategoriaDoChamado"; ChartReport.DataBind(); } else { //Exibe mensagem LblMsgmChamados.Text = "Existem" + " " + Convert.ToString(dt.Rows.Count.ToString()) + " " + "chamados abertos no momento"; LblMsgmChamados.Visible = true; } return(dt); }
public ApiMessage GetResourceAndAgentReports() { this.IniRequest(); ApiMessage message = new ApiMessage(); OrderManagement orderMgr = new OrderManagement(User.Identity.Name); DateTime sDate = DateTime.MinValue; DateTime eDate = DateTime.MinValue; if (!string.IsNullOrEmpty(request["startTime"])) { DateTime.TryParse(request["startTime"], out sDate); } if (!string.IsNullOrEmpty(request["endTime"])) { DateTime.TryParse(request["endTime"], out eDate); } long sintDate = sDate != DateTime.MinValue ? DateTimeUtil.ConvertDateTimeToInt(sDate) : 0; long eintDate = eDate != DateTime.MinValue ? DateTimeUtil.ConvertDateTimeToInt(eDate) : 0; ChartReport report = orderMgr.SearchResourceAndAgentReport(sintDate, eintDate); message.Status = "OK"; message.Item = report; return(message); }
public ChartReport SearchResourceAndAgentReport(long startTime, long endTime) { ChartReport report = new ChartReport(); int total = 0; List <BOrder> orders = FindOrders(0, 0, 0, 0, 0, null, null, null, startTime, endTime, out total); List <ReportTemplate> resourceReport = new List <ReportTemplate>(); List <ReportTemplate> agentReport = new List <ReportTemplate>(); var rp = from order in orders group order by order.ResourceId into gOrders orderby gOrders.Key select new { ResourceId = gOrders.Key, ResourceName = gOrders.FirstOrDefault <BOrder>().ReseouceName, SalesAmount = gOrders.Sum(o => o.PurchasePrice), CostAmount = gOrders.Sum(o => o.PlatformCostPrice), Revenue = gOrders.Sum(o => o.Revenue) }; foreach (var rpt in rp) { ReportTemplate temp = new ReportTemplate() { CostAmount = rpt.CostAmount, Id = rpt.ResourceId, Name = rpt.ResourceName, Revenue = rpt.Revenue, SalesAmount = rpt.SalesAmount }; resourceReport.Add(temp); } report.ResourceReport = resourceReport; var rp2 = from order in orders where order.AgentId > 0 && order.Operator == 0 group order by order.AgentId into gOrders orderby gOrders.Key select new { AgentId = gOrders.Key, AgentName = gOrders.FirstOrDefault <BOrder>().AgentName, SalesAmount = gOrders.Sum(o => o.PurchasePrice), CostAmount = gOrders.Sum(o => o.PlatformCostPrice), Revenue = gOrders.Sum(o => o.Revenue) }; foreach (var rpt in rp2) { ReportTemplate temp = new ReportTemplate() { CostAmount = rpt.CostAmount, Id = rpt.AgentId, Name = rpt.AgentName, Revenue = rpt.Revenue, SalesAmount = rpt.SalesAmount }; agentReport.Add(temp); } var rp3 = from order in orders where order.AgentId == 0 group order by order.ChargeType into gOrders orderby gOrders.Key select new { Type = gOrders.Key, Name = gOrders.FirstOrDefault <BOrder>().Operator == 0?"前台直冲":"后台直冲", SalesAmount = gOrders.Sum(o => o.PurchasePrice), CostAmount = gOrders.Sum(o => o.PlatformCostPrice), Revenue = gOrders.Sum(o => o.Revenue) }; foreach (var rpt in rp3) { ReportTemplate temp = new ReportTemplate() { CostAmount = rpt.CostAmount, Id = rpt.Type, Name = rpt.Name, Revenue = rpt.Revenue, SalesAmount = rpt.SalesAmount }; agentReport.Add(temp); } report.UserReport = agentReport; return(report); }