Beispiel #1
0
        public HttpResponseBase CategoryDetialExport()
        {
            string json = string.Empty;
            try
            {
                _OrderMasterMgr = new OrderMasterMgr(connectionString);
                OrderDetailQuery query = new OrderDetailQuery();
                query.Start = Convert.ToInt32(Request.Params["start"] ?? "0");//用於分頁的變量
                query.Limit = Convert.ToInt32(Request.Params["limit"] ?? "20");//用於分頁的變量
                DataTable store = new DataTable();
                query.Start = Convert.ToInt32(Request.Params["start"] ?? "0");
                query.Limit = Convert.ToInt32(Request.Params["limit"] ?? "25");
                if (!string.IsNullOrEmpty(Request.Params["category_id"]))
                {
                    query.category_id = Convert.ToUInt32(Request.Params["category_id"]);
                }
                if (!string.IsNullOrEmpty(Request.Params["category_name"]))
                {
                    query.category_name = Request.Params["category_name"];
                }
                if (!string.IsNullOrEmpty(Request.Params["category_status"]))
                {
                    query.category_status = Convert.ToInt32(Request.Params["category_status"]);
                }
                if (!string.IsNullOrEmpty(Request.Params["date_stauts"]))
                {
                    query.date_stauts = Convert.ToInt32(Request.Params["date_stauts"]);
                }
                if (!string.IsNullOrEmpty(Request.Params["date_start"]))
                {
                    query.date_start = Convert.ToDateTime(Request.Params["date_start"]);
                    query.date_start = Convert.ToDateTime(query.date_start.ToString("yyyy-MM-dd 00:00:00"));
                }
                if (!string.IsNullOrEmpty(Request.Params["date_end"]))
                {
                    query.date_end = Convert.ToDateTime(Request.Params["date_end"]);
                    query.date_end = Convert.ToDateTime(query.date_end.ToString("yyyy-MM-dd 23:59:59"));
                }

                int money;
                if (int.TryParse(Request.Params["c_money"], out money))
                {
                    query.c_money = money;
                }
                if (int.TryParse(Request.Params["c_money1"], out money))
                {
                    query.c_money1 = money;
                }

                query.IsPage = false;
                string newExcelName = string.Empty;
                store = _OrderMasterMgr.CagegoryDetialExportInfo(query);
                DataTable dtHZ = GetTableHead(store, 2);
                string[] colname = new string[dtHZ.Columns.Count];
                string name = query.category_name.Replace(".", ".");
                name = name.Replace("/", " ");
                name = name.Replace("。", "­.");
                string filename = query.category_id + name + "-類別訂單明細" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";
                newExcelName = Server.MapPath(excelPath_export) + filename;
                for (int i = 0; i < dtHZ.Columns.Count; i++)
                {
                    colname[i] = dtHZ.Columns[i].ColumnName;
                }

                if (System.IO.File.Exists(newExcelName))
                {
                    System.IO.File.Delete(newExcelName);
                }
                //newExcelName = newExcelName.Replace("。", "·");
                
                ExcelHelperXhf.ExportDTtoExcel(dtHZ, "", newExcelName);
                json = "{success:true,ExcelName:\'" + filename + "\'}";
            }
            catch (Exception ex)
            {
                Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage();
                logMessage.Content = string.Format("TargetSite:{0},Source:{1},Message:{2}", ex.TargetSite.Name, ex.Source, ex.Message);
                logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name;
                log.Error(logMessage);
                json = "{success:false}";
            }
            this.Response.Clear();
            this.Response.Write(json);
            this.Response.End();
            return this.Response;
        }