Example #1
0
        public void SearchData(BaseExportFilter baseFilter, ResponseEntity responseEntity)
        {
            if (baseFilter == null)
            {
                ServiceUtility.SetResponseStatus(responseEntity, EnumResponseState.RequestCommandError);
                return;
            }

            baseFilter.ExportFileType = (int)EnumExportFileType.Xlsx;

            var tbReport = Singleton <GuarBusinessSearchDAL> .Instance.SearchDataToDataTable(baseFilter);

            if (tbReport == null || tbReport.Rows.Count == 0)
            {
                ServiceUtility.SetResponseStatus(responseEntity, EnumResponseState.NoResult);
                m_Logger.Info("未查询到数据!。");
            }
            else
            {
                //转义枚举
                foreach (DataRow item in tbReport.Rows)
                {
                    item["RegionKey"] = Singleton <RedisEnumOperatorBLL> .Instance.
                                        GetRedisData(RedisEnumOperatorBLL.HashId_Region_9, item["RegionKey"].ToString()).Name;

                    item["BranchKey"] = Singleton <RedisEnumOperatorBLL> .Instance.
                                        GetRedisData(RedisEnumOperatorBLL.HashId_Store_12, item["BranchKey"].ToString()).Name;

                    item["ProductKey"] = Singleton <RedisEnumOperatorBLL> .Instance.
                                         GetRedisData(RedisEnumOperatorBLL.HashId_LoanKind_6, item["ProductKey"].ToString()).Name;
                }

                List <DataColumn> removeColumns = new List <DataColumn>();

                //表头转换为中文,可以写在配置中,暂时在Code中指定
                foreach (DataColumn col in tbReport.Columns)
                {
                    if (dicEng2ChnColumn.ContainsKey(col.ColumnName))
                    {
                        col.ColumnName = dicEng2ChnColumn[col.ColumnName];
                    }
                    else
                    {
                        removeColumns.Add(col);
                    }
                }
                //删除不需要显示的列
                removeColumns.ForEach(e => tbReport.Columns.Remove(e.ColumnName));
                //导出
                SetExportFile(baseFilter, tbReport, responseEntity);
            }
        }
Example #2
0
        /// <summary>
        /// 设置输出文件
        /// </summary>
        /// <param name="filter"></param>
        /// <param name="dt"></param>
        /// <param name="responseEntity"></param>
        protected void SetExportFile(BaseExportFilter filter, DataTable dt
                                     , ResponseEntity responseEntity, string sheetName = "Sheet1")
        {
            ResponseFileResult responseResult = new ResponseFileResult();

            responseResult.Result
                = FileExportUtility.GenerateFileStream(dt, (EnumExportFileType)filter.ExportFileType, sheetName);

            dt = null;

            ServiceUtility.SetResponseStatus(responseEntity, EnumResponseState.Success);
            responseEntity.Results = responseResult;
        }
Example #3
0
        /// <summary>
        /// 设置输出文件
        /// </summary>
        /// <param name="filter"></param>
        /// <param name="list"></param>
        /// <param name="responseEntity"></param>
        protected void SetExportFile(BaseExportFilter filter, ICollection list
                                     , ResponseEntity responseEntity, string sheetName = "Sheet1")
        {
            string[] titles = filter.Titles.Split(WebServiceConst.Separater_Comma.ToArray()).ToArray();
            string[] fields = filter.Fields.Split(WebServiceConst.Separater_Comma.ToArray()).ToArray();

            ResponseFileResult responseResult = new ResponseFileResult();

            responseResult.Result = FileExportUtility.GenerateFileStream(titles, fields,
                                                                         list, (EnumExportFileType)filter.ExportFileType, sheetName);

            titles = null;
            fields = null;
            list   = null;

            ServiceUtility.SetResponseStatus(responseEntity, EnumResponseState.Success);
            responseEntity.Results = responseResult;
        }