128 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			128 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			C#
		
	
	
	
using System;
 | 
						|
using System.Collections.Generic;
 | 
						|
using System.Data;
 | 
						|
using System.Linq;
 | 
						|
using BLL;
 | 
						|
 | 
						|
namespace FineUIPro.Web.TestRun
 | 
						|
{
 | 
						|
    public partial class DriverSchemeChart : PageBase
 | 
						|
    {
 | 
						|
        #region 加载页面
 | 
						|
        /// <summary>
 | 
						|
        /// 加载页面
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void Page_Load(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            if (!IsPostBack)
 | 
						|
            {
 | 
						|
            }
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region 统计
 | 
						|
        /// <summary>
 | 
						|
        /// 统计分析
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void BtnAnalyse_Click(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            this.AnalyseData();
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 统计方法
 | 
						|
        /// </summary>
 | 
						|
        private void AnalyseData()
 | 
						|
        {
 | 
						|
            var forms = from x in Funs.DB.Solution_TestRunConstructSolution
 | 
						|
                        where x.ProjectId == this.CurrUser.LoginProjectId
 | 
						|
                        select x;
 | 
						|
            if (!string.IsNullOrEmpty(this.txtStartTime.Text.Trim()))
 | 
						|
            {
 | 
						|
                forms = forms.Where(x => x.CompileDate >= Funs.GetNewDateTime(this.txtStartTime.Text.Trim()));
 | 
						|
            }
 | 
						|
            if (!string.IsNullOrEmpty(this.txtEndTime.Text.Trim()))
 | 
						|
            {
 | 
						|
                forms = forms.Where(x => x.CompileDate <= Funs.GetNewDateTime(this.txtEndTime.Text.Trim()));
 | 
						|
            }
 | 
						|
            #region 按状态统计
 | 
						|
            if (this.drpChartType.SelectedValue != "Pie")  //非饼形图
 | 
						|
            {
 | 
						|
                DataTable dtTime = new DataTable();
 | 
						|
                dtTime.Columns.Add("状态", typeof(string));
 | 
						|
                dtTime.Columns.Add("数量", typeof(string));
 | 
						|
                DataRow rowTime1 = dtTime.NewRow();
 | 
						|
                rowTime1["状态"] = "编制";
 | 
						|
                rowTime1["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Compile).Count();
 | 
						|
                dtTime.Rows.Add(rowTime1);
 | 
						|
                DataRow rowTime2 = dtTime.NewRow();
 | 
						|
                rowTime2["状态"] = "审核";
 | 
						|
                rowTime2["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Audit).Count();
 | 
						|
                dtTime.Rows.Add(rowTime2);
 | 
						|
                DataRow rowTime3 = dtTime.NewRow();
 | 
						|
                rowTime3["状态"] = "审批";
 | 
						|
                rowTime3["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Audit2).Count();
 | 
						|
                dtTime.Rows.Add(rowTime3);
 | 
						|
                DataRow rowTime4 = dtTime.NewRow();
 | 
						|
                rowTime4["状态"] = "发布";
 | 
						|
                rowTime4["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Complete).Count();
 | 
						|
                dtTime.Rows.Add(rowTime4);
 | 
						|
                DataRow rowTime5 = dtTime.NewRow();
 | 
						|
                rowTime5["状态"] = "重报";
 | 
						|
                rowTime5["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_ReCompile).Count();
 | 
						|
                dtTime.Rows.Add(rowTime5);
 | 
						|
                this.ChartAccidentTime.CreateChart(BLL.ChartControlService.GetDataSourceChart(dtTime, "试车方案统计", this.drpChartType.SelectedValue, 1300, 550, this.ckbShow.Checked));
 | 
						|
            }
 | 
						|
            else   //饼形图
 | 
						|
            {
 | 
						|
                DataTable dtTime = new DataTable();
 | 
						|
                dtTime.Columns.Add("状态", typeof(string));
 | 
						|
                dtTime.Columns.Add("数量", typeof(string));
 | 
						|
                DataRow rowTime1 = dtTime.NewRow();
 | 
						|
                rowTime1["状态"] = "编制";
 | 
						|
                rowTime1["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Compile).Count();
 | 
						|
                dtTime.Rows.Add(rowTime1);
 | 
						|
                DataRow rowTime2 = dtTime.NewRow();
 | 
						|
                rowTime2["状态"] = "审核";
 | 
						|
                rowTime2["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Audit).Count();
 | 
						|
                dtTime.Rows.Add(rowTime2);
 | 
						|
                DataRow rowTime3 = dtTime.NewRow();
 | 
						|
                rowTime3["状态"] = "审批";
 | 
						|
                rowTime3["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Audit2).Count();
 | 
						|
                dtTime.Rows.Add(rowTime3);
 | 
						|
                DataRow rowTime4 = dtTime.NewRow();
 | 
						|
                rowTime4["状态"] = "发布";
 | 
						|
                rowTime4["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Complete).Count();
 | 
						|
                dtTime.Rows.Add(rowTime4);
 | 
						|
                DataRow rowTime5 = dtTime.NewRow();
 | 
						|
                rowTime5["状态"] = "重报";
 | 
						|
                rowTime5["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_ReCompile).Count();
 | 
						|
                dtTime.Rows.Add(rowTime5);
 | 
						|
                this.ChartAccidentTime.CreateChart(BLL.ChartControlService.GetDataSourceChart(dtTime, "试车方案统计", this.drpChartType.SelectedValue, 1300, 550, this.ckbShow.Checked));
 | 
						|
            }
 | 
						|
            #endregion
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region 图形
 | 
						|
        /// <summary>
 | 
						|
        /// 图形变换 
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void drpChartType_SelectedIndexChanged(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            this.AnalyseData();
 | 
						|
        }
 | 
						|
 | 
						|
        protected void ckbShow_CheckedChanged(object sender, CheckedEventArgs e)
 | 
						|
        {
 | 
						|
            this.AnalyseData();
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
    }
 | 
						|
} |