asp.net api使用NPOI 导出xls
发布时间:2020-12-16 03:22:23 所属栏目:asp.Net 来源:网络整理
导读:public HttpResponseMessage ExportSupportByIds( string ids) { List int idsIntList = new List int (); var idsList = ids.Split( ‘ , ‘ ).ToList(); if (idsList == null ) return CommonHelper.HttpResponseMessageJSON( new Response(ResponseCode.R
public HttpResponseMessage ExportSupportByIds(string ids) { List<int> idsIntList = new List<int>(); var idsList = ids.Split(‘,‘).ToList(); if (idsList == null) return CommonHelper.HttpResponseMessageJSON(new Response(ResponseCode.ReqInvalidParameter,"参数不能为空")); if (idsList.Count() <= 0) return CommonHelper.HttpResponseMessageJSON(new Response(ResponseCode.ReqInvalidParameter,"参数不能为空")); foreach (var item in idsList) { idsIntList.Add(Convert.ToInt32(item)); } if (idsList == null) return CommonHelper.HttpResponseMessageJSON(new Response(ResponseCode.ReqInvalidParameter,"参数不能为空")); var list = new crowd_supportBLL().GetListModelByIds(idsIntList); if (list == null || list.Count() <= 0) return CommonHelper.HttpResponseMessageJSON(new Response(ResponseCode.RspEmpty,"数据为空")); var response = new HttpResponseMessage(HttpStatusCode.OK); response.Content = new StreamContent(new crowd_supportBLL().ExportSupport(list)); response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); var fileName = "聚好物项目支持列表" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls"; response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") { FileName = System.Web.HttpUtility.UrlEncode(fileName) }; return response; } public MemoryStream ExportSupport(List<crowd_support_view_Paging_ViewModel> list) { //创建Excel文件的对象 NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook(); //添加一个sheet NPOI.SS.UserModel.ISheet sheet1 = book.CreateSheet("Sheet1"); //获取list数据 //List<TB_STUDENTINFOModel> listRainInfo = m_BLL.GetSchoolListAATQ(schoolname); //给sheet1添加第一行的头部标题 NPOI.SS.UserModel.IRow row1 = sheet1.CreateRow(0); row1.CreateCell(0).SetCellValue("订单编号"); row1.CreateCell(1).SetCellValue("支持人"); row1.CreateCell(2).SetCellValue("支持档次"); row1.CreateCell(3).SetCellValue("支持数量"); row1.CreateCell(4).SetCellValue("支持金额(元)"); row1.CreateCell(5).SetCellValue("支付时间"); row1.CreateCell(6).SetCellValue("订单状态"); row1.CreateCell(7).SetCellValue("回报发货时间"); row1.CreateCell(8).SetCellValue("收货人"); row1.CreateCell(9).SetCellValue("收货地址"); row1.CreateCell(10).SetCellValue("发票信息"); row1.CreateCell(11).SetCellValue("快递公司"); row1.CreateCell(12).SetCellValue("物流单号"); //将数据逐步写入sheet1各个行 for (int i = 0; i < list.Count(); i++) { NPOI.SS.UserModel.IRow rowtemp = sheet1.CreateRow(i + 1); rowtemp.CreateCell(0).SetCellValue(list[i].crowd_support_order); //订单编号 rowtemp.CreateCell(1).SetCellValue(list[i].nickname); //支持人 rowtemp.CreateCell(2).SetCellValue((double)list[i].level_amount); //支持档次 rowtemp.CreateCell(3).SetCellValue(list[i].buy_num);//支持数量 rowtemp.CreateCell(4).SetCellValue((double)list[i].payment_amount); //支持金额(元) rowtemp.CreateCell(5).SetCellValue(list[i].pay_time.ToString()); //支付时间 switch (list[i].pay_status) { case 0: rowtemp.CreateCell(6).SetCellValue("未付款"); //订单状态 break; case 1: rowtemp.CreateCell(6).SetCellValue("已支付"); //订单状态 break; case 2: rowtemp.CreateCell(6).SetCellValue("已退款"); //订单状态 break; case 3: rowtemp.CreateCell(6).SetCellValue("已取消"); //订单状态 break; default: break; } rowtemp.CreateCell(7).SetCellValue(list[i].sendout_time.ToString()); //回报发货时间 rowtemp.CreateCell(8).SetCellValue(list[i].consignee + "/" + list[i].consignee_tel); //收货人 rowtemp.CreateCell(9).SetCellValue(list[i].consignee_address); //收货地址 var invoice = ""; //抬头 / 税号 / 公司地址 / 公司地址 / 开户账号 / 开户银行 var invoice_str = list[i]?.invoice_str?.ToString(); var invoice_code = list[i]?.invoice_code?.ToString(); var invoice_address = list[i]?.invoice_address?.ToString(); var invoice_account = list[i]?.invoice_account?.ToString(); var invoice_bank = list[i]?.invoice_bank?.ToString(); if (!string.IsNullOrWhiteSpace(invoice_str)) { invoice += invoice_str + "/"; } if (!string.IsNullOrWhiteSpace(invoice_code)) { invoice += invoice_code + "/"; } if (!string.IsNullOrWhiteSpace(invoice_address)) { invoice += invoice_address + "/"; } if (!string.IsNullOrWhiteSpace(invoice_account)) { invoice += invoice_account + "/"; } if (!string.IsNullOrWhiteSpace(invoice_bank)) { invoice += invoice_bank + "/"; } rowtemp.CreateCell(10).SetCellValue(invoice?.ToString()); //发票信息 rowtemp.CreateCell(11).SetCellValue(list[i]?.track_name?.ToString()); //快递公司 rowtemp.CreateCell(12).SetCellValue(list[i]?.trackingorder?.ToString()); //物流单号 } // 写入到客户端 System.IO.MemoryStream ms = new System.IO.MemoryStream(); book.Write(ms); ms.Seek(0,SeekOrigin.Begin); return ms; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ASP.NET Web API项目自定义接口路由和HTTP请求方式
- asp.net – 自定义日期colmn telerik网格的过滤器选项
- asp.net-mvc – Spark View Engine的性能与ASP.NET相比如何
- asp.net-mvc – 为什么Visual Studio不会在发布中移动某些文
- asp.net-mvc – Log4net日志记录无效 – asp.net mvc
- asp.net – .NET MVC 3部署包缺少引用
- asp.net – 一些黑客可以从用户窃取cookie,并在网站上使用该
- ASP.NET Core 3.1 WebApi部署到腾讯云CentOS 7+Docker
- asp.net – Crystal Report Viewer – 以编程方式限制文件格
- 自签名ASP.NET Web API 2 REST服务的令牌身份验证和授权
推荐文章
站长推荐
- 混合WebForms/ASP.NET MVC
- asp.net-mvc-4 – 使用web.config中的凭据设置配
- asp.net-mvc – 在请求之间保持/缓存数据 – 常用
- asp.net-mvc – vNext. AspNet.Identity和自定义
- asp.net-mvc – 用于枚举的IRouteConstraint
- asp.net-mvc-3 – 将开源CMS框架集成到现有的MVC
- ef-code-first – 如何通过使用Identity ASP.NET
- asp.net – CSS更改不反映在网站上
- asp.net-mvc – MVC Razor String Concat
- asp.net-mvc – 表单身份验证cookie未过期
热点阅读