mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-12 21:02:08 +08:00
1、优化第三方支付透传参数改为存在数据库中;2、新增超时支付单的轮训处理、增加关闭和待支付的判定和对应处理;3、新增更新前序购买记录的已支付属性;
This commit is contained in:
+25
@@ -0,0 +1,25 @@
|
||||
package com.cf.imes.framework.excel.core.convert;
|
||||
|
||||
/**
|
||||
* 基础枚举接口,code为布尔类型
|
||||
* <p>
|
||||
* 用于easyexcel convert
|
||||
*
|
||||
* @author Gqr
|
||||
* @since 2025/8/27 11:51
|
||||
*/
|
||||
public interface BaseBoolValEnum {
|
||||
/**
|
||||
* 魔值
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
Boolean getCode();
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
String getDesc();
|
||||
}
|
||||
+73
@@ -0,0 +1,73 @@
|
||||
package com.cf.imes.framework.excel.core.convert;
|
||||
|
||||
import com.alibaba.excel.converters.Converter;
|
||||
import com.alibaba.excel.converters.ReadConverterContext;
|
||||
import com.alibaba.excel.converters.WriteConverterContext;
|
||||
import com.alibaba.excel.enums.CellDataTypeEnum;
|
||||
import com.alibaba.excel.metadata.data.WriteCellData;
|
||||
import com.cf.imes.framework.excel.core.annotations.EnumFormat;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
|
||||
/**
|
||||
* Excel 枚举转换器
|
||||
*
|
||||
* @author Gqr
|
||||
* @since 2025/8/27 11:02
|
||||
*/
|
||||
@Slf4j
|
||||
public class EnumBoolValConvert implements Converter<Boolean> {
|
||||
@Override
|
||||
public Class<?> supportJavaTypeKey() {
|
||||
return Boolean.class; // 泛型接口
|
||||
}
|
||||
|
||||
@Override
|
||||
public CellDataTypeEnum supportExcelTypeKey() {
|
||||
return CellDataTypeEnum.BOOLEAN; // Excel 存字符串
|
||||
}
|
||||
|
||||
// 写出:Integer -> 枚举描述
|
||||
@Override
|
||||
public WriteCellData<String> convertToExcelData(WriteConverterContext<Boolean> context) {
|
||||
Boolean code = context.getValue();
|
||||
if (code == null) {
|
||||
return new WriteCellData<>("");
|
||||
}
|
||||
Class<? extends Enum> enumClass = getEnumClass(context.getContentProperty().getField());
|
||||
if (enumClass != null) {
|
||||
for (Object e : enumClass.getEnumConstants()) {
|
||||
BaseBoolValEnum baseEnum = (BaseBoolValEnum) e;
|
||||
if (baseEnum.getCode().equals(code)) {
|
||||
return new WriteCellData<>(baseEnum.getDesc());
|
||||
}
|
||||
}
|
||||
}
|
||||
return new WriteCellData<>("");
|
||||
}
|
||||
|
||||
// 读入:枚举描述 -> Integer code
|
||||
@Override
|
||||
public Boolean convertToJavaData(ReadConverterContext<?> context) {
|
||||
String desc = context.getReadCellData().getStringValue();
|
||||
if (desc == null) {
|
||||
return Boolean.FALSE;
|
||||
}
|
||||
Class<? extends Enum> enumClass = getEnumClass(context.getContentProperty().getField());
|
||||
if (enumClass != null) {
|
||||
for (Object e : enumClass.getEnumConstants()) {
|
||||
BaseBoolValEnum baseEnum = (BaseBoolValEnum) e;
|
||||
if (baseEnum.getDesc().equals(desc)) {
|
||||
return baseEnum.getCode();
|
||||
}
|
||||
}
|
||||
}
|
||||
return Boolean.FALSE;
|
||||
}
|
||||
|
||||
private Class<? extends Enum> getEnumClass(Field field) {
|
||||
EnumFormat annotation = field.getAnnotation(EnumFormat.class);
|
||||
return annotation != null ? annotation.value() : null;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user