From 3680bf0db12120452d4f9ae7b98a942245148472 Mon Sep 17 00:00:00 2001
From: gaoqr <13665037151@163.com>
Date: Wed, 27 Aug 2025 15:55:23 +0800
Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E6=96=B0=E5=A2=9EBaseEnum=E3=80=81En?=
=?UTF-8?q?umConvert=E3=80=81EnumFormat=EF=BC=9A=E6=94=AF=E6=8C=81excel?=
=?UTF-8?q?=E5=AF=BC=E5=87=BA=E4=BB=8E=E6=9E=9A=E4=B8=BE=E8=8E=B7=E5=8F=96?=
=?UTF-8?q?=E6=8F=8F=E8=BF=B0=EF=BC=9B2=E3=80=81=E8=B4=AD=E4=B9=B0?=
=?UTF-8?q?=E8=AE=B0=E5=BD=95=E3=80=81=E7=BB=84=E7=BB=87=E4=BD=99=E9=A2=9D?=
=?UTF-8?q?excel=E5=AF=BC=E5=87=BA=E6=96=87=E4=BB=B6=E5=86=85=E5=AE=B9?=
=?UTF-8?q?=E4=BF=AE=E6=AD=A3=EF=BC=9B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../excel/core/annotations/EnumFormat.java | 25 +++++++
.../excel/core/convert/BaseEnum.java | 25 +++++++
.../excel/core/convert/EnumConvert.java | 73 +++++++++++++++++++
.../system/enums/DictTypeConstants.java | 1 +
.../vo/BalanceDetailsRespVO.java | 12 ++-
.../purchase/vo/PurchaseRecordRespVO.java | 43 ++++++++---
.../funds/purchase/PurchaseRecordMapper.java | 2 +-
.../system/enums/pay}/DurationUnitEnum.java | 19 ++---
.../enums/pay/IncomeExpenseTypeEnum.java | 9 ++-
.../system/enums/pay/InvoiceStatusEnum.java | 10 +--
.../system/enums/pay/TradeTypeEnum.java | 9 ++-
.../IncomeExpenseServiceImpl.java | 2 +-
.../funds/invoice/InvoiceServiceImpl.java | 16 ++--
.../funds/purchase/PurchaseServiceImpl.java | 2 +-
.../service/pay/PayOrderServiceImpl.java | 4 +-
.../service/pay/PayProductProcessor.java | 20 ++---
.../products/TimeUnitValidator.java | 4 +-
17 files changed, 219 insertions(+), 57 deletions(-)
create mode 100644 cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/annotations/EnumFormat.java
create mode 100644 cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/convert/BaseEnum.java
create mode 100644 cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/convert/EnumConvert.java
rename cf-module-system/{cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/products => cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay}/DurationUnitEnum.java (63%)
diff --git a/cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/annotations/EnumFormat.java b/cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/annotations/EnumFormat.java
new file mode 100644
index 000000000..d360025f9
--- /dev/null
+++ b/cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/annotations/EnumFormat.java
@@ -0,0 +1,25 @@
+package com.cf.imes.framework.excel.core.annotations;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * 字典格式化注解
+ *
+ * 实现将枚举的魔值,格式化成枚举的描述
+ *
+ * @author Gqr
+ * @since 2025/8/27 15:02
+ */
+@Target({ElementType.FIELD})
+@Retention(RetentionPolicy.RUNTIME)
+public @interface EnumFormat {
+ /**
+ * 对应的枚举类型
+ *
+ * @return
+ */
+ Class extends Enum> value();
+}
diff --git a/cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/convert/BaseEnum.java b/cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/convert/BaseEnum.java
new file mode 100644
index 000000000..512dfd4f1
--- /dev/null
+++ b/cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/convert/BaseEnum.java
@@ -0,0 +1,25 @@
+package com.cf.imes.framework.excel.core.convert;
+
+/**
+ * 基础枚举接口
+ *
+ * 用于easyexcel convert
+ *
+ * @author Gqr
+ * @since 2025/8/27 11:51
+ */
+public interface BaseEnum {
+ /**
+ * 魔值
+ *
+ * @return
+ */
+ Integer getCode();
+
+ /**
+ * 描述
+ *
+ * @return
+ */
+ String getDesc();
+}
diff --git a/cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/convert/EnumConvert.java b/cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/convert/EnumConvert.java
new file mode 100644
index 000000000..53844f790
--- /dev/null
+++ b/cf-framework/cf-spring-boot-starter-excel/src/main/java/com/cf/imes/framework/excel/core/convert/EnumConvert.java
@@ -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 EnumConvert implements Converter {
+ @Override
+ public Class> supportJavaTypeKey() {
+ return Integer.class; // 泛型接口
+ }
+
+ @Override
+ public CellDataTypeEnum supportExcelTypeKey() {
+ return CellDataTypeEnum.STRING; // Excel 存字符串
+ }
+
+ // 写出:Integer -> 枚举描述
+ @Override
+ public WriteCellData convertToExcelData(WriteConverterContext context) {
+ Integer 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()) {
+ BaseEnum baseEnum = (BaseEnum) e;
+ if (baseEnum.getCode().equals(code)) {
+ return new WriteCellData<>(baseEnum.getDesc());
+ }
+ }
+ }
+ return new WriteCellData<>("");
+ }
+
+ // 读入:枚举描述 -> Integer code
+ @Override
+ public Integer convertToJavaData(ReadConverterContext> context) {
+ String desc = context.getReadCellData().getStringValue();
+ if (desc == null) {
+ return null;
+ }
+ Class extends Enum>> enumClass = getEnumClass(context.getContentProperty().getField());
+ if (enumClass != null) {
+ for (Object e : enumClass.getEnumConstants()) {
+ BaseEnum baseEnum = (BaseEnum) e;
+ if (baseEnum.getDesc().equals(desc)) {
+ return baseEnum.getCode();
+ }
+ }
+ }
+ return null;
+ }
+
+ private Class extends Enum>> getEnumClass(Field field) {
+ EnumFormat annotation = field.getAnnotation(EnumFormat.class);
+ return annotation != null ? annotation.value() : null;
+ }
+}
diff --git a/cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/DictTypeConstants.java b/cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/DictTypeConstants.java
index 10cde325c..f192a641c 100644
--- a/cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/DictTypeConstants.java
+++ b/cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/DictTypeConstants.java
@@ -32,5 +32,6 @@ public class DictTypeConstants {
public static final String ADVERTISEMENT_POSITION = "advertisement_position";
+ public static final String PURCHASE_PAYMENT_METHOD = "diffPayStyle"; // 产品购买方式
}
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/funds/balancedetails/vo/BalanceDetailsRespVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/funds/balancedetails/vo/BalanceDetailsRespVO.java
index 620aa5236..ffe68d332 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/funds/balancedetails/vo/BalanceDetailsRespVO.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/funds/balancedetails/vo/BalanceDetailsRespVO.java
@@ -1,6 +1,11 @@
package com.cf.imes.module.system.controller.admin.funds.balancedetails.vo;
+import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
+import com.cf.imes.framework.excel.core.annotations.EnumFormat;
+import com.cf.imes.framework.excel.core.convert.EnumConvert;
+import com.cf.imes.module.system.enums.pay.IncomeExpenseTypeEnum;
+import com.cf.imes.module.system.enums.pay.TradeTypeEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@@ -17,11 +22,14 @@ public class BalanceDetailsRespVO {
@Schema(description = "交易类型,0充值 1软件购买")
- @ExcelProperty("交易类型")
+ @ExcelProperty(value = "交易类型",converter = EnumConvert.class)
+ @EnumFormat(value = TradeTypeEnum.class)
private Integer tradeType;
@Schema(description = "收支类型,0收入 1支出")
+ @ExcelProperty(value = "收支类型",converter = EnumConvert.class)
+ @EnumFormat(value = IncomeExpenseTypeEnum.class)
private Integer incomeExpenseType;
@@ -71,11 +79,13 @@ public class BalanceDetailsRespVO {
@Schema(description = "支出/入账现金金额")
+ @ExcelIgnore
private BigDecimal cashAmountChange;
@Schema(description = "支出/入账赠送金金额")
+ @ExcelIgnore
private BigDecimal giftAmountChange;
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/funds/purchase/vo/PurchaseRecordRespVO.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/funds/purchase/vo/PurchaseRecordRespVO.java
index f52803678..f9d414964 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/funds/purchase/vo/PurchaseRecordRespVO.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/controller/admin/funds/purchase/vo/PurchaseRecordRespVO.java
@@ -1,6 +1,14 @@
package com.cf.imes.module.system.controller.admin.funds.purchase.vo;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.cf.imes.framework.excel.core.annotations.DictFormat;
+import com.cf.imes.framework.excel.core.annotations.EnumFormat;
+import com.cf.imes.framework.excel.core.convert.DictConvert;
+import com.cf.imes.framework.excel.core.convert.EnumConvert;
+import com.cf.imes.module.system.enums.DictTypeConstants;
+import com.cf.imes.module.system.enums.pay.InvoiceStatusEnum;
+import com.cf.imes.module.system.enums.pay.DurationUnitEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@@ -13,78 +21,93 @@ public class PurchaseRecordRespVO {
@Schema(description = "购买记录ID")
+ @ExcelProperty("购买记录编码")
private Long id;
@Schema(description = "组织ID")
+ @ExcelProperty("组织编号")
private Long organId;
@Schema(description = "产品ID")
+ @ExcelProperty("产品编号")
private Long productId;
@Schema(description = "产品明细ID")
+ @ExcelProperty("产品明细编号")
private Long productDetailsId;
@Schema(description = "产品名称")
+ @ExcelProperty("产品名称")
private String productName;
@Schema(description = "购买时长", example = "1")
+ @ExcelProperty("购买时长")
private Integer purchaseDuration;
@Schema(description = "购买时长单位,0:年、1:月、2:日", example = "1")
+ @ExcelProperty(value = "购买时长单位", converter = EnumConvert.class)
+ @EnumFormat(value = DurationUnitEnum.class)
private Integer purchaseDurationUnit;
@Schema(description = "赠送时长", example = "1")
+ @ExcelProperty("赠送时长")
private Integer giftDuration;
@Schema(description = "赠送时长单位,0:年、1:月、2:日", example = "1")
+ @ExcelProperty(value = "赠送时长单位", converter = EnumConvert.class)
+ @EnumFormat(value = DurationUnitEnum.class)
private Integer giftDurationUnit;
@Schema(description = "支付方式")
+ @ExcelProperty(value = "支付方式", converter = DictConvert.class)
+ @DictFormat(DictTypeConstants.PURCHASE_PAYMENT_METHOD)
private Integer paymentMethod;
@Schema(description = "订单总额")
+ @ExcelProperty("订单总额")
private BigDecimal totalAmount;
@Schema(description = "现金余额支出")
+ @ExcelProperty("现金余额支出")
private BigDecimal accountBalanceSpent;
@Schema(description = "支付宝支出")
+ @ExcelProperty("支付宝支出")
private BigDecimal alipaySpent;
@Schema(description = "微信支出")
+ @ExcelProperty("微信支出")
private BigDecimal wechatSpent;
@Schema(description = "赠送金")
+ @ExcelProperty("赠送金")
private BigDecimal giftMoneySpent;
-
- @Schema(description = "货币类型")
- private Integer currency;
-
-
- @Schema(description = "货币单位")
- private String currencyUnit;
-
-
@Schema(description = "是否开票")
+ @ExcelProperty(value = "是否开票", converter = EnumConvert.class)
+ @EnumFormat(value = InvoiceStatusEnum.class)
private Integer isInvocing;
-
@Schema(description = "购买时间")
+ @ExcelProperty("购买时间")
private LocalDateTime createTime;
+ @Schema(description = "失效时间")
+ @ExcelProperty("失效时间")
+ private LocalDateTime endTime;
@Schema(description = "操作人")
+ @ExcelProperty("操作人")
private String creator;
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/funds/purchase/PurchaseRecordMapper.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/funds/purchase/PurchaseRecordMapper.java
index 6e13d9397..7b278d42e 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/funds/purchase/PurchaseRecordMapper.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/funds/purchase/PurchaseRecordMapper.java
@@ -59,7 +59,7 @@ public interface PurchaseRecordMapper extends BaseMapperX {
.leIfPresent(PurchaseRecordDO::getTotalAmount, ObjectUtil.isNotNull(pageReqVO.getInvoiceAmount()) ? pageReqVO.getInvoiceAmount()[1] : null)
.eq(PurchaseRecordDO::getOrganId, SecurityFrameworkUtils.getUserOrganId())
.eq(PurchaseRecordDO::getDeleted, false)
- .in(PurchaseRecordDO::getIsInvocing, InvoiceStatusEnum.INVOICABLE.getStatus(), InvoiceStatusEnum.INVOICINGFAILED.getStatus())
+ .in(PurchaseRecordDO::getIsInvocing, InvoiceStatusEnum.INVOICABLE.getCode(), InvoiceStatusEnum.INVOICINGFAILED.getCode())
.orderByDesc(PurchaseRecordDO::getCreateTime)
);
diff --git a/cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/products/DurationUnitEnum.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/DurationUnitEnum.java
similarity index 63%
rename from cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/products/DurationUnitEnum.java
rename to cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/DurationUnitEnum.java
index b96a34a4b..f982a7c9f 100644
--- a/cf-module-system/cf-module-system-api/src/main/java/com/cf/imes/module/system/enums/products/DurationUnitEnum.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/DurationUnitEnum.java
@@ -1,6 +1,7 @@
-package com.cf.imes.module.system.enums.products;
+package com.cf.imes.module.system.enums.pay;
import com.cf.imes.framework.common.core.IntArrayValuable;
+import com.cf.imes.framework.excel.core.convert.BaseEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;
@@ -14,22 +15,22 @@ import java.util.Objects;
*/
@Getter
@AllArgsConstructor
-public enum DurationUnitEnum implements IntArrayValuable {
+public enum DurationUnitEnum implements IntArrayValuable, BaseEnum {
YEAR(0, "年"),
MONTH(1, "月"),
DAY(2, "日");
- public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(DurationUnitEnum::getStatus).toArray();
+ public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(DurationUnitEnum::getCode).toArray();
/**
* 状态值
*/
- private final Integer status;
+ private final Integer code;
/**
* 状态名
*/
- private final String name;
+ private final String desc;
@Override
public int[] array() {
@@ -37,20 +38,20 @@ public enum DurationUnitEnum implements IntArrayValuable {
}
public static boolean isYear(String name) {
- return Objects.equals(YEAR.name, name);
+ return Objects.equals(YEAR.code, name);
}
public static boolean isMonth(String name) {
- return Objects.equals(MONTH.name, name);
+ return Objects.equals(MONTH.code, name);
}
public static boolean isDay(String name) {
- return Objects.equals(DAY.name, name);
+ return Objects.equals(DAY.code, name);
}
public static DurationUnitEnum fromStatus(Integer status) {
return Arrays.stream(values())
- .filter(bean -> Objects.equals(bean.status, status))
+ .filter(bean -> Objects.equals(bean.code, status))
.findFirst()
.orElse(null);
}
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/IncomeExpenseTypeEnum.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/IncomeExpenseTypeEnum.java
index 9c4a7b134..c0b028020 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/IncomeExpenseTypeEnum.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/IncomeExpenseTypeEnum.java
@@ -2,6 +2,7 @@ package com.cf.imes.module.system.enums.pay;
import cn.hutool.core.util.ObjectUtil;
+import com.cf.imes.framework.excel.core.convert.BaseEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;
@@ -11,7 +12,7 @@ import lombok.Getter;
@Getter
@AllArgsConstructor
-public enum IncomeExpenseTypeEnum {
+public enum IncomeExpenseTypeEnum implements BaseEnum {
/**
* 收入
@@ -27,12 +28,12 @@ public enum IncomeExpenseTypeEnum {
/**
* 类型
*/
- private final Integer type;
+ private final Integer code;
/**
* 名称
*/
- private final String name;
+ private final String desc;
@@ -41,7 +42,7 @@ public enum IncomeExpenseTypeEnum {
return null;
}
for (IncomeExpenseTypeEnum value : values()) {
- if (ObjectUtil.equal(value.getType(), type)) {
+ if (ObjectUtil.equal(value.code, type)) {
return value;
}
}
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/InvoiceStatusEnum.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/InvoiceStatusEnum.java
index 0be96ca46..55d2a93db 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/InvoiceStatusEnum.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/InvoiceStatusEnum.java
@@ -2,6 +2,7 @@ package com.cf.imes.module.system.enums.pay;
import cn.hutool.core.util.ObjectUtil;
+import com.cf.imes.framework.excel.core.convert.BaseEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;
@@ -11,7 +12,7 @@ import lombok.Getter;
@Getter
@AllArgsConstructor
-public enum InvoiceStatusEnum {
+public enum InvoiceStatusEnum implements BaseEnum {
/**
@@ -36,13 +37,12 @@ public enum InvoiceStatusEnum {
/**
* 状态
*/
- private final Integer status;
+ private final Integer code;
/**
* 名称
*/
- private final String name;
-
+ private final String desc;
public static InvoiceStatusEnum fromType(Integer status) {
@@ -50,7 +50,7 @@ public enum InvoiceStatusEnum {
return null;
}
for (InvoiceStatusEnum value : values()) {
- if (ObjectUtil.equal(value.getStatus(), status)) {
+ if (ObjectUtil.equal(value.code, status)) {
return value;
}
}
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/TradeTypeEnum.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/TradeTypeEnum.java
index 0134c7806..97b17f0b1 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/TradeTypeEnum.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/TradeTypeEnum.java
@@ -1,5 +1,6 @@
package com.cf.imes.module.system.enums.pay;
+import com.cf.imes.framework.excel.core.convert.BaseEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;
@@ -10,19 +11,21 @@ import lombok.Getter;
*/
@Getter
@AllArgsConstructor
-public enum TradeTypeEnum {
+public enum TradeTypeEnum implements BaseEnum {
/**
* 充值
*/
- RECHARGE(0),
+ RECHARGE(0, "充值"),
/**
* 产品购买
*/
- PRODUCT(1);
+ PRODUCT(1, "产品购买");
private final Integer code;
+ private final String desc;
+
public static TradeTypeEnum fromCode(Integer code) {
for (TradeTypeEnum value : TradeTypeEnum.values()) {
if (value.code.equals(code)) {
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/incomeandexpense/IncomeExpenseServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/incomeandexpense/IncomeExpenseServiceImpl.java
index e3fee370e..4414f995a 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/incomeandexpense/IncomeExpenseServiceImpl.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/incomeandexpense/IncomeExpenseServiceImpl.java
@@ -38,7 +38,7 @@ public class IncomeExpenseServiceImpl implements IncomeExpenseService {
// 根据收支类型赋值对应的 支出/收入字段
result.getList().forEach(f -> {
- if (IncomeExpenseTypeEnum.INCOME.getType().equals(f.getIncomeExpenseType())) {
+ if (IncomeExpenseTypeEnum.INCOME.getCode().equals(f.getIncomeExpenseType())) {
f.setEntryAmount(f.getCashAmountChange());
f.setEntryGiftAmount(f.getGiftAmountChange());
} else {
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/invoice/InvoiceServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/invoice/InvoiceServiceImpl.java
index 0d7624284..83da87301 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/invoice/InvoiceServiceImpl.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/invoice/InvoiceServiceImpl.java
@@ -159,7 +159,7 @@ public class InvoiceServiceImpl implements InvoiceService {
.eq(PurchaseRecordDO::getOrganId, organId)
.eq(PurchaseRecordDO::getDeleted, false)
.in(PurchaseRecordDO::getId, purchaseRecordId)
- .set(PurchaseRecordDO::getIsInvocing, InvoiceStatusEnum.PENDINGINVOICING.getStatus()));
+ .set(PurchaseRecordDO::getIsInvocing, InvoiceStatusEnum.PENDINGINVOICING.getCode()));
if (update != purchaseRecordId.size()) {
throw new ServiceException(ORG_INVOICE_PURCHASE_RECORD_UPDATE_NUM_NOT_MATCH_ERROR);
}
@@ -176,7 +176,7 @@ public class InvoiceServiceImpl implements InvoiceService {
.invoiceAmount(invoicableAmount)
.invoiceTitleId(invoiceTitleInfoDO.getId())
.invoiceTitleInfo(zipString(toJsonString(invoiceTitleInfoDO)))
- .status(InvoiceStatusEnum.PENDINGINVOICING.getStatus())
+ .status(InvoiceStatusEnum.PENDINGINVOICING.getCode())
.build());
}
@@ -241,8 +241,8 @@ public class InvoiceServiceImpl implements InvoiceService {
// 校验发票申请记录是否存在
InvoiceRecordsDO invoiceRecordsDO = validateInvoiceExists(reqVO.getId());
- if (invoiceRecordsDO.getStatus().equals(InvoiceStatusEnum.INVOICINGFAILED.getStatus())
- || invoiceRecordsDO.getStatus().equals(InvoiceStatusEnum.INVOICINGSUCCESSFUL.getStatus())) {
+ if (invoiceRecordsDO.getStatus().equals(InvoiceStatusEnum.INVOICINGFAILED.getCode())
+ || invoiceRecordsDO.getStatus().equals(InvoiceStatusEnum.INVOICINGSUCCESSFUL.getCode())) {
throw exception(THIS_INVOICE_IS_FAIL);
}
@@ -254,10 +254,10 @@ public class InvoiceServiceImpl implements InvoiceService {
if (reqVO.isAgree()) {
// 同意开票
// 更新发票申请记录状态
- invoiceRecordsDO.setStatus(InvoiceStatusEnum.INVOICINGSUCCESSFUL.getStatus());
+ invoiceRecordsDO.setStatus(InvoiceStatusEnum.INVOICINGSUCCESSFUL.getCode());
invoiceRecordsDO.setRemark(reqVO.getRemark());
// 更新购买记录状态
- purchaseRecordDOS.forEach(f -> f.setIsInvocing(InvoiceStatusEnum.INVOICINGSUCCESSFUL.getStatus()));
+ purchaseRecordDOS.forEach(f -> f.setIsInvocing(InvoiceStatusEnum.INVOICINGSUCCESSFUL.getCode()));
// 发票文件入库
if (ObjectUtil.isNull(file) || file.isEmpty()) {
@@ -269,12 +269,12 @@ public class InvoiceServiceImpl implements InvoiceService {
} else {
// 拒绝开票
// 更新发票申请记录状态
- invoiceRecordsDO.setStatus(InvoiceStatusEnum.INVOICINGFAILED.getStatus());
+ invoiceRecordsDO.setStatus(InvoiceStatusEnum.INVOICINGFAILED.getCode());
String remark = Optional.ofNullable(reqVO.getRemark()).orElseThrow(() -> new ServiceException(INVOICING_REJECT_REASON));
invoiceRecordsDO.setRemark(remark);
// 更新购买记录状态
- purchaseRecordDOS.forEach(f -> f.setIsInvocing(InvoiceStatusEnum.INVOICABLE.getStatus()));
+ purchaseRecordDOS.forEach(f -> f.setIsInvocing(InvoiceStatusEnum.INVOICABLE.getCode()));
}
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/purchase/PurchaseServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/purchase/PurchaseServiceImpl.java
index 149ede524..03db262b4 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/purchase/PurchaseServiceImpl.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/funds/purchase/PurchaseServiceImpl.java
@@ -65,7 +65,7 @@ public class PurchaseServiceImpl implements PurchaseService {
purchaseRecordMapper.update(new LambdaUpdateWrapper()
.eq(PurchaseRecordDO::getId, purchaseRecordId)
.eq(PurchaseRecordDO::getOrganId, organId)
- .set(PurchaseRecordDO::getIsInvocing, InvoiceStatusEnum.INVOICABLE.getStatus()));
+ .set(PurchaseRecordDO::getIsInvocing, InvoiceStatusEnum.INVOICABLE.getCode()));
}
@Override
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayOrderServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayOrderServiceImpl.java
index 136e965d7..92fdef5d8 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayOrderServiceImpl.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayOrderServiceImpl.java
@@ -513,7 +513,7 @@ public class PayOrderServiceImpl implements PayOrderService {
.organId(organId)
.businessNo(payNo)
.tradeType(TradeTypeEnum.RECHARGE.getCode())
- .incomeExpenseType(IncomeExpenseTypeEnum.INCOME.getType())
+ .incomeExpenseType(IncomeExpenseTypeEnum.INCOME.getCode())
.cashAmountChange(price)
.giftAmountChange(giftAmount)
.availableAmount(rechargeAmountRespVO.getAvailableAmount())
@@ -629,7 +629,7 @@ public class PayOrderServiceImpl implements PayOrderService {
IncomeExpenseDetailsDO incomeExpenseDetailsDO = IncomeExpenseDetailsDO.builder()
.organId(organId)
.tradeType(TradeTypeEnum.PRODUCT.getCode())
- .incomeExpenseType(IncomeExpenseTypeEnum.INCOME.getType())
+ .incomeExpenseType(IncomeExpenseTypeEnum.INCOME.getCode())
.cashAmountChange(accountBalanceSpent)
.giftAmountChange(giftMoneySpent)
.availableAmount(organRefundProductRespVO.getAvailableAmount())
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayProductProcessor.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayProductProcessor.java
index 3a97da834..a3fde7216 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayProductProcessor.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayProductProcessor.java
@@ -21,7 +21,7 @@ import com.cf.imes.module.system.enums.pay.PayConstants;
import com.cf.imes.module.system.enums.pay.PayOrderStatusEnum;
import com.cf.imes.module.system.enums.pay.PayProductChannelCodeEnum;
import com.cf.imes.module.system.enums.pay.TradeTypeEnum;
-import com.cf.imes.module.system.enums.products.DurationUnitEnum;
+import com.cf.imes.module.system.enums.pay.DurationUnitEnum;
import com.cf.imes.module.system.framework.snowflake.config.MybatisIdProperties;
import org.apache.commons.lang3.StringUtils;
@@ -132,7 +132,7 @@ public class PayProductProcessor {
.paymentMethod(PayProductChannelCodeEnum.BALANCE_ONLY.getCode())
.totalAmount(price)
.accountBalanceSpent(price)
- .isInvocing(InvoiceStatusEnum.INVOICABLE.getStatus())
+ .isInvocing(InvoiceStatusEnum.INVOICABLE.getCode())
.build();
purchaseRecordDO.setEndTime(calculateEndTime(purchaseRecordDO.getStartTime(),
purchaseRecordDO.getPurchaseDuration(), purchaseRecordDO.getPurchaseDurationUnit(),
@@ -145,7 +145,7 @@ public class PayProductProcessor {
.organId(organId)
.purchaseId(purchaseRecordDO.getId())
.tradeType(TradeTypeEnum.PRODUCT.getCode())
- .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getType())
+ .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode())
.cashAmountChange(price)
.availableAmount(newBalance.add(giftAmount))
.amount(newBalance)
@@ -183,7 +183,7 @@ public class PayProductProcessor {
.paymentMethod(PayProductChannelCodeEnum.BALANCE_ONLY.getCode())
.totalAmount(price)
.accountBalanceSpent(price)
- .isInvocing(InvoiceStatusEnum.INVOICABLE.getStatus())
+ .isInvocing(InvoiceStatusEnum.INVOICABLE.getCode())
.build();
purchaseRecordDO.setEndTime(calculateEndTime(purchaseRecordDO.getStartTime(),
purchaseRecordDO.getPurchaseDuration(), purchaseRecordDO.getPurchaseDurationUnit(),
@@ -196,7 +196,7 @@ public class PayProductProcessor {
.organId(organId)
.purchaseId(purchaseRecordDO.getId())
.tradeType(TradeTypeEnum.PRODUCT.getCode())
- .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getType())
+ .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode())
.giftAmountChange(price)
.availableAmount(amount.add(newGift))
.amount(amount)
@@ -300,7 +300,7 @@ public class PayProductProcessor {
.startTime(LocalDateTime.now())
.paymentMethod(PayProductChannelCodeEnum.BALANCE_AND_GIFT.getCode())
.totalAmount(price)
- .isInvocing(InvoiceStatusEnum.INVOICABLE.getStatus())
+ .isInvocing(InvoiceStatusEnum.INVOICABLE.getCode())
.build();
purchaseRecordDO.setEndTime(calculateEndTime(purchaseRecordDO.getStartTime(),
purchaseRecordDO.getPurchaseDuration(), purchaseRecordDO.getPurchaseDurationUnit(),
@@ -333,7 +333,7 @@ public class PayProductProcessor {
.organId(organId)
.purchaseId(purchaseRecordDO.getId())
.tradeType(TradeTypeEnum.PRODUCT.getCode())
- .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getType())
+ .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode())
.cashAmountChange(usedBalance)
.giftAmountChange(usedGift)
.availableAmount(newAmounta.add(newGift))
@@ -391,7 +391,7 @@ public class PayProductProcessor {
.organId(organId)
.purchaseId(purchaseRecordDO.getId())
.tradeType(TradeTypeEnum.PRODUCT.getCode())
- .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getType())
+ .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode())
.cashAmountChange(usedBalance)
.availableAmount(newAmounta.add(giftAmount))
.amount(newAmounta)
@@ -461,7 +461,7 @@ public class PayProductProcessor {
.organId(organId)
.purchaseId(purchaseRecordDO.getId())
.tradeType(TradeTypeEnum.PRODUCT.getCode())
- .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getType())
+ .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode())
.giftAmountChange(usedGift)
.availableAmount(amount.add(newGift))
.amount(amount)
@@ -539,7 +539,7 @@ public class PayProductProcessor {
.organId(organId)
.purchaseId(purchaseRecordDO.getId())
.tradeType(TradeTypeEnum.PRODUCT.getCode())
- .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getType())
+ .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode())
.cashAmountChange(usedBalance)
.giftAmountChange(usedGift)
.availableAmount(newAmounta.add(newGift))
diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/validation/products/TimeUnitValidator.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/validation/products/TimeUnitValidator.java
index 966dad672..19e77a828 100644
--- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/validation/products/TimeUnitValidator.java
+++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/validation/products/TimeUnitValidator.java
@@ -1,7 +1,7 @@
package com.cf.imes.module.system.validation.products;
import cn.hutool.core.util.ObjectUtil;
-import com.cf.imes.module.system.enums.products.DurationUnitEnum;
+import com.cf.imes.module.system.enums.pay.DurationUnitEnum;
import jakarta.validation.ConstraintValidator;
import jakarta.validation.ConstraintValidatorContext;
@@ -21,7 +21,7 @@ public class TimeUnitValidator implements ConstraintValidator