From aa609d56b833b69ffcc09a90c53f8ff5bf682b09 Mon Sep 17 00:00:00 2001 From: nili Date: Thu, 13 Jun 2024 14:06:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E4=B8=8B=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../group/game/dao/bean/MatrixApp.java | 16 ++++---- .../game/service/bo/citrus/AppBasicInfo.java | 29 +++++++++----- .../game/service/bo/citrus/AppCashConfig.java | 40 ------------------- .../service/bo/matrix/AppNormalConfig.java | 30 ++++++++------ .../game/service/citrus/AdvRecordService.java | 2 +- .../game/service/citrus/CitrusAppService.java | 3 +- .../game/service/citrus/UserService.java | 11 ++--- .../matrix/MatrixAppConfigService.java | 15 +------ 8 files changed, 54 insertions(+), 92 deletions(-) delete mode 100644 game-service/src/main/java/awesome/group/game/service/bo/citrus/AppCashConfig.java diff --git a/game-dao/src/main/java/awesome/group/game/dao/bean/MatrixApp.java b/game-dao/src/main/java/awesome/group/game/dao/bean/MatrixApp.java index a2d26a0..6bd80e0 100644 --- a/game-dao/src/main/java/awesome/group/game/dao/bean/MatrixApp.java +++ b/game-dao/src/main/java/awesome/group/game/dao/bean/MatrixApp.java @@ -21,12 +21,12 @@ public class MatrixApp { private String umeng;//友盟的配置数据 private String aliPay;//支付宝的配置数据 private String wx;//微信的配置数据 - - private String moneyLadder; - private Integer noAuditMoney; - private String qqUrl; - private Integer dayLimit;//每日提现次数限制 - private Integer maxIncomeEachVideo;//0正常,1停用 - private String dayRates; - private Integer defaultRate; + private String normalConfig;//提现门槛等配置 +// private String moneyLadder; +// private Integer noAuditMoney; +// private String qqUrl; +// private Integer dayLimit;//每日提现次数限制 +// private Integer maxIncomeEachVideo; +// private String dayRates; +// private Integer defaultRate; } diff --git a/game-service/src/main/java/awesome/group/game/service/bo/citrus/AppBasicInfo.java b/game-service/src/main/java/awesome/group/game/service/bo/citrus/AppBasicInfo.java index 105e960..1a8dee6 100644 --- a/game-service/src/main/java/awesome/group/game/service/bo/citrus/AppBasicInfo.java +++ b/game-service/src/main/java/awesome/group/game/service/bo/citrus/AppBasicInfo.java @@ -1,26 +1,33 @@ package awesome.group.game.service.bo.citrus; import awesome.group.game.dao.bean.MatrixApp; +import awesome.group.game.service.bo.matrix.AppNormalConfig; +import com.google.gson.Gson; +import org.springframework.util.StringUtils; -public class AppBasicInfo extends AppCashConfig{ +public class AppBasicInfo extends AppNormalConfig { public String name; public String code; public String img; public String url; public Integer version; - public boolean enablePangolin = true; - public int pangolinDailyLimit = 10; - public int tencentDailyLimit = 10; public AppBasicInfo() { } - public AppBasicInfo(MatrixApp app) { - super(app); - this.name = app.getName(); - this.code = app.getCode(); - this.img = app.getImg(); - this.url = app.getUrl(); - this.version = app.getVersion(); + public static AppBasicInfo getBasic(MatrixApp app) { + AppBasicInfo res; + if (StringUtils.hasText(app.getNormalConfig())) { + Gson gson = new Gson(); + res = gson.fromJson(app.getNormalConfig(), AppBasicInfo.class); + } else { + res = new AppBasicInfo(); + } + res.name = app.getName(); + res.code = app.getCode(); + res.img = app.getImg(); + res.url = app.getUrl(); + res.version = app.getVersion(); + return res; } } diff --git a/game-service/src/main/java/awesome/group/game/service/bo/citrus/AppCashConfig.java b/game-service/src/main/java/awesome/group/game/service/bo/citrus/AppCashConfig.java deleted file mode 100644 index 93bb446..0000000 --- a/game-service/src/main/java/awesome/group/game/service/bo/citrus/AppCashConfig.java +++ /dev/null @@ -1,40 +0,0 @@ -package awesome.group.game.service.bo.citrus; - -import awesome.group.game.dao.bean.MatrixApp; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import org.springframework.util.StringUtils; - -import java.util.Arrays; -import java.util.List; - -public class AppCashConfig { - public List moneyLadder;//提现梯度,单位分 - public Integer noAuditMoney;//不需审核的金额,单位分 - public String qqUrl;//qq客服链接 - public Integer dayLimit;//每日提现次数 - - public AppCashConfig() { - } - - public AppCashConfig(MatrixApp app) { - Gson gson = new Gson(); - if (StringUtils.hasText(app.getMoneyLadder())) { - this.moneyLadder = gson.fromJson(app.getMoneyLadder(), new TypeToken>() { - }.getType()); - } else { - moneyLadder = Arrays.asList(30, 50, 100, 1000, 3000, 5000); - } - if (app.getNoAuditMoney() != null) { - this.noAuditMoney = app.getNoAuditMoney(); - } else { - this.noAuditMoney = 30; - } - this.qqUrl = app.getQqUrl(); - if (app.getDayLimit() != null) { - this.dayLimit = app.getDayLimit(); - } else { - this.dayLimit = 3; - } - } -} diff --git a/game-service/src/main/java/awesome/group/game/service/bo/matrix/AppNormalConfig.java b/game-service/src/main/java/awesome/group/game/service/bo/matrix/AppNormalConfig.java index 6f4b3df..4223b89 100644 --- a/game-service/src/main/java/awesome/group/game/service/bo/matrix/AppNormalConfig.java +++ b/game-service/src/main/java/awesome/group/game/service/bo/matrix/AppNormalConfig.java @@ -2,32 +2,38 @@ package awesome.group.game.service.bo.matrix; import awesome.group.game.dao.bean.MatrixApp; import awesome.group.game.dao.bean.MatrixUser; -import awesome.group.game.service.bo.citrus.AppCashConfig; import awesome.group.game.service.util.DateUtil; import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; +import java.util.Arrays; import java.util.List; -public class AppNormalConfig extends AppCashConfig { - public Integer maxIncomeEachVideo;//每个视频最大收益,单位分 +public class AppNormalConfig { + public Integer maxIncomeEachVideo = 100;//每个视频最大收益,单位分 public List dayRates; - public Integer defaultRate;//默认收益率 + public Integer defaultRate = 50;//默认收益率 + + public List moneyLadder = Arrays.asList(30, 50, 100, 1000, 3000, 5000);//提现梯度,单位分 + public Integer noAuditMoney = 30;//不需审核的金额,单位分 + public String qqUrl;//qq客服链接 + public Integer dayLimit = 3;//每日提现次数 + + public boolean enablePangolin = true; + public int pangolinDailyLimit = 10; + public int tencentDailyLimit = 10; public AppNormalConfig() { } - public AppNormalConfig(MatrixApp app) { - super(app); - this.maxIncomeEachVideo = app.getMaxIncomeEachVideo(); - if (StringUtils.hasText(app.getDayRates())) { + public static AppNormalConfig getConfig(MatrixApp app) { + if (StringUtils.hasText(app.getNormalConfig())) { Gson gson = new Gson(); - this.dayRates = gson.fromJson(app.getDayRates(), new TypeToken>() { - }.getType()); + return gson.fromJson(app.getNormalConfig(), AppNormalConfig.class); + } else { + return new AppNormalConfig(); } - this.defaultRate = app.getDefaultRate(); } public static class DayRate { diff --git a/game-service/src/main/java/awesome/group/game/service/citrus/AdvRecordService.java b/game-service/src/main/java/awesome/group/game/service/citrus/AdvRecordService.java index 996fac9..6bd38f1 100644 --- a/game-service/src/main/java/awesome/group/game/service/citrus/AdvRecordService.java +++ b/game-service/src/main/java/awesome/group/game/service/citrus/AdvRecordService.java @@ -43,7 +43,7 @@ public class AdvRecordService { } long ecpm = bo.advType > 1000 ? 0 : bo.ecpm; - AppNormalConfig config = new AppNormalConfig(app); + AppNormalConfig config = AppNormalConfig.getConfig(app); MatrixUser u = userMapper.selectById(uid); Assert.isTrue(u.getAppId().equals(app.getId()), "非法请求"); Assert.isTrue(!u.getStatus().equals(Constants.USER_BANNED), "账号异常,无法获得收益"); diff --git a/game-service/src/main/java/awesome/group/game/service/citrus/CitrusAppService.java b/game-service/src/main/java/awesome/group/game/service/citrus/CitrusAppService.java index d60666d..0450564 100644 --- a/game-service/src/main/java/awesome/group/game/service/citrus/CitrusAppService.java +++ b/game-service/src/main/java/awesome/group/game/service/citrus/CitrusAppService.java @@ -3,7 +3,6 @@ package awesome.group.game.service.citrus; import awesome.group.game.dao.bean.MatrixApp; import awesome.group.game.dao.mapper.MatrixAppMapper; import awesome.group.game.service.bo.citrus.AppBasicInfo; -import awesome.group.game.service.bo.citrus.AppCashConfig; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -14,6 +13,6 @@ public class CitrusAppService { public AppBasicInfo getAppDetail(String appCode) { MatrixApp app = appMapper.queryByCode(appCode); - return new AppBasicInfo(app); + return AppBasicInfo.getBasic(app); } } diff --git a/game-service/src/main/java/awesome/group/game/service/citrus/UserService.java b/game-service/src/main/java/awesome/group/game/service/citrus/UserService.java index 2b12a1a..a8ed2ad 100644 --- a/game-service/src/main/java/awesome/group/game/service/citrus/UserService.java +++ b/game-service/src/main/java/awesome/group/game/service/citrus/UserService.java @@ -9,6 +9,7 @@ import awesome.group.game.dao.mapper.MatrixUserMapper; import awesome.group.game.service.SmsService; import awesome.group.game.service.UMengService; import awesome.group.game.service.bo.citrus.*; +import awesome.group.game.service.bo.matrix.AppNormalConfig; import awesome.group.game.service.bo.matrix.UmengConfigBo; import awesome.group.game.service.common.exception.PaganiException; import awesome.group.game.service.common.exception.PaganiExceptionCode; @@ -173,15 +174,15 @@ public class UserService { Assert.isTrue(StringUtils.hasText(u.getName()), "请先填写支付宝实名姓名"); MatrixApp app = appMapper.selectById(u.getAppId()); - AppCashConfig appCashConfig = new AppCashConfig(app); - Assert.isTrue(appCashConfig.moneyLadder.contains(cent), "提现金额不合法"); + AppNormalConfig appNormalConfig = AppNormalConfig.getConfig(app); + Assert.isTrue(appNormalConfig.moneyLadder.contains(cent), "提现金额不合法"); Timestamp todayBegin = new Timestamp(DateUtil.getDayBeginTimestamp(System.currentTimeMillis())); int size = moneyRecordMapper.queryAfter(uid, todayBegin); - Assert.isTrue(size < appCashConfig.dayLimit, "每天最多提现" + appCashConfig.dayLimit + "次"); + Assert.isTrue(size < appNormalConfig.dayLimit, "每天最多提现" + appNormalConfig.dayLimit + "次"); size = moneyRecordMapper.queryByAliPayAccount(aliPayAccount, todayBegin); - Assert.isTrue(size < appCashConfig.dayLimit, "每天最多提现" + appCashConfig.dayLimit + "次"); - userService.doApply(u, appCashConfig.noAuditMoney, cent); + Assert.isTrue(size < appNormalConfig.dayLimit, "每天最多提现" + appNormalConfig.dayLimit + "次"); + userService.doApply(u, appNormalConfig.noAuditMoney, cent); } @Transactional diff --git a/game-service/src/main/java/awesome/group/game/service/matrix/MatrixAppConfigService.java b/game-service/src/main/java/awesome/group/game/service/matrix/MatrixAppConfigService.java index e81cfdc..0e21caa 100644 --- a/game-service/src/main/java/awesome/group/game/service/matrix/MatrixAppConfigService.java +++ b/game-service/src/main/java/awesome/group/game/service/matrix/MatrixAppConfigService.java @@ -8,7 +8,6 @@ import org.apache.commons.lang.RandomStringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.Assert; -import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; @Service @@ -20,7 +19,7 @@ public class MatrixAppConfigService { public AppNormalConfig getNormalConfig(String appCode) { MatrixApp app = appMapper.queryByCode(appCode); - return new AppNormalConfig(app); + return AppNormalConfig.getConfig(app); } public UmengConfigBo getUMengConfig(String appCode) { @@ -46,17 +45,7 @@ public class MatrixAppConfigService { public void saveNormalConfig(String appCode, AppNormalConfig config) { MatrixApp app = appMapper.queryByCode(appCode); - if (!CollectionUtils.isEmpty(config.dayRates)) { - app.setDayRates(gson.toJson(config.dayRates)); - } - app.setDefaultRate(config.defaultRate); - app.setDayLimit(config.dayLimit); - app.setMaxIncomeEachVideo(config.maxIncomeEachVideo); - app.setNoAuditMoney(config.noAuditMoney); - if (!CollectionUtils.isEmpty(config.moneyLadder)) { - app.setMoneyLadder(gson.toJson(config.moneyLadder)); - } - app.setQqUrl(config.qqUrl); + app.setNormalConfig(gson.toJson(config)); appMapper.updateById(app); }