|
|
@@ -8,41 +8,33 @@ import cn.idev.excel.write.builder.ExcelWriterTableBuilder;
|
|
|
import cn.idev.excel.write.metadata.WriteSheet;
|
|
|
import cn.idev.excel.write.metadata.WriteTable;
|
|
|
import cn.idev.excel.write.metadata.fill.FillConfig;
|
|
|
-import lombok.AccessLevel;
|
|
|
-import lombok.Getter;
|
|
|
-import lombok.RequiredArgsConstructor;
|
|
|
|
|
|
import java.util.Collection;
|
|
|
import java.util.function.Supplier;
|
|
|
|
|
|
/**
|
|
|
- * ExcelWriterHelper Excel写出助手
|
|
|
+ * ExcelWriterWrapper Excel写出包装器
|
|
|
* <br>
|
|
|
* 提供了一组与 ExcelWriter 一一对应的写出方法,避免直接提供 ExcelWriter 而导致的一些不可控问题(比如提前关闭了IO流等)
|
|
|
*
|
|
|
- *
|
|
|
- * @see ExcelWriter
|
|
|
* @author 秋辞未寒
|
|
|
+ * @see ExcelWriter
|
|
|
*/
|
|
|
-@RequiredArgsConstructor
|
|
|
-public class ExcelWriterHelper {
|
|
|
-
|
|
|
- @Getter(AccessLevel.PRIVATE)
|
|
|
- private final ExcelWriter excelWriter;
|
|
|
+public record ExcelWriterWrapper<T>(ExcelWriter excelWriter) {
|
|
|
|
|
|
- public void write(Collection<?> data, WriteSheet writeSheet) {
|
|
|
+ public void write(Collection<T> data, WriteSheet writeSheet) {
|
|
|
excelWriter.write(data, writeSheet);
|
|
|
}
|
|
|
|
|
|
- public void write(Supplier<Collection<?>> supplier, WriteSheet writeSheet) {
|
|
|
- excelWriter.write(supplier, writeSheet);
|
|
|
+ public void write(Supplier<Collection<T>> supplier, WriteSheet writeSheet) {
|
|
|
+ excelWriter.write(supplier.get(), writeSheet);
|
|
|
}
|
|
|
|
|
|
- public void write(Collection<?> data, WriteSheet writeSheet, WriteTable writeTable) {
|
|
|
+ public void write(Collection<T> data, WriteSheet writeSheet, WriteTable writeTable) {
|
|
|
excelWriter.write(data, writeSheet, writeTable);
|
|
|
}
|
|
|
|
|
|
- public void write(Supplier<Collection<?>> supplier, WriteSheet writeSheet, WriteTable writeTable) {
|
|
|
+ public void write(Supplier<Collection<T>> supplier, WriteSheet writeSheet, WriteTable writeTable) {
|
|
|
excelWriter.write(supplier.get(), writeSheet, writeTable);
|
|
|
}
|
|
|
|
|
|
@@ -67,13 +59,13 @@ public class ExcelWriterHelper {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 创建一个 ExcelWriterHelper
|
|
|
+ * 创建一个 ExcelWriterWrapper
|
|
|
*
|
|
|
* @param excelWriter ExcelWriter
|
|
|
- * @return ExcelWriterHelper
|
|
|
+ * @return ExcelWriterWrapper
|
|
|
*/
|
|
|
- public static ExcelWriterHelper of(ExcelWriter excelWriter) {
|
|
|
- return new ExcelWriterHelper(excelWriter);
|
|
|
+ public static <T> ExcelWriterWrapper<T> of(ExcelWriter excelWriter) {
|
|
|
+ return new ExcelWriterWrapper<>(excelWriter);
|
|
|
}
|
|
|
|
|
|
// -------------------------------- sheet start
|