所有的表格数据导出到excel原理基本是一样的,只不过要导出多表合并的表格有些问题是需要注意的。医院系统门诊,费用明细查询冲减的导出就会遇到合并表格的问题。因为要将不同表格不同字段的信息,显示在layui表格的同一个列中,单纯地建一个实体类是不能够解决问题的了,要将西药、中药和检查项三表合并,能想到的最简单的合并莫过于先将任意俩表合并起来,再将合并起来的再合并第三个表。
譬如:直接应用Union的重装方法
IEnumerable intsResult
= listWestPill.Union(listChinaPill).OrderBy(c => c.FeeDetailID);
就是先将中西药表合并,再将合并的结果再与检查项 “二次合并”:
IEnumerable intsResultAll
= intsResult.Union(listCheckItem).OrderBy(c=> c.FeeDetailID);
表格渲染重载后,合并的效果:
接下来就可以导出了,按照正常的导出流程和步骤:
通过条件筛选完导出:
1.创建工作簿 HSSFWorkbook exBook = new HSSFWorkbook();
2.创建工作表 ISheet sheet &