导出excel时间字段乱码 up

This commit is contained in:
zhuangdashia 2025-08-24 15:31:37 +08:00
parent 14b0590d04
commit 4ee945f8ac
2 changed files with 36 additions and 2 deletions

View File

@ -0,0 +1,32 @@
package org.dromara.common.excel.convert;
import java.text.SimpleDateFormat;
import java.util.Date;
import cn.idev.excel.converters.Converter;
import cn.idev.excel.enums.CellDataTypeEnum;
import cn.idev.excel.metadata.GlobalConfiguration;
import cn.idev.excel.metadata.data.ReadCellData;
import cn.idev.excel.metadata.data.WriteCellData;
import cn.idev.excel.metadata.property.ExcelContentProperty;
public class ExcelDateConvert implements Converter<Date> {
@Override
public Class<Date> supportJavaTypeKey() {
return Date.class;
}
@Override
public WriteCellData<?> convertToExcelData(Date value,
ExcelContentProperty contentProperty,
GlobalConfiguration globalConfig) {
String pattern = "yyyy-MM-dd"; // 默认格式
if(contentProperty != null &&
contentProperty.getDateTimeFormatProperty() != null){
pattern = contentProperty.getDateTimeFormatProperty().getFormat();
}
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
return new WriteCellData<>(sdf.format(value));
}
}

View File

@ -5,6 +5,7 @@ import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper; import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data; import lombok.Data;
import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDateConvert;
import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.common.excel.convert.ExcelDictConvert;
import org.dromara.mps.domain.MpsDetailEntry; import org.dromara.mps.domain.MpsDetailEntry;
@ -79,7 +80,8 @@ public class MpsDetailEntryExportVo implements Serializable {
/** /**
* 数据日期 * 数据日期
*/ */
@ExcelProperty(value = "数据日期") @ExcelProperty(value = "数据日期", converter = ExcelDateConvert.class)
// @DateTimeFormat("yyyy/MM/dd") //指定格式
private Date date; private Date date;
// /** // /**
@ -98,7 +100,7 @@ public class MpsDetailEntryExportVo implements Serializable {
* 客户类型1-个人2-对公 * 客户类型1-个人2-对公
*/ */
@ExcelProperty(value = "客户类型", converter = ExcelDictConvert.class) @ExcelProperty(value = "客户类型", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "1=个人,2=对公") @ExcelDictFormat(dictType = "mps_cust_type")
private String custType; private String custType;
/** /**