Ejemplo n.º 1
0
        public ActionResult HallIndex(DateTime?beginTime, DateTime?endTime, bool export = false)
        {
            // 初始化日期
            DateTimeInit(ref beginTime, ref endTime);

            // 获取数据
            var result = STAT_WARN_ANALYSIS_DAL.GetStatistics_WarnAnalysisChart(UserState.UserID, beginTime, endTime);

            const string titleName = "预警分析";
            var          mainTielt = GetOrgName(null, OrgHighLevel);

            ViewBag.MainTitle = GetTitleName(mainTielt, titleName, beginTime.GetValueOrDefault(), endTime.GetValueOrDefault());
            var subtitle = GetTitleName(mainTielt, "", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);

            //导出
            if (export)
            {
                var exceltitle = GetTitleName(mainTielt, titleName, beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);

                var index = 0;
                var data  = result == null
                    ? new DataTable()
                    : result.Select(x => new
                {
                    序号       = ++index,
                    务厅       = x.HALL_NAM,
                    预警级别     = x.L_Name,
                    等候超时     = x.Count_T1,
                    等候超时率    = x.Count_T2,
                    窗口饱和度    = x.Count_T3,
                    大厅饱和度    = x.Count_T4,
                    超时办结率    = x.Count_T5,
                    超时业务笔数   = x.Count_T6,
                    弃号率      = x.Count_T7,
                    差评笔数预警   = x.Count_T8,
                    连续工作时长超界 = x.Count_T9,
                }).ToList().ToDataTable();
                return(AsposeExcelHelper.OutFileToRespone(data, "预警分析报表-服务厅", exceltitle));
            }


            var chartData = result == null
                ? new DataTable()
                : result.Where(r => r.L_Code == "H").Select(x => new
            {
                务厅     = x.HALL_NAM,
                等候超时率  = x.Count_T2,
                超时办结率  = x.Count_T5,
                差评笔数预警 = x.Count_T8,
            }).ToList().ToDataTable();

            ViewBag.BeginTime = !beginTime.HasValue ? DateTime.Now.ToString("yyyy-MM-dd") : beginTime.Value.ToString("yyyy-MM-dd");
            ViewBag.EndTime   = !endTime.HasValue ? DateTime.Now.ToString("yyyy-MM-dd") : endTime.Value.ToString("yyyy-MM-dd");

            // 输出图表
            ViewBag.ChartColumn3DXML = CreateMSColumn3DChart(titleName, chartData, 420, subtitle);
            ViewBag.ChartSplineXML   = CreateMSSplineChart(titleName, chartData, 420, null, null, subtitle);

            return(View(result));
        }
Ejemplo n.º 2
0
        public ActionResult TaxpayerAction_Person(
            DateTime?beginTime,
            DateTime?endTime,
            string orgId,
            bool export = false)
        {
            // 初始化日期
            base.DateTimeInit(ref beginTime, ref endTime);
            // 获取数据
            var bll    = new Statistics_DAL();
            var result = bll.GetStatistics_TaxpayerActionChat_Person(beginTime, endTime, orgId);

            // 控制标题
            var MainTitle = base.GetOrgName(null, 3);
            var nodeTitle = string.Empty;

            MainTitle        += "纳税人评价分析";
            nodeTitle        += "(" + beginTime.Value.ToString("yyyy年MM月dd日");
            nodeTitle        += " - " + endTime.Value.ToString("yyyy年MM月dd日") + "))";
            ViewBag.MainTitle = MainTitle;
            ViewBag.NodeTitle = nodeTitle;

            if (export)
            {
                var index = 0;
                var data  = result.Select(x => new
                {
                    序号      = ++index,
                    工号      = x.PersonNo,
                    姓名      = x.PersonName,
                    业务大类    = x.DLS_SERIALNAME,
                    城业务量    = x.LOCAL_CNT,
                    二次办税业务量 = x.SECOND_SVR_CNT
                }).ToList().ToDataTable();
                return(AsposeExcelHelper.OutFileToRespone(data, MainTitle + "报表"));
            }

            SetChart_Person(result.GroupBy(x => x.PersonNo), MainTitle, nodeTitle);

            // 所有事项大类
            var itemTypeList = SYS_DLSERIAL_Dao.FindList();

            ViewData["itemTypeList"] = itemTypeList;


            return(View(result));
        }
Ejemplo n.º 3
0
        public ActionResult Index(DateTime?beginTime, DateTime?endTime, int pageIndex = 1, int pageSize = 20, bool export = false)
        {
            base.DateTimeInit(ref beginTime, ref endTime);
            // 初始化日期

            var orgall = new SYS_USER_DAL().GetUserORG(UserState.UserID);

            ViewBag.UserORG = new SelectList(orgall.Where(obj => obj.ORG_LEVEL == 4)
                                             , "ORG_ID", "ORG_NAM", "");
            var orgs = orgall.Select(obj => obj.ORG_ID);


            var mainTielt = GetOrgName(null, null);

            ViewBag.MainTitle = GetTitleName(mainTielt, "排队业务分析", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault());
            var subtitle   = GetTitleName(mainTielt, "", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);
            var exceltitle = GetTitleName(mainTielt, "排队业务分析", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);


            var halllist = base.UserHall.Select(x => x.HALL_NO).ToArray();
            var data     = new STAT_STAFF_QUEUE_BUSI_D_DAL().GetStatsInfo(pageIndex, int.MaxValue, halllist, beginTime, endTime);


            if (export)//导出
            {
                var index = 0;
                var temp  = data.Select(x => new
                {
                    序号     = ++index,
                    业务编码   = x.QUEUE_BUSI_CD,
                    业务名称   = x.Q_SERIALNAME,
                    呼叫量    = x.CALL_CNT,
                    呼叫率    = CommonHelper.DivisionOfPercent(x.CALL_CNT, data.Sum(obj => obj.CALL_CNT)),
                    超时等待量  = x.OVERTIME_WAIT_CNT,
                    超时等待率  = CommonHelper.DivisionOfTimeString(x.OVERTIME_WAIT_CNT, data.Sum(obj => obj.OVERTIME_WAIT_CNT)),
                    办理量    = x.HANDLE_CNT,
                    办理率    = CommonHelper.DivisionOfPercent(x.HANDLE_CNT, data.Sum(obj => obj.HANDLE_CNT)),
                    弃号量    = x.ABANDON_CNT,
                    弃号率    = CommonHelper.DivisionOfPercent(x.ABANDON_CNT, data.Sum(obj => obj.ABANDON_CNT)),
                    平均办理时间 = CommonHelper.DivisionOfTimeString(x.HANDLE_DUR, x.HANDLE_CNT),
                    平均等待时间 = CommonHelper.DivisionOfTimeString(x.WAIT_DUR, x.TOT_TICKET_CNT),
                    最长等待时间 = x.MAX_WAIT_DUR,
                    最长办理时间 = x.MAX_HANDLE_DUR,
                    超时办理量  = x.OVERTIME_HANDLE_CNT,
                    超时办理率  = CommonHelper.DivisionOfPercent(x.OVERTIME_HANDLE_CNT, x.TOT_TICKET_CNT),
                    人流量    = x.TOT_TICKET_CNT
                }).ToList().ToDataTable();
                return(AsposeExcelHelper.OutFileToRespone(temp, exceltitle));
            }
            else
            {
                DataSet   ds = new DataSet();
                DataTable dt = new DataTable();
                ds.Tables.Add(dt);
                dt.Columns.Add("Q_SERIALNAME", typeof(string));
                dt.Columns.Add("呼叫量", typeof(int));
                dt.Columns.Add("办理量", typeof(int));
                dt.Columns.Add("弃号量", typeof(int));
                foreach (var item in data)
                {
                    DataRow r = dt.NewRow();
                    r["Q_SERIALNAME"] = item.Q_SERIALNAME;
                    r["呼叫量"]          = item.CALL_CNT;
                    r["办理量"]          = item.HANDLE_CNT;
                    r["弃号量"]          = item.ABANDON_CNT;
                    dt.Rows.Add(r);
                }

                ViewBag.ChartColumn3DXML = CreateMSColumn3DChart("排队业务分析", ds.Tables[0], 430, subtitle);

                ViewBag.ChartSplineXML = CreateMSSplineChart("排队业务报分析", ds, 430, null, null, subtitle);
                return(View(data));
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 导出数据
        /// </summary>
        /// <param name="title"></param>
        /// <param name="fileName"></param>
        /// <param name="beginTime"></param>
        /// <param name="endTime"></param>
        /// <returns></returns>
        public ActionResult ExportData(string title,
                                       string Listname,
                                       DateTime beginTime,
                                       DateTime endTime,
                                       string orgId)
        {
            var typeList     = CHK_QUALITY_CON_Dao.FindList();
            var itemTypeList = SYS_DLSERIAL_Dao.FindList();

            var lineTable = new DataTable();

            lineTable.Columns.Add("序号", typeof(string));
            lineTable.Columns.Add(Listname, typeof(string));
            lineTable.Columns.Add("事项大类", typeof(string));

            foreach (var item in typeList)
            {
                lineTable.Columns.Add(item.QUALITY_NAM, typeof(int));
            }


            if (Listname == "服务厅")
            {
                var data = new Statistics_DAL().GetStatistics_ServiceSlipAnalysis(beginTime, endTime, UserState.UserID);
                var dics = data.GroupBy(m => m.HALL_NAM);

                var i = 1;
                foreach (var dic in dics)
                {
                    var items      = dic.ToList();
                    var statistics = items.FirstOrDefault();

                    for (var j = 1; j < itemTypeList.Count(); j++)
                    {
                        var r = lineTable.NewRow();
                        r["序号"]     = i;
                        r[Listname] = statistics.HALL_NAM;
                        r["事项大类"]   = itemTypeList[j].DLS_SERIALNAME;
                        foreach (var item in typeList)
                        {
                            var def =
                                items.FirstOrDefault(
                                    m =>
                                    m.QUALITY_CD == item.QUALITY_CD &&
                                    m.SSDLSERIALID == itemTypeList[j].DLS_SERIALID);
                            r[item.QUALITY_NAM] = def == null ? 0 : def.AMOUNT;
                        }
                        lineTable.Rows.Add(r);

                        i++;
                    }
                }
            }
            else
            {
                var listStatistics = new Statistics_DAL().GetStatistics_ServiceSlipAnalysisList(beginTime, endTime,
                                                                                                UserState.UserID, orgId, null);
                var dics = listStatistics.GroupBy(m => m.STAFF_NAM);
                var i    = 1;
                foreach (var dic in dics)
                {
                    var items      = dic.ToList();
                    var statistics = items.FirstOrDefault();

                    for (var j = 1; j < itemTypeList.Count(); j++)
                    {
                        var r = lineTable.NewRow();
                        r["序号"]     = i;
                        r[Listname] = statistics.STAFF_NAM;
                        r["事项大类"]   = itemTypeList[j].DLS_SERIALNAME;
                        foreach (var item in typeList)
                        {
                            var def =
                                items.FirstOrDefault(
                                    m =>
                                    m.QUALITY_CD == item.QUALITY_CD &&
                                    m.DLS_SERIALID == itemTypeList[j].DLS_SERIALID);
                            r[item.QUALITY_NAM] = def == null ? 0 : def.AMOUNT;
                        }
                        lineTable.Rows.Add(r);
                        i++;
                    }
                }
            }

            return(AsposeExcelHelper.OutFileToRespone(lineTable, title));
        }
Ejemplo n.º 5
0
        public ActionResult TaxpayerEval(
            DateTime?beginTime,
            DateTime?endTime,
            bool export = false)
        {
            // 判断当前用户组织结构
            var power = new SYS_HALL_DAL().GetList(UserState.UserID, "4");

            if (power.Count == 1)
            {
                var hallNo = power.FirstOrDefault().HALL_NO;

                return(Redirect(Url.Action("TaxpayerEval_Person", "Statistics", new
                {
                    @beginTime = beginTime,
                    @endTime = endTime,
                    @orgId = hallNo
                })));
            }

            // 初始化日期
            base.DateTimeInit(ref beginTime, ref endTime);

            // 获取数据
            var bll    = new Statistics_DAL();
            var result = bll.GetStatistics_TaxpayerEvalChart(beginTime, endTime, UserState.UserID);


            // 控制标题
            const string titleName = "纳税人评价分析";
            var          mainTielt = base.GetOrgName(null, 3);

            ViewBag.MainTitle = GetTitleName(mainTielt, titleName, beginTime.GetValueOrDefault(),
                                             endTime.GetValueOrDefault());
            var subtitle   = GetTitleName(mainTielt, "", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);
            var exceltitle = GetTitleName(mainTielt, titleName, beginTime.GetValueOrDefault(),
                                          endTime.GetValueOrDefault(), false);

            if (export)
            {
                var index = 0;
                var data  = result.Select(x => new
                {
                    序号    = ++index,
                    务厅编码  = x.HALL_NO,
                    务厅名称  = x.ORG_NAM,
                    很满意   = x.VERY_SATISFY_CNT,
                    很满意率  = x.VERY_SATISFY_CNT_BFB + "%",
                    满意    = x.SATISFY_CNT,
                    满意率   = x.SATISFY_CNT_BFB + "%",
                    基本满意  = x.COMMON_CNT,
                    基本满意率 = x.COMMON_CNT_BFB + "%",
                    满意    = x.UNSATISFY_CNT,
                    满意率   = x.UNSATISFY_CNT_BFB + "%",
                    未评价   = x.NON_EVAL_CNT,
                    未评价率  = x.NON_EVAL_CNT_BFB + "%",
                    满意度   = x.ManYiDu_BFB + "%"
                }).ToList().ToDataTable();
                return(AsposeExcelHelper.OutFileToRespone(data, "纳税人评价分析报表-服务厅", exceltitle));
            }

            var chartData = result.Select(x => new
            {
                务厅名称 = x.ORG_NAM,
                很满意  = x.VERY_SATISFY_CNT,
                满意   = x.SATISFY_CNT,
                基本满意 = x.COMMON_CNT,
                满意   = x.UNSATISFY_CNT,
                未评价  = x.NON_EVAL_CNT,
            }).ToList().ToDataTable();


            // 输出图表
            ViewBag.ChartColumn3DXML = CreateMSColumn3DChart(titleName, chartData, 430, subtitle);

            ViewBag.ChartSplineXML = CreateMSSplineChart(titleName, chartData, 430, null, null, subtitle);

            return(View(result));
        }
Ejemplo n.º 6
0
        public ActionResult TaxpayerEval_Person(
            DateTime?beginTime,
            DateTime?endTime,
            string orgId,
            bool export = false)
        {
            // 初始化日期
            base.DateTimeInit(ref beginTime, ref endTime);
            // 获取数据
            var bll    = new Statistics_DAL();
            var result = bll.GetStatistics_TaxpayerEvalChart_Person(beginTime, endTime, orgId);


            // 控制标题
            const string titleName = "纳税人评价分析";
            var          mainTielt = GetOrgName(orgId, null);

            ViewBag.MainTitle = GetTitleName(mainTielt, titleName, beginTime.GetValueOrDefault(),
                                             endTime.GetValueOrDefault());
            var subtitle   = GetTitleName(mainTielt, "", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);
            var exceltitle = GetTitleName(mainTielt, titleName, beginTime.GetValueOrDefault(),
                                          endTime.GetValueOrDefault(), false);

            if (export)
            {
                var index = 0;
                var data  = result.Select(x => new
                {
                    序号    = ++index,
                    工号    = x.PersonNo,
                    姓名    = x.PersonName,
                    很满意   = x.VERY_SATISFY_CNT,
                    很满意率  = x.VERY_SATISFY_CNT_BFB + "%",
                    满意    = x.SATISFY_CNT,
                    满意率   = x.SATISFY_CNT_BFB + "%",
                    基本满意  = x.COMMON_CNT,
                    基本满意率 = x.COMMON_CNT_BFB + "%",
                    满意    = x.UNSATISFY_CNT,
                    满意率   = x.UNSATISFY_CNT_BFB + "%",
                    未评价   = x.NON_EVAL_CNT,
                    未评价率  = x.NON_EVAL_CNT_BFB + "%",
                    满意度   = x.ManYiDu_BFB + "%"
                }).ToList().ToDataTable();
                return(AsposeExcelHelper.OutFileToRespone(data, "纳税人评价分析报表-员工", exceltitle));
            }

            var chartData = result.Select(x => new
            {
                姓名   = x.PersonName,
                很满意  = x.VERY_SATISFY_CNT,
                满意   = x.SATISFY_CNT,
                基本满意 = x.COMMON_CNT,
                满意   = x.UNSATISFY_CNT,
                未评价  = x.NON_EVAL_CNT,
            }).ToList().ToDataTable();

            // 输出图表
            ViewBag.ChartColumn3DXML = CreateMSColumn3DChart(titleName, chartData, 430, subtitle);


            ViewBag.ChartSplineXML = CreateMSSplineChart(titleName, chartData, 420, null, null, subtitle);


            return(View(result));
        }
Ejemplo n.º 7
0
        public ActionResult Index(DateTime?beginTime, DateTime?endTime, string orgid, int pageIndex = 1, int pageSize = 20, bool export = false)
        {
            base.DateTimeInit(ref beginTime, ref endTime);
            // 初始化日期

            var orgall = new SYS_USER_DAL().GetUserORG(UserState.UserID);

            ViewBag.UserORG = new SelectList(orgall.Where(obj => obj.ORG_LEVEL == 4)
                                             , "ORG_ID", "ORG_NAM", orgid);
            var orgs = orgall.Select(obj => obj.ORG_ID);



            //var mainTielt = GetOrgName(null, null);
            //ViewBag.MainTitle = GetTitleName(mainTielt, "业务大类分析", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault());
            //var title = GetTitleName(mainTielt,"业务大类分析", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);

            var mainTielt = GetOrgName(null, null);

            ViewBag.MainTitle = GetTitleName(mainTielt, "业务大类分析", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault());
            var subtitle   = GetTitleName(mainTielt, "", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);
            var exceltitle = GetTitleName(mainTielt, "业务大类分析", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);


            var halllist = base.UserHall.Select(x => x.HALL_NO).ToArray();
            var data     = new STAT_STAFF_LARGE_BUSI_D_DAL().GetStatsInfo(halllist, beginTime, endTime);

            if (export)//导出
            {
                var index = 0;
                var temp  = data.Select(x => new
                {
                    序号      = ++index,
                    业务大类    = x.DLS_SERIALNAME,
                    业务笔数    = x.BUSI_CNT,
                    业务折合量   = x.CONVERT_BUSI_CNT,
                    平均版办理时间 = (((int)(x.BUSI_CNT == 0 ? 0 : (x.HANDLE_DUR / x.BUSI_CNT))).ToTimeString()) + "%",
                    超时办理时间  = x.OVERTIME_HANDLE_CNT,
                    超时率     = ((x.BUSI_CNT == 0 ? 0 : (x.OVERTIME_HANDLE_CNT / x.BUSI_CNT)).ToString("P")) + "%",
                    城业务笔数   = x.LOCAL_CNT,
                    城办理率    = ((x.LOCAL_CNT * 100.0 / x.BUSI_CNT)).ToString("f2") + "%",
                }).ToList().ToDataTable();
                return(AsposeExcelHelper.OutFileToRespone(temp, exceltitle));
            }
            else
            {
                DataSet   ds = new DataSet();
                DataTable dt = new DataTable();
                ds.Tables.Add(dt);
                dt.Columns.Add("NAME", typeof(string));
                dt.Columns.Add("业务笔数", typeof(int));
                dt.Columns.Add("业务折合量", typeof(int));
                dt.Columns.Add("总办理时长", typeof(int));
                dt.Columns.Add("超时办理量", typeof(int));
                dt.Columns.Add("同城业务量", typeof(int));

                foreach (var item in data)
                {
                    var r = dt.NewRow();
                    r["NAME"]  = item.DLS_SERIALNAME;
                    r["业务笔数"]  = item.BUSI_CNT;
                    r["业务折合量"] = item.CONVERT_BUSI_CNT;
                    r["总办理时长"] = item.HANDLE_DUR;
                    r["超时办理量"] = item.OVERTIME_HANDLE_CNT;
                    r["同城业务量"] = item.LOCAL_CNT;
                    dt.Rows.Add(r);
                }

                ViewBag.ChartColumn3DXML = CreateMSColumn3DChart("业务大类分析", ds.Tables[0], 430, subtitle);

                ViewBag.ChartSplineXML = CreateMSSplineChart("业务大类分析", ds, 430, null, null, subtitle);
                return(View(data));
            }
        }
Ejemplo n.º 8
0
        public ActionResult HallIndex(DateTime?beginTime, DateTime?endTime, bool export = false)
        {
            // 初始化日期
            DateTimeInit(ref beginTime, ref endTime);

            // 获取数据
            var result = STAT_COMPLAINT_REPORT_DAL.GetStatistics_ComplaintReportChart(UserState.UserID, beginTime, endTime);

            const string titleName = "投诉举报分析";
            var          mainTielt = GetOrgName(null, OrgHighLevel);

            ViewBag.MainTitle = GetTitleName(mainTielt, titleName, beginTime.GetValueOrDefault(), endTime.GetValueOrDefault());
            var subtitle   = GetTitleName(mainTielt, "", beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);
            var exceltitle = GetTitleName(mainTielt, titleName, beginTime.GetValueOrDefault(), endTime.GetValueOrDefault(), false);

            var dataTable = new DataTable();

            dataTable.Columns.Add("序号");
            dataTable.Columns.Add("服务厅编号");
            dataTable.Columns.Add("服务厅");
            dataTable.Columns.Add("处理情况");
            dataTable.Columns.Add("处理情况类型");
            dataTable.Columns.Add("投诉类型编号");

            //获取投诉类型集合
            var complaints = new Dictionary <int, string>();

            if (result != null && result.Any())
            {
                foreach (var re in result.Select(r => new { COMPLAIN_TYP_ID = r.COMPLAIN_TYP_ID, COMPLAIN_NAM = r.COMPLAIN_NAM }).Distinct())
                {
                    if (!complaints.ContainsKey(re.COMPLAIN_TYP_ID))
                    {
                        complaints.Add(re.COMPLAIN_TYP_ID, re.COMPLAIN_NAM);
                        dataTable.Columns.Add(re.COMPLAIN_NAM);
                    }
                }
            }

            ViewBag.Complaints = complaints;

            if (result != null && result.Any())
            {
                var index          = 0;
                var complaintCount = complaints.Count;
                for (var mIndex = 0; mIndex < result.Count; mIndex++)
                {
                    var itemHall   = result[mIndex];
                    var levelCodes = new[] { "N", "R", "U", "H" };
                    foreach (var levelCode in levelCodes)
                    {
                        var itemLevels =
                            result.Where(r => r.HALL_NO == itemHall.HALL_NO && r.L_Code == levelCode).ToList();
                        var itemLevel = itemLevels.First();

                        var dr = dataTable.NewRow();
                        dr["序号"]     = (++index);
                        dr["服务厅"]    = itemHall.HALL_NAM;
                        dr["服务厅编号"]  = itemHall.HALL_NO;
                        dr["处理情况"]   = itemLevel.L_Name;
                        dr["处理情况类型"] = itemLevel.L_Value;
                        foreach (var complaint in complaints)
                        {
                            var itemComplaint = itemLevels.First(r => r.COMPLAIN_TYP_ID == complaint.Key);
                            dr["投诉类型编号"] = itemComplaint.COMPLAIN_TYP_ID;
                            dr[itemComplaint.COMPLAIN_NAM] = itemComplaint.Count_Value;
                        }
                        dataTable.Rows.Add(dr);
                    }
                    mIndex += (complaintCount * 4 - 1);
                }
            }

            //导出
            if (export)
            {
                var exportData = dataTable.Copy();
                exportData.Columns.Remove("服务厅编号");
                exportData.Columns.Remove("处理情况类型");
                exportData.Columns.Remove("投诉类型编号");
                return(AsposeExcelHelper.OutFileToRespone(exportData, "投诉举报分析报表-服务厅", exceltitle));
            }


            var dataList  = dataTable.Rows.Cast <DataRow>().Where(r => r["处理情况"].ToString() == "合计").ToList();
            var chartData = dataTable.Clone();

            foreach (var dataRow in dataList)
            {
                chartData.Rows.Add(dataRow.ItemArray);
            }

            //不需要显示的列名
            var noShowColumns = new[] { "序号", "服务厅编号", "处理情况", "处理情况类型", "投诉类型编号" };

            foreach (var noShowColumn in noShowColumns)
            {
                chartData.Columns.Remove(noShowColumn);
            }

            // 输出图表
            ViewBag.ChartColumn3DXML = CreateMSColumn3DChart(titleName, chartData, 420, subtitle);
            ViewBag.ChartSplineXML   = CreateMSSplineChart(titleName, chartData, 420, null, null, subtitle);

            return(View(dataTable));
        }