From ebb7bda52eae8e2b2791c4661b9ea65d817679b9 Mon Sep 17 00:00:00 2001 From: nili Date: Sun, 19 May 2024 22:31:04 +0800 Subject: [PATCH] =?UTF-8?q?app=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 | 3 ++ .../game/service/bo/citrus/AppCashConfig.java | 2 +- .../service/bo/matrix/AppNormalConfig.java | 34 +++++++++++++++++ .../game/service/bo/matrix/MatrixAppBo.java | 5 +-- .../game/service/matrix/MatrixAppService.java | 38 +++++++++++++++++++ .../web/rest/matrix/MatrixAppController.java | 30 +++++++++++++++ 6 files changed, 108 insertions(+), 4 deletions(-) create mode 100644 game-service/src/main/java/awesome/group/game/service/bo/matrix/AppNormalConfig.java create mode 100644 game-service/src/main/java/awesome/group/game/service/matrix/MatrixAppService.java create mode 100644 game-web/src/main/java/awesome/group/game/web/rest/matrix/MatrixAppController.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 32cd540..8754a24 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 @@ -25,4 +25,7 @@ public class MatrixApp { private Integer noAuditMoney; private String qqUrl; private Integer dayLimit;//每日提现次数限制 + private Integer maxIncomeEachVideo;//0正常,1停用 + private String dayRates; + private Integer defaultRate; } 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 index 3e07fdd..1e7719b 100644 --- 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 @@ -20,7 +20,7 @@ public class AppCashConfig { public AppCashConfig(MatrixApp app) { Gson gson = new Gson(); if (StringUtils.hasText(app.getMoneyLadder())) { - this.moneyLadder = gson.fromJson(app.getMoneyLadder(), new TypeToken>() { + this.moneyLadder = gson.fromJson(app.getMoneyLadder(), new TypeToken>() { }.getType()); } else { moneyLadder = Arrays.asList(30, 50, 100, 10000, 30000, 50000); 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 new file mode 100644 index 0000000..feeedde --- /dev/null +++ b/game-service/src/main/java/awesome/group/game/service/bo/matrix/AppNormalConfig.java @@ -0,0 +1,34 @@ +package awesome.group.game.service.bo.matrix; + +import awesome.group.game.dao.bean.MatrixApp; +import awesome.group.game.service.bo.citrus.AppCashConfig; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import org.springframework.util.StringUtils; + +import java.util.List; + +public class AppNormalConfig extends AppCashConfig { + public Integer maxIncomeEachVideo;//每个视频最大收益,单位分 + public List dayRates; + public Integer defaultRate;//默认收益率 + + public AppNormalConfig() { + } + + public AppNormalConfig(MatrixApp app) { + super(app); + this.maxIncomeEachVideo = app.getMaxIncomeEachVideo(); + if (StringUtils.hasText(app.getDayRates())) { + Gson gson = new Gson(); + this.dayRates = gson.fromJson(app.getDayRates(), new TypeToken>() { + }.getType()); + } + this.defaultRate = app.getDefaultRate(); + } + + public static class DayRate { + public Integer day; + public Integer rate; + } +} diff --git a/game-service/src/main/java/awesome/group/game/service/bo/matrix/MatrixAppBo.java b/game-service/src/main/java/awesome/group/game/service/bo/matrix/MatrixAppBo.java index 7c5fe38..8b6d399 100644 --- a/game-service/src/main/java/awesome/group/game/service/bo/matrix/MatrixAppBo.java +++ b/game-service/src/main/java/awesome/group/game/service/bo/matrix/MatrixAppBo.java @@ -1,7 +1,6 @@ package awesome.group.game.service.bo.matrix; import awesome.group.game.dao.bean.MatrixApp; -import awesome.group.game.service.bo.citrus.AppCashConfig; import org.springframework.util.StringUtils; public class MatrixAppBo { @@ -14,7 +13,7 @@ public class MatrixAppBo { public Integer hide; public String secret; public boolean enableCash; - public AppCashConfig config; +// public AppNormalConfig config; public MatrixAppBo() { @@ -30,6 +29,6 @@ public class MatrixAppBo { this.hide = app.getHide(); this.secret = app.getSecret(); this.enableCash = StringUtils.hasText(app.getAliPay()); - this.config = new AppCashConfig(app); +// this.config = new AppNormalConfig(app); } } diff --git a/game-service/src/main/java/awesome/group/game/service/matrix/MatrixAppService.java b/game-service/src/main/java/awesome/group/game/service/matrix/MatrixAppService.java new file mode 100644 index 0000000..5b0c7ea --- /dev/null +++ b/game-service/src/main/java/awesome/group/game/service/matrix/MatrixAppService.java @@ -0,0 +1,38 @@ +package awesome.group.game.service.matrix; + +import awesome.group.game.dao.bean.MatrixApp; +import awesome.group.game.dao.mapper.MatrixAppMapper; +import awesome.group.game.service.bo.matrix.AppNormalConfig; +import com.google.gson.Gson; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +@Service +public class MatrixAppService { + @Autowired + private MatrixAppMapper appMapper; + + private Gson gson = new Gson(); + + public AppNormalConfig getNormalConfig(String appCode) { + MatrixApp app = appMapper.queryByCode(appCode); + return new AppNormalConfig(app); + } + + 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); + appMapper.updateById(app); + } +} diff --git a/game-web/src/main/java/awesome/group/game/web/rest/matrix/MatrixAppController.java b/game-web/src/main/java/awesome/group/game/web/rest/matrix/MatrixAppController.java new file mode 100644 index 0000000..c98058f --- /dev/null +++ b/game-web/src/main/java/awesome/group/game/web/rest/matrix/MatrixAppController.java @@ -0,0 +1,30 @@ +package awesome.group.game.web.rest.matrix; + +import awesome.group.game.service.bo.matrix.AppNormalConfig; +import awesome.group.game.service.common.response.R; +import awesome.group.game.service.matrix.MatrixAppService; +import awesome.group.game.web.aop.RestApi; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/api/matrix/app") +public class MatrixAppController { + + @Autowired + private MatrixAppService appService; + + @GetMapping("/normalConfig") + @RestApi + public R getAppNormalConfig(@RequestParam String appCode) { + AppNormalConfig data = appService.getNormalConfig(appCode); + return new R<>(data); + } + + @PostMapping("/normalConfig") + @RestApi + public R saveNormalConfig(@RequestParam String appCode, @RequestBody AppNormalConfig config) { + appService.saveNormalConfig(appCode, config); + return new R<>(null); + } +}