1.pom文件
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-base</artifactId>
<version>4.1.0</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-web</artifactId>
<version>4.1.0</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-annotation</artifactId>
<version>4.1.0</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.0</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.0</version>
</dependency>
2.实体类
package com.qkc.mstation.cms.dto;
import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import lombok.Data;
import java.io.Serializable;
@Data
@ExcelTarget("qkcOrderTransferExport")
public class QkcOrderTransferExport implements Serializable {
private Long id;
private String orderNo;
@Excel(name = "学员姓名", orderNum = "1", needMerge = true)
private String userName;
@Excel(name = "学员电话", orderNum = "2", needMerge = true)
private String cellphone;
@Excel(name = "班主任", orderNum = "3", needMerge = true)
private String des;
@Excel(name = "支付时间", orderNum = "4", needMerge = true)
private String orderPayTime;
@Excel(name = "缴费金额", orderNum = "5", needMerge = true)
private String payPrice;
@Excel(name = "购课课时", orderNum = "6", needMerge = true)
private String pkgClasshour;
@Excel(name = "定制课时", orderNum = "7", needMerge = true)
private String customizedHour;
@Excel(name = "赠送课时", orderNum = "8", needMerge = true)
private String giftClasshour;
}
3.controller
@PostMapping(value = "/order-transfer-export")
public void orderTransferExport(HttpServletResponse response, HttpServletRequest request, @RequestBody Long[] list){
try {
String operatorId = request.getHeader("operatorId");
String operator = request.getHeader("operator");
String userId = "283";
String userName = "qizhenkai";
if (StringUtils.isBlank(operatorId) || StringUtils.isBlank(operator) || !userId.equals(operatorId) || !userName.equals(userName)) {
return ApiResult.error(ApiCode.Qkc_USER_NO_Permission);
}
List<QkcOrderTransferExport> qkcOrderTransferExports = qkcOrderTransferServiceCms.orderTransferExport(list);
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("订单管理信息详情","订单管理信息详情"), QkcOrderTransferExport.class, qkcOrderTransferExports);
response.setContentType("application/ms-excel");
String filename = "订单管理信息详情.xls";
response.setHeader("Content-Disposition", "attachment;filename*= UTF-8''"+ URLEncoder.encode(filename,"UTF-8"));
ServletOutputStream so = response.getOutputStream();
workbook.write(so);
so.close();
} catch (Exception e) {
logger.error("查询交接单导出列表异常-e:{}", e);
}
}