【第十七篇】easyui-datagrid 导出Excel (在客户端能弹出下载框)
//导出Excel
function exportExcel(obj) {
var SaleOrderNo = $("#SaleOrderNo").val().trim();
var FoctoryNo = $("#FoctoryNo").val().trim();
var StyleNo = $("#StyleNo").val().trim(); var href = "/Admin/Sale/ExportPressingExcel?1=1";
if (SaleOrderNo == "" && FoctoryNo == "" && StyleNo == "" ) {
href = "/Admin/Sale/ExportPressingExcel";
} else if (SaleOrderNo != "") {
href += "&SaleOrderNo=" + SaleOrderNo;
} else if (FoctoryNo != "") {
href += "&FoctoryNo=" + FoctoryNo;
} else if (StyleNo != "") {
href += "&StyleNo=" + StyleNo;
}
obj.href = href;
}
<a class="btn btn-app" onclick="exportExcel(this)"><i class="fa fa-edit"></i>导出Excel</a>
/// <summary>
/// 加工单导出Excel
/// </summary>
/// <returns></returns>
public ActionResult ExportPressingExcel()
{
string FoctoryNo = Request.Params["FoctoryNo"];
string StyleNo = Request.Params["StyleNo"];
string SaleOrderNo = Request.Params["SaleOrderNo"]; List<Factory> fList = fService.GetAllFactory();
List<Factory> aList = new List<Factory>();
if (fList != null)
{
for (int i = ; i < fList.Count; i++)
{
Factory f = new Factory();
f.FactoryId = fList[i].FactoryId;
f.FactoryName = fList[i].FactoryName;
f.Tel = fList[i].Tel;
f.Mobile = fList[i].Mobile;
f.MailBox = fList[i].MailBox;
f.Addr = fList[i].Addr; aList.Add(f);
}
} List<Processing> pList = pService.GetExcelProcessing(FoctoryNo, StyleNo, SaleOrderNo);
List<Processing> rList = new List<Processing>();
if (pList != null)
{
for (int i = ; i < pList.Count; i++)
{
Processing s = new Processing();
s.ProcessingId = pList[i].ProcessingId;
s.SaleOrderNo = pList[i].SaleOrderNo;
s.StoneOutNo = pList[i].StoneOutNo;
s.FactoryId = pList[i].FactoryId;
s.ReceiveDate = pList[i].ReceiveDate;
s.CustomerManager = pList[i].CustomerManager;
s.FoctoryUser = pList[i].FoctoryUser;
s.FoctoryNo = pList[i].FoctoryNo;
s.StyleNo = pList[i].StyleNo;
s.CustomerSc = pList[i].CustomerSc;
s.Material = pList[i].Material;
s.Requirement = pList[i].Requirement;
s.SizeJ = pList[i].SizeJ;
switch (pList[i].CompletedStatus)
{
case "":
s.CompletedStatus = "未完成";
break;
case "":
s.CompletedStatus = "完成";
break;
case "":
s.CompletedStatus = "取消";
break;
default:
s.CompletedStatus = "未完成";
break;
} rList.Add(s);
}
} DataTable table = new DataTable();
table.Columns.Add(new DataColumn("工厂单号"));
table.Columns.Add(new DataColumn("订单编号"));
table.Columns.Add(new DataColumn("加工厂"));
table.Columns.Add(new DataColumn("送厂日期"));
table.Columns.Add(new DataColumn("出库单号"));
table.Columns.Add(new DataColumn("客户经理"));
table.Columns.Add(new DataColumn("工厂接收人"));
table.Columns.Add(new DataColumn("款式编号"));
table.Columns.Add(new DataColumn("客户手寸"));
table.Columns.Add(new DataColumn("材质"));
table.Columns.Add(new DataColumn("刻字要求"));
table.Columns.Add(new DataColumn("金重"));
table.Columns.Add(new DataColumn("状态")); foreach (var o in rList)
{
DataRow row = table.NewRow();
row["工厂单号"] = o.FoctoryNo;
row["订单编号"] = o.SaleOrderNo;
foreach (var item in aList)
{
if (o.FactoryId == item.FactoryId)
{
row["加工厂"] = item.FactoryName;
}
}
row["送厂日期"] = o.ReceiveDate;
row["出库单号"] = o.StoneOutNo;
row["客户经理"] = o.CustomerManager;
row["工厂接收人"] = o.FoctoryUser;
row["款式编号"] = o.StyleNo;
row["客户手寸"] = o.CustomerSc;
row["材质"] = o.Material;
row["刻字要求"] = o.Requirement;
row["金重"] = o.SizeJ;
row["状态"] = o.CompletedStatus;
table.Rows.Add(row);
} MemoryStream MemoryStream = new MemoryStream();
HSSFWorkbook work = ExcelHelper.CreateExcelByNPOI(table);
work.Write(MemoryStream);
return File(MemoryStream.GetBuffer(), "application/ms-excel", "加工单-" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls");
}

---------------------------------------------------------------------------------------------------------
转载请记得说明作者和出处哦-.-
作者:KingDuDu
原文出处:https://www.cnblogs.com/kingdudu/articles/4913250.html
---------------------------------------------------------------------------------------------------------
【第十七篇】easyui-datagrid 导出Excel (在客户端能弹出下载框)的更多相关文章
- easyui datagrid导出excel
[第十四篇]easyui datagrid导出excel <a class="btn btn-app" onclick="exportExcel()" ...
- JAVA导出excel 直接弹出下载框
转自:https://blog.csdn.net/qq_38423105/article/details/80782283 效果展示: 1.首先准备jar包 <dependency> ...
- 【第十四篇】easyui datagrid导出excel
<a class="btn btn-app" onclick="exportExcel()"><i class="fa fa-edi ...
- Jquery easyui datagrid 导出Excel
From:http://www.cnblogs.com/weiqt/articles/4022399.html datagrid的扩展方法,用于将当前的数据生成excel需要的内容. 1 <sc ...
- Springmvc和poi3.9导出excel并弹出下载框
Springmvc 和 poi3.9 用java程序从数据库导出数据到excel(在博客园的第一篇原创博客) @RequestMapping(value = "/importexcel.ht ...
- POI文件导出至EXCEL,并弹出下载框
相关参考帖子 : [1]http://www.tuicool.com/articles/MnqeUr [2]http://www.oschina.net/question/253469_51638?f ...
- springmvc导出excel并弹出下载框
https://my.oschina.net/aptx4869/blog/298507
- Java POI 导出EXCEL经典实现 Java导出Excel弹出下载框(转载)
https://blog.csdn.net/evangel_z/article/details/7332535
- Java浏览器弹出下载框,多个文件导出压缩包
项目里一直有这个功能,也一直没怎么注意,今天研究了一下 依据逻辑往下走: 首先是要下载的ajax的Java方法,只有返回值需要设定一下,其他的不用管: Map<String, Object> ...
随机推荐
- Json串与实体的相互转换 (不依赖于jar包 只需Eclipse环境即可)
Json串与实体的相互转换 (不依赖于jar包 只需Eclipse环境即可) 最近学习了javaWeb开发,用的是ssh框架里面自己整合了hibernate 和Struts2 和spring框架,其中 ...
- python中如何调用函数交换两个变量的值
python中如何调用函数交换两个变量的值 所有代码来在python3.7.1版本实现 以下实例通过用户输入两个变量,并相互交换: 方法一: def swap(a,b): # 创建临时变量,并交换 ...
- Day 02--选题与设计(二)
1.今天我们主要设计了一下我们微信小程序可以实现的功能,客户操作的基本流程,研究了墨刀这个工具的使用方法并试着将想法转化为原型设计项目.我们给自己的系统起名为“天天好餐”.我们认为食堂订送餐与网络上的 ...
- (转)2019年给Java编程初学者的建议(附学习大纲)
本文链接:https://blog.csdn.net/javajlb/article/details/85920904 1. 引言这是一篇初学者干货,请耐心看完,希望对你有帮助 作为初学者的你,命中了 ...
- Java网络编程与NIO详解2:JAVA NIO 一步步构建I/O多路复用的请求模型
微信公众号[黄小斜]作者是蚂蚁金服 JAVA 工程师,专注于 JAVA 后端技术栈:SpringBoot.SSM全家桶.MySQL.分布式.中间件.微服务,同时也懂点投资理财,坚持学习和写作,相信终身 ...
- 【模板】树链剖分(Luogu P3384)
题目描述 众所周知 树链剖分是个好东西QWQ 也是一个代码量破百的算法 基本定义 树路径信息维护算法. 将一棵树划分成若干条链,用数据结构去维护每条链,复杂度为O(logN). 其实本质是一些数据结 ...
- SpringIoC和SpringMVC的快速入门
更多内容,欢迎关注微信公众号:全菜工程师小辉~ Spring的优势? 降低了组件之间的耦合性 ,实现了软件各层之间的解耦 可以使用容易提供的众多服务,如事务管理,消息服务等 容器提供单例模式支持 容器 ...
- NNs(Neural Networks,神经网络)和Polynomial Regression(多项式回归)等价性之思考,以及深度模型可解释性原理研究与案例
1. Main Point 0x1:行文框架 第二章:我们会分别介绍NNs神经网络和PR多项式回归各自的定义和应用场景. 第三章:讨论NNs和PR在数学公式上的等价性,NNs和PR是两个等价的理论方法 ...
- 试试 IEnumerable 的 10 个小例子
IEnumerable 接口是 C# 开发过程中非常重要的接口,对于其特性和用法的了解是十分必要的.本文将通过10个小例子,来熟悉一下其简单的用法. 全是源码 以下便是这10个小例子,响应的说明均标记 ...
- Mobx-React : 当前适合React的状态管理工具
MobX 简单.可扩展的状态管理 MobX 是由 Mendix.Coinbase.Facebook 开源和众多个人赞助商所赞助的. 安装 安装: npm install mobx ...