From e83dacb5066a86db29dbdc232218d8aba6adc95f Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期五, 02 八月 2024 13:34:04 +0800 Subject: [PATCH] # --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/ExcelUtil.java | 35 +++++++++++++++++++++++++++++++++++ 1 files changed, 35 insertions(+), 0 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/ExcelUtil.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/ExcelUtil.java index fbeb87b..1fc6dce 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/ExcelUtil.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/ExcelUtil.java @@ -1,6 +1,7 @@ package com.zy.asrs.wms.utils; import com.zy.asrs.framework.common.Cools; +import com.zy.asrs.wms.asrs.entity.MatField; import io.swagger.annotations.ApiModelProperty; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Row; @@ -15,6 +16,7 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; +import java.util.Map; /** * Created by vincent on 2/17/2024 @@ -32,6 +34,10 @@ } public static <T> Workbook create(List<T> list, Class<T> clz) { + return create(list, clz, null); + } + + public static <T> Workbook create(List<T> list, Class<T> clz, List<MatField> dynamicFields) { HSSFWorkbook workbook = new HSSFWorkbook(); Sheet sheet = workbook.createSheet(clz.getSimpleName()); @@ -50,6 +56,14 @@ } header.createCell(headerIdx).setCellValue(memo); headerIdx++; + } + + //鍔ㄦ�佸瓧娈� + if(dynamicFields != null){ + for (MatField field : dynamicFields) { + header.createCell(headerIdx).setCellValue(field.getDescribe()); + headerIdx++; + } } int rowIndex = 1; @@ -81,6 +95,27 @@ } cellIndex++; } + + //鍔ㄦ�佸瓧娈� + if(dynamicFields != null){ + for (Field field : fields) { + if (field.getName().equals("dynamicFields")) { + try { + Map<String, Object> map = (Map<String, Object>) field.get(t); + for (MatField matField : dynamicFields) { + Object value = map.get(matField.getName()); + if(value != null){ + row.createCell(cellIndex).setCellValue(value.toString()); + cellIndex++; + } + } + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + } + } + } + } for (int i = 0; i <= fields.length; i++) { -- Gitblit v1.9.1