1、新增充值支持赠送金;2、充值活动增删改查完善;

This commit is contained in:
gaoqr
2025-08-20 11:21:00 +08:00
parent 8229f086dd
commit e25c340782
21 changed files with 276 additions and 104 deletions
@@ -435,6 +435,8 @@ public class ErrorCodeConstants {
public static final ErrorCode IMAGE_UPLOAD_ERROR = new ErrorCode(1_002_043_023, "图片上传失败,请重试或重新选择图片");
public static final ErrorCode ORGAN_RECHARGE_AMOUNT_UPDATE_ERROR = new ErrorCode(1_002_043_024, "组织充值失败,请检查组织资金数据");
public static final ErrorCode ORGAN_PRODUCT_PAY_AMOUNT_CHANGE_ERROR = new ErrorCode(1_002_043_025, "发起产品支付失败,组织资金已发生改变,请刷新或稍后再发起支付");
public static final ErrorCode PAY_RECHARGE_ACTIVITY_CHANNEL_MISMATCH_ERROR = new ErrorCode(1_002_043_026, "充值活动类型和支付渠道不匹配,请选择其他充值活动!");
public static final ErrorCode PAY_RECHARGE_ACTIVITY_EXPIRE_ERROR = new ErrorCode(1_002_043_027, "充值活动已结束,请选择其他充值活动!");
//=========== 支付相关 1-002-048-000 ============
public static final ErrorCode PAY_CHANNEL_NOT_SUPPORT = new ErrorCode(1_002_048_000, "暂不支持的支付渠道,请使用其他支付渠道");
@@ -448,8 +450,8 @@ public class ErrorCodeConstants {
public static final ErrorCode PAY_NOTIFY_PASSBACK_NOT_EXISTS_ERROR = new ErrorCode(1_002_048_008, "支付回调缺少passback_params,请检查支付渠道");
public static final ErrorCode PAY_NOTIFY_PASSBACK_TRADETYPE_NOT_SUPPORT_ERROR = new ErrorCode(1_002_048_009, "不支持的支付回调tradeType:【{}】,请检查支付渠道");
public static final ErrorCode PAY_PRODUCT_BALANCE_INSUFFICIENT = new ErrorCode(1_002_048_010, "现金余额不足,请选择其他支付方式!");
public static final ErrorCode PAY_PRODUCT_GIFT_BALANCE_INSUFFICIENT = new ErrorCode(1_002_048_010, "赠送金余额不足,请选择其他支付方式!");
public static final ErrorCode PAY_PRODUCT_AVAILABLE_BALANCE_INSUFFICIENT = new ErrorCode(1_002_048_010, "可用金(现金余额+赠送金)余额不足,请选择其他支付方式!");
public static final ErrorCode PAY_PRODUCT_GIFT_BALANCE_INSUFFICIENT = new ErrorCode(1_002_048_011, "赠送金余额不足,请选择其他支付方式!");
public static final ErrorCode PAY_PRODUCT_AVAILABLE_BALANCE_INSUFFICIENT = new ErrorCode(1_002_048_012, "可用金(现金余额+赠送金)余额不足,请选择其他支付方式!");
//=========== 产品相关 1-002-045-000 ============
public static final ErrorCode PRODUCTS_NO_EXIST = new ErrorCode(1_002_045_001, "当前产品不存在");
@@ -1,46 +0,0 @@
package com.cf.imes.module.system.enums.recharge;
import com.cf.imes.framework.common.core.IntArrayValuable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
/**
* 充值赠送类型枚举
*
* @author 晨丰科技
*/
@Getter
@AllArgsConstructor
public enum PurchaseTypeEnum implements IntArrayValuable {
ONE(0, "满X送X"),
TWO(1, "每满X送X");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(PurchaseTypeEnum::getStatus).toArray();
/**
* 状态值
*/
private final Integer status;
/**
* 状态名
*/
private final String name;
@Override
public int[] array() {
return ARRAYS;
}
public static boolean isOne(String name) {
return Objects.equals(ONE.name, name);
}
public static boolean isTwo(String name) {
return Objects.equals(TWO.name, name);
}
}
@@ -0,0 +1,67 @@
package com.cf.imes.module.system.enums.recharge;
import com.cf.imes.framework.common.core.IntArrayValuable;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
/**
* 充值赠送类型枚举
*
* @author 晨丰科技
*/
@Getter
@AllArgsConstructor
public enum RechargeGiftTypeEnum implements IntArrayValuable {
FULL_X_GIVE_X(0, "满X送X"),
EVERY_X_GIVE_X(1, "每满X送X");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(RechargeGiftTypeEnum::getStatus).toArray();
/**
* 状态值
*/
private final Integer status;
/**
* 状态名
*/
private final String name;
@Override
public int[] array() {
return ARRAYS;
}
/**
* 是否满X送X
*
* @param name
* @return
*/
public static boolean isFullGive(String name) {
return Objects.equals(FULL_X_GIVE_X.name, name);
}
/**
* 是否每满X送X
*
* @param name
* @return
*/
public static boolean isEveryGive(String name) {
return Objects.equals(EVERY_X_GIVE_X.name, name);
}
public static RechargeGiftTypeEnum fromStatus(Integer status) {
for (RechargeGiftTypeEnum value : values()) {
if (Objects.equals(value.status, status)) {
return value;
}
}
return null;
}
}
@@ -16,9 +16,9 @@ import java.util.Objects;
@AllArgsConstructor
public enum RechargeTypeEnum implements IntArrayValuable {
ONE(0, "微信、支付宝"),
TWO(1, "微信"),
THREE(2, "支付宝");
WECHAT_AND_ALIPAY(0, "微信、支付宝"),
WECHAT(1, "微信"),
ALIPAY(2, "支付宝");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(RechargeTypeEnum::getStatus).toArray();
@@ -36,15 +36,27 @@ public enum RechargeTypeEnum implements IntArrayValuable {
return ARRAYS;
}
public static boolean isOne(String name) {
return Objects.equals(ONE.name, name);
public static boolean isWechatAndAlipay(String name) {
return Objects.equals(WECHAT_AND_ALIPAY.name, name);
}
public static boolean isTwo(String name) {
return Objects.equals(TWO.name, name);
public static boolean isWechat(String name) {
return Objects.equals(WECHAT.name, name);
}
public static boolean isThree(String name) {
return Objects.equals(THREE.name, name);
public static boolean isAlipay(String name) {
return Objects.equals(ALIPAY.name, name);
}
public static boolean isWechatAndAlipay(Integer status) {
return Objects.equals(WECHAT_AND_ALIPAY.status, status);
}
public static boolean isWechat(Integer status) {
return Objects.equals(WECHAT.status, status);
}
public static boolean isAlipay(Integer status) {
return Objects.equals(ALIPAY.status, status);
}
}