首页 > 其他分享 >20220827 使用EasyExcel导出复杂表格

20220827 使用EasyExcel导出复杂表格

时间:2022-08-27 17:47:56浏览次数:42  
标签:表格 returnList EasyExcel t1 add new 20220827 DownloadDTO d1

1、前言

突然有个比较复杂的表格导出需求,写着挺好玩的,记录一下。

需要实现的表格如图所示:

先分析一下表格,可以看出大致分了四个区域:①第2-8行,②第9行,③第10-14行,④第15行。

其中,①和③类似(需要对单元格进行合并),②和④类似(这个地方可以改成上一个区域的总结)。

初步想法是在一个sheet页面,通过多个table 解决(①②③④均为独立table)。

 

 

2、自定义合并单元格策略

2、1 初始化数据

   // 模拟从数据库读取需要下载的列表信息 7个
    private List<DownloadDTO> getFruitData() {
        List<DownloadDTO> returnList = new ArrayList<>();
        DownloadDTO d1 = new DownloadDTO();
        d1.setCategory("水果");
        d1.setFruit("苹果");
        d1.setColor("红色");
        d1.setProduceDate(new Date());

        DownloadDTO d2 = new DownloadDTO();
        BeanUtil.copyProperties(d1, d2);
        d2.setColor("绿色");

        DownloadDTO d3 = new DownloadDTO();
        BeanUtil.copyProperties(d1, d3);
        d2.setColor("白色");

        DownloadDTO t1 = new DownloadDTO();
        t1.setCategory("水果");
        t1.setFruit("香蕉");
        t1.setColor("黄色");
        t1.setProduceDate(new Date());

        DownloadDTO t2 = new DownloadDTO();
        BeanUtil.copyProperties(t1, t2);
        t2.setColor("青色");

        DownloadDTO w1 = new DownloadDTO();
        w1.setCategory("水果");
        w1.setFruit("西瓜");
        w1.setColor("绿色");
        w1.setProduceDate(new Date());

        DownloadDTO w2 = new DownloadDTO();
        BeanUtil.copyProperties(w1, w2);
        w2.setColor("黄色");

        returnList.add(d1);
        returnList.add(d2);
        returnList.add(d3);
        returnList.add(t1);
        returnList.add(t2);
        returnList.add(w1);
        returnList.add(w2);
        return returnList;
    }

 

 

 

参考文档:

https://www.cnblogs.com/monianxd/p/16359369.html

https://www.jianshu.com/p/1bc1b9dccc52/

 

标签:表格,returnList,EasyExcel,t1,add,new,20220827,DownloadDTO,d1
From: https://www.cnblogs.com/MerryRose/p/16631008.html

相关文章

  • springboot+docker发布项目20220827
    1、springboot打包项目 1)、application-dev.yml     对应配置修改 2)、项目package 生成包    3)、生成包         4)、运行......
  • 20220827研讨会2
    NLP  image eventgraph                                   ......
  • 20220827研讨会
    知识图谱动态规划  把起点初始化特殊的值   跑了GNN,得到输出     ----------------------------------------------------------NBFNet ......
  • win32com:word操作之 修改表格中的单元格
      forcindoc.Tables:foriinc.Range.Cells:print([i.Range.Text])#必须转换为列表,否则里面包含的特殊字符如回车换行会导致文本打印不出来......
  • excel表格如何设置下拉选项
    在EXCEL表格中,进入数据菜单栏,打开数据验证窗口,设置允许序列,在来源中输入多个下拉选项,具体操作方法如下:1.点击数据验证。打开EXCEL表格,选中单元格,点击菜单栏上“数据-数据......
  • vue表格之:summary-method="getSummaries"与show-summary(列求和)
    //表格列求和<el-table:summary-method="getSummaries"show-summary></el-table>getSummaries(param){const{columns,data}=paramconstsums=[]......
  • el-table 高亮行:只有设置表格数据才生效
    需求:表格若有数据,则默认高亮第一行。之前高亮的行,若在查询结果列表中,则保持高亮不变;反之,则高亮第一行。解决办法需求1很容易实现:created(){//默认高亮第......
  • HTML基础(三):列表、表格、表单标签学习
    列表标签列表的应用场景场景:在网页中按照行展示关联性内容,如新闻列表、排行榜、账单等特点:按照行的方式整齐显示内容种类:有序列表、无序列表、自定义列表无序列表......
  • 将excel表格转化为建表语句
    将设计方案中的excel表格格式的建表描述,直接转化为建表语句excel格式法律模块:XX_legal 列名 字段类型 注释 是否可为空legal_id bigint 主键 否parent_id bigint......
  • 项目中因为key值导致表格只能显示部分数据问题
      为合并表头模式,数据格式如下:  {title:'交强险',  children:[   {    title:'保单号',    dataIndex:'insuranceBillcod......