package com.qianwen.core.excel.extend.handler; import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.converters.Converter; import com.alibaba.excel.write.metadata.WriteSheet; import java.util.List; import javax.servlet.http.HttpServletResponse; import com.qianwen.core.excel.extend.annotation.ResponseExcel; import com.qianwen.core.excel.extend.config.ExcelConfigProperties; import com.qianwen.core.excel.extend.enhance.WriterBuilderEnhancer; import com.qianwen.core.excel.extend.kit.ExcelException; import org.springframework.beans.factory.ObjectProvider; /* loaded from: blade-starter-excel-9.3.0.0-SNAPSHOT.jar:org/springblade/core/excel/extend/handler/SingleSheetWriteHandler.class */ public class SingleSheetWriteHandler extends AbstractSheetWriteHandler { public SingleSheetWriteHandler(ExcelConfigProperties configProperties, ObjectProvider>> converterProvider, WriterBuilderEnhancer excelWriterBuilderEnhance) { super(configProperties, converterProvider, excelWriterBuilderEnhance); } @Override // org.springblade.core.excel.extend.handler.SheetWriteHandler public boolean support(Object obj) { if (obj instanceof List) { List objList = (List) obj; return (objList.isEmpty() || (objList.get(0) instanceof List)) ? false : true; } throw new ExcelException("@ResponseExcel 返回值必须为List类型"); } @Override // org.springblade.core.excel.extend.handler.SheetWriteHandler public void write(Object obj, HttpServletResponse response, ResponseExcel responseExcel) { List list = (List) obj; ExcelWriter excelWriter = getExcelWriter(response, responseExcel); Class dataClass = list.get(0).getClass(); WriteSheet sheet = sheet(responseExcel.sheets()[0], dataClass, responseExcel.template(), responseExcel.headGenerator()); excelWriter.write(list, sheet); excelWriter.finish(); } }