zoukankan      html  css  js  c++  java
  • C# 导出 excel 复杂格式 html导出

    /// <summary>
            /// 夜班津贴统计导出
            /// </summary>
            public void ExportOtStat(string data)
            {
                var input = data.DeserializeObject<StructExportOtStat>();
                List<Usp_PRO_ExportOtStatResult> list = null;
                using (var context = PRODBHelper.DataContext)
                {
                    list = context.Usp_PRO_ExportOtStat(input.beginDate, input.endDate).ToList();
                    //var output = results.ToList().SerializeObject();
                    //HttpContext.Current.Response.Write(output);
                }
                //HttpContext.Current.Response.End();
                StringBuilder sbdHTML = new StringBuilder();
                DateTime StartDate = input.beginDate;
                DateTime EndDate = input.endDate;
                Hashtable hshData = new Hashtable();
                string[] arrColumns = {"序号",
                                       "员工编号",
                                       "姓名",
                                       "开始时间",
                                       "结束时间",
                                       "夜班日期",
                                       "津贴标准",
                                       "夜班次数",
                                       "津贴总数"};
                sbdHTML.Append("<HTML>");
                sbdHTML.Append(GetExcelTitleHTML(StartDate));
                sbdHTML.Append("<div style="height:50px"></div>");
                sbdHTML.Append(GetExcelInfo(StartDate));
                sbdHTML.Append("<div style="height:10px"></div>");
                sbdHTML.Append("<Table border=1>");
                sbdHTML.Append(GetOTExcelHeaderHTML(arrColumns));
                foreach (Usp_PRO_ExportOtStatResult item in list)
                {
                    sbdHTML.Append(GetExcelRowHTML(item));
                }
                sbdHTML.Append("</Table>");
                sbdHTML.Append("</HTML>");
                HttpResponse resp;
                resp = System.Web.HttpContext.Current.Response;
                resp.Charset = "GB2312";
                resp.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
                resp.AppendHeader("Content-Disposition", "attachment;filename=" 
                    + System.Web.HttpUtility.UrlEncode("信息总中心" + StartDate.Month.ToString() + "月夜班津贴统计.xls", System.Text.Encoding.UTF8));
                resp.Write(sbdHTML.ToString());
                resp.End();
            }
            private string GetExcelTitleHTML(DateTime ReportDate)
            {
                StringBuilder sbdHTML = new StringBuilder();
                sbdHTML.AppendFormat("<div align="center" style="60%; font-size:large; font-weight:bold;" >{0}年{1}月夜班津贴统计表</div>",
                    ReportDate.Year.ToString(),ReportDate.Month.ToString());
                return sbdHTML.ToString();
            }
            private string GetExcelInfo(DateTime ReportDate)
            {
                StringBuilder sbdHTML = new StringBuilder();
                sbdHTML.Append("<div align="left" style="60%">部门(盖章):信息总中心</div>");
                return sbdHTML.ToString();
            }
            private string GetOTExcelHeaderHTML(string[] arrColumns)
            {
                StringBuilder sbdHTML = new StringBuilder();
                sbdHTML.Append("<tr>");
                for (int i = 0; i < arrColumns.Length; i++)
                {
                    sbdHTML.AppendFormat("<td>{0}</td>", arrColumns[i]);
                }
                sbdHTML.Append("</tr>");
                return sbdHTML.ToString();
            }
            private string GetExcelRowHTML(Usp_PRO_ExportOtStatResult item)
            {
                StringBuilder sbdHTML = new StringBuilder();
                sbdHTML.Append("<tr>");
                sbdHTML.AppendFormat("<td>{0}</td>", item.ID);
                sbdHTML.AppendFormat("<td>{0}</td>", item.UserID);
                sbdHTML.AppendFormat("<td>{0}</td>", item.UserName);
                sbdHTML.AppendFormat("<td>{0}</td>", item.BeginTime);
                sbdHTML.AppendFormat("<td>{0}</td>", item.EndTime);
                sbdHTML.AppendFormat("<td>{0}</td>", item.NightShiftDates);
                sbdHTML.AppendFormat("<td>{0}</td>", item.SalaryNormal.ToString());
                sbdHTML.AppendFormat("<td>{0}</td>", item.NightShiftNum.ToString());
                sbdHTML.AppendFormat("<td>{0}</td>", item.SalarySum.ToString());
                sbdHTML.Append("</tr>");
                return sbdHTML.ToString();
            }
  • 相关阅读:
    @SneakyThrows
    docker部署elasticsearch
    docker部署rabbitmq
    docker部署minio
    docker 部署 jenkins
    linux 根据文件名全局查找位置
    docker 容器与宿主机之间文件拷贝
    excel 查看当前单元格是否存在某一列
    机器学习sklearn
    一些博客链接
  • 原文地址:https://www.cnblogs.com/niaowo/p/4051042.html
Copyright © 2011-2022 走看看