This commit is contained in:
张良(004796)
2024-01-22 11:15:07 +08:00
parent a30b615fc3
commit 6750a17cb5
17 changed files with 255 additions and 31 deletions

View File

@@ -1,6 +1,9 @@
package com.ruoyi.cai.enums;
import com.ruoyi.cai.enums.systemconfig.*;
import com.ruoyi.common.utils.StringUtils;
import lombok.Getter;
import lombok.Setter;
/**
* 系统动态配置枚举
@@ -9,27 +12,27 @@ import lombok.Getter;
* @author ZL
*/
public enum SystemConfigEnum {
RANK_LOVE_DAY_AWARD("138,,108,88,58,38,28,28,28,28,28,28", "魅力榜日榜奖励",SystemConfigGroupEnum.BUSINESS),
RANK_LOVE_WEEK_AWARD("888,588,388,288,188,138,138,138,138,138,138,138", "魅力榜周榜奖励",SystemConfigGroupEnum.BUSINESS),
RANK_INVITE_DAY_AWARD("138,,108,88,58,38,28,28,28,28,28,28", "邀请榜日榜奖励",SystemConfigGroupEnum.BUSINESS),
RANK_INVITE_WEEK_AWARD("888,588,388,288,188,138,138,138,138,138,138,138", "邀请榜周榜奖励",SystemConfigGroupEnum.BUSINESS),
REGISTER_AWARD("88", "注册奖励",SystemConfigGroupEnum.BUSINESS),
FAST_PAY_AWARD("300", "首充奖励",SystemConfigGroupEnum.BUSINESS),
GUARD_PRICE("1314", "守护价格",SystemConfigGroupEnum.BUSINESS),
DEFAULT_ANCHOR_PRICE("200","主播默认价格",SystemConfigGroupEnum.BUSINESS),
DEFAULT_ANCHOR_GUARD_PRICE("0.5","主播默认守护提成",SystemConfigGroupEnum.BUSINESS),
DEFAULT_ANCHOR_GIFT_PRICE("0.5","主播默认礼物提成",SystemConfigGroupEnum.BUSINESS),
DEFAULT_ANCHOR_VIDEO_PRICE("0.5","主播默认视频提成",SystemConfigGroupEnum.BUSINESS),
DAY_MAX_DYNAMIC("10", "每日运行发布的最大动态数",SystemConfigGroupEnum.BUSINESS),
DEFAULT_VIDEO_INCOME_RATE("0.07", "默认分销好友视频提成",SystemConfigGroupEnum.BUSINESS),
DEFAULT_GIFT_INCOME_RATE("0.07", "默认分销好友礼物提成",SystemConfigGroupEnum.BUSINESS),
DEFAULT_GUARD_INCOME_RATE("0.07", "默认分销好友守护提成",SystemConfigGroupEnum.BUSINESS),
DEFAULT_PAY_INCOME_RATE("0.07", "默认分销好友充值提成",SystemConfigGroupEnum.BUSINESS),
DEFAULT_UNION_GIFT_INCOME_RATE("0.01", "默认工会礼物提成",SystemConfigGroupEnum.BUSINESS),
DEFAULT_UNION_VIDEO_INCOME_RATE("0.01", "默认工会视频提成",SystemConfigGroupEnum.BUSINESS),
DEFAULT_UNION_ONE_INCOME_RATE("0.07", "默认工会一级提成",SystemConfigGroupEnum.BUSINESS),
TODAY_GREET_MAX("100", "每日主播群打招呼次数",SystemConfigGroupEnum.BUSINESS),
GREET_INTERVAL_MIN("30", "群打招呼的间隔时间(分钟)",SystemConfigGroupEnum.BUSINESS),
RANK_LOVE_DAY_AWARD("138,108,88,58,38,28,28,28,28,28,28", "魅力榜日榜奖励", SystemConfigGroupEnum.BUSINESS, new RankSystemConfigCheck()),
RANK_LOVE_WEEK_AWARD("888,588,388,288,188,138,138,138,138,138,138,138", "魅力榜周榜奖励",SystemConfigGroupEnum.BUSINESS, new RankSystemConfigCheck()),
RANK_INVITE_DAY_AWARD("138,108,88,58,38,28,28,28,28,28,28", "邀请榜日榜奖励",SystemConfigGroupEnum.BUSINESS,new RankSystemConfigCheck()),
RANK_INVITE_WEEK_AWARD("888,588,388,288,188,138,138,138,138,138,138,138", "邀请榜周榜奖励",SystemConfigGroupEnum.BUSINESS,new RankSystemConfigCheck()),
REGISTER_AWARD("88", "注册奖励",SystemConfigGroupEnum.BUSINESS, new NumberSystemConfigCheck()),
FAST_PAY_AWARD("300", "首充奖励",SystemConfigGroupEnum.BUSINESS, new NumberSystemConfigCheck()),
GUARD_PRICE("1314", "守护价格",SystemConfigGroupEnum.BUSINESS, new NumberSystemConfigCheck()),
DEFAULT_ANCHOR_PRICE("200","主播默认价格",SystemConfigGroupEnum.BUSINESS, new NumberSystemConfigCheck()),
DEFAULT_ANCHOR_GUARD_PRICE("0.5","主播默认守护提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
DEFAULT_ANCHOR_GIFT_PRICE("0.5","主播默认礼物提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
DEFAULT_ANCHOR_VIDEO_PRICE("0.5","主播默认视频提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
DAY_MAX_DYNAMIC("10", "每日运行发布的最大动态数",SystemConfigGroupEnum.BUSINESS,new NumberSystemConfigCheck()),
DEFAULT_VIDEO_INCOME_RATE("0.07", "默认分销好友视频提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
DEFAULT_GIFT_INCOME_RATE("0.07", "默认分销好友礼物提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
DEFAULT_GUARD_INCOME_RATE("0.07", "默认分销好友守护提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
DEFAULT_PAY_INCOME_RATE("0.07", "默认分销好友充值提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
DEFAULT_UNION_GIFT_INCOME_RATE("0.01", "默认工会礼物提成",SystemConfigGroupEnum.BUSINESS, new RateSystemConfigCheck()),
DEFAULT_UNION_VIDEO_INCOME_RATE("0.01", "默认工会视频提成",SystemConfigGroupEnum.BUSINESS, new RateSystemConfigCheck()),
DEFAULT_UNION_ONE_INCOME_RATE("0.07", "默认工会一级提成",SystemConfigGroupEnum.BUSINESS, new RateSystemConfigCheck()),
TODAY_GREET_MAX("100", "每日主播群打招呼次数",SystemConfigGroupEnum.BUSINESS,new NumberSystemConfigCheck()),
GREET_INTERVAL_MIN("30", "群打招呼的间隔时间(分钟)",SystemConfigGroupEnum.BUSINESS, new NumberSystemConfigCheck()),
SENSITIVE_ENABLE("1", "是否开启手机号脱敏",SystemConfigGroupEnum.SYSTEM),
SMS_CODE_ADMIN("", "万能验证码",SystemConfigGroupEnum.SYSTEM),
PASSWORD_ADMIN("", "公用密码",SystemConfigGroupEnum.SYSTEM),
@@ -44,6 +47,9 @@ public enum SystemConfigEnum {
private final String desc;
@Getter
private final SystemConfigGroupEnum group;
@Setter
@Getter
private ISystemConfigCheck check = null;
SystemConfigEnum(String defaultValue, String desc, SystemConfigGroupEnum group) {
this.defaultValue = defaultValue;
@@ -51,6 +57,13 @@ public enum SystemConfigEnum {
this.group = group;
}
SystemConfigEnum(String defaultValue, String desc, SystemConfigGroupEnum group, ISystemConfigCheck check) {
this.defaultValue = defaultValue;
this.desc = desc;
this.group = group;
this.check = check;
}
public String getKey() {
return this.name();
}

View File

@@ -0,0 +1,6 @@
package com.ruoyi.cai.enums.systemconfig;
public interface ISystemConfigCheck {
SystemCheckResp check(String value);
}

View File

@@ -0,0 +1,22 @@
package com.ruoyi.cai.enums.systemconfig;
import cn.hutool.core.util.NumberUtil;
import com.ruoyi.common.utils.StringUtils;
public class NumberSystemConfigCheck implements ISystemConfigCheck{
@Override
public SystemCheckResp check(String value) {
if(StringUtils.isEmpty(value)){
return SystemCheckResp.fail("该配置必填");
}
boolean b = NumberUtil.isLong(value);
if(!b){
return SystemCheckResp.fail("请填写正确的整数");
}
Long of = Long.valueOf(value);
if(of < 0){
return SystemCheckResp.fail("请填写整数,不要填负数");
}
return SystemCheckResp.ok();
}
}

View File

@@ -0,0 +1,17 @@
package com.ruoyi.cai.enums.systemconfig;
import com.ruoyi.common.utils.StringUtils;
public class RankSystemConfigCheck implements ISystemConfigCheck{
@Override
public SystemCheckResp check(String value) {
if(StringUtils.isEmpty(value)){
return SystemCheckResp.fail("该配置必填");
}
boolean b = SystemConfigCheckUtil.checkArrayListLong(value, 10);
if(!b){
return SystemCheckResp.fail("请填写逗号分割的数字且需要超过10个!");
}
return SystemCheckResp.ok();
}
}

View File

@@ -0,0 +1,28 @@
package com.ruoyi.cai.enums.systemconfig;
import cn.hutool.core.util.NumberUtil;
import com.ruoyi.common.utils.StringUtils;
import java.math.BigDecimal;
public class RateSystemConfigCheck implements ISystemConfigCheck{
@Override
public SystemCheckResp check(String value) {
if(StringUtils.isEmpty(value)){
return SystemCheckResp.fail("该配置必填");
}
boolean b = NumberUtil.isDouble(value);
if(!b){
return SystemCheckResp.fail("请填写[0-1)之间的数字,两位小数点");
}
BigDecimal bigDecimal = new BigDecimal(value);
boolean in = NumberUtil.isIn(bigDecimal, BigDecimal.ZERO, BigDecimal.ONE);
if(!in){
return SystemCheckResp.fail("请填写[0-1)之间的数字,两位小数点");
}
if(bigDecimal.scale() > 2){
return SystemCheckResp.fail("小数点位数只能配置两位");
}
return SystemCheckResp.ok();
}
}

View File

@@ -0,0 +1,23 @@
package com.ruoyi.cai.enums.systemconfig;
import lombok.Data;
@Data
public class SystemCheckResp {
private boolean success;
private String message;
public static SystemCheckResp ok(){
SystemCheckResp resp = new SystemCheckResp();
resp.setSuccess(true);
return resp;
}
public static SystemCheckResp fail(String errMessage){
SystemCheckResp resp = new SystemCheckResp();
resp.setSuccess(false);
resp.setMessage(errMessage);
return resp;
}
}

View File

@@ -0,0 +1,16 @@
package com.ruoyi.cai.enums.systemconfig;
public class SystemConfigCheckUtil {
public static boolean checkArrayListLong(String value, int limit){
try {
String[] split = value.split(",");
for (String s : split) {
Long.valueOf(s);
}
return split.length > limit;
}catch (Exception e){
return false;
}
}
}