nili
7 months ago
8 changed files with 259 additions and 68 deletions
@ -0,0 +1,32 @@ |
|||
package awesome.group.game.service.bo.matrix; |
|||
|
|||
import awesome.group.game.dao.bean.MatrixApp; |
|||
|
|||
public class AppBasicConfig { |
|||
public Integer id; |
|||
public String code; |
|||
public String secret; |
|||
public String name; |
|||
public String img; |
|||
public String url; |
|||
public Integer hide; |
|||
public String channel; |
|||
public Integer version; |
|||
//TODO 广告位
|
|||
|
|||
|
|||
public AppBasicConfig() { |
|||
} |
|||
|
|||
public AppBasicConfig(MatrixApp app) { |
|||
this.id = app.getId(); |
|||
this.code = app.getCode(); |
|||
this.secret = app.getSecret(); |
|||
this.name = app.getName(); |
|||
this.img = app.getImg(); |
|||
this.url = app.getUrl(); |
|||
this.hide = app.getHide(); |
|||
this.channel = app.getChannel(); |
|||
this.version = app.getVersion(); |
|||
} |
|||
} |
@ -0,0 +1,6 @@ |
|||
package awesome.group.game.service.bo.matrix; |
|||
|
|||
public class WxConfig { |
|||
public String appId; |
|||
public String appSecret; |
|||
} |
@ -0,0 +1,133 @@ |
|||
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.*; |
|||
import com.google.gson.Gson; |
|||
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 |
|||
public class MatrixAppConfigService { |
|||
@Autowired |
|||
private MatrixAppMapper appMapper; |
|||
|
|||
private Gson gson = new Gson(); |
|||
|
|||
public AppNormalConfig getNormalConfig(String appCode) { |
|||
MatrixApp app = appMapper.queryByCode(appCode); |
|||
return new AppNormalConfig(app); |
|||
} |
|||
|
|||
public UmengConfigBo getUMengConfig(String appCode) { |
|||
MatrixApp app = appMapper.queryByCode(appCode); |
|||
if (StringUtils.hasText(app.getUmeng())) { |
|||
return gson.fromJson(app.getUmeng(), UmengConfigBo.class); |
|||
} |
|||
return null; |
|||
} |
|||
|
|||
public AliPayConfigBo getAliPayConfig(String appCode) { |
|||
MatrixApp app = appMapper.queryByCode(appCode); |
|||
if (!StringUtils.hasText(app.getAliPay())) { |
|||
return null; |
|||
} |
|||
AliPayConfigBo res = gson.fromJson(app.getAliPay(), AliPayConfigBo.class); |
|||
res.aliPayPublicCert = res.aliPayPublicCert.substring(0, Math.min(100, res.aliPayPublicCert.length())) + "......"; |
|||
res.aliPayRootCert = res.aliPayRootCert.substring(0, Math.min(100, res.aliPayRootCert.length())) + "......"; |
|||
res.aliPayAppCert = res.aliPayAppCert.substring(0, Math.min(100, res.aliPayAppCert.length())) + "......"; |
|||
res.aliPayPrivateKey = res.aliPayPrivateKey.substring(0, Math.min(10, res.aliPayPrivateKey.length())) + "......"; |
|||
return res; |
|||
} |
|||
|
|||
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); |
|||
} |
|||
|
|||
public void saveUMengConfig(String appCode, UmengConfigBo configBo) { |
|||
Assert.isTrue(StringUtils.hasText(configBo.umengAppKey), "AppKey不能为空(友盟后台获取)"); |
|||
Assert.isTrue(StringUtils.hasText(configBo.umengAppSecret), "AppSecret不能为空(阿里云后台获取)"); |
|||
Assert.isTrue(StringUtils.hasText(configBo.umengAppKeyAli), "AppKey不能为空(阿里云后台获取)"); |
|||
Assert.isTrue(StringUtils.hasText(configBo.umengAppCode), "AppCode不能为空(阿里云后台获取)"); |
|||
String str = gson.toJson(configBo); |
|||
MatrixApp app = appMapper.queryByCode(appCode); |
|||
app.setUmeng(str); |
|||
appMapper.updateById(app); |
|||
} |
|||
|
|||
public void saveAliPayConfig(String appCode, AliPayConfigBo configBo) { |
|||
Assert.isTrue(StringUtils.hasText(configBo.aliPayAppId), "AppId不能为空(支付宝开放平台获取)"); |
|||
Assert.isTrue(StringUtils.hasText(configBo.aliPayPrivateKey), "PrivateKey不能为空(支付宝开放平台获取)"); |
|||
Assert.isTrue(StringUtils.hasText(configBo.aliPayAppCert), "appCertPublicKey不能为空(密钥工具生成)"); |
|||
Assert.isTrue(StringUtils.hasText(configBo.aliPayRootCert), "alipayRootCert不能为空(密钥工具生成)"); |
|||
Assert.isTrue(StringUtils.hasText(configBo.aliPayPublicCert), "alipayCertPublicKey不能为空(密钥工具生成)"); |
|||
String str = gson.toJson(configBo); |
|||
MatrixApp app = appMapper.queryByCode(appCode); |
|||
app.setAliPay(str); |
|||
appMapper.updateById(app); |
|||
} |
|||
|
|||
public AppBasicConfig getAppBasic(String appCode) { |
|||
MatrixApp app = appMapper.queryByCode(appCode); |
|||
return new AppBasicConfig(app); |
|||
} |
|||
|
|||
public void saveAppBasic(AppBasicConfig config) { |
|||
if (StringUtils.hasText(config.code)) { |
|||
MatrixApp app = appMapper.queryByCode(config.code); |
|||
app.setName(config.name); |
|||
app.setUrl(config.url); |
|||
app.setImg(config.img); |
|||
app.setHide(config.hide); |
|||
app.setVersion(config.version); |
|||
appMapper.updateNameOrUrl(app); |
|||
} else { |
|||
MatrixApp app = new MatrixApp(); |
|||
app.setCode(RandomStringUtils.randomAlphabetic(10)); |
|||
app.setSecret(RandomStringUtils.randomAlphabetic(32)); |
|||
app.setChannel(config.channel); |
|||
|
|||
app.setName(config.name); |
|||
app.setUrl(config.url); |
|||
app.setImg(config.img); |
|||
app.setHide(config.hide); |
|||
app.setVersion(config.version); |
|||
appMapper.insert(app); |
|||
} |
|||
} |
|||
|
|||
public WxConfig getWxConfig(String appCode) { |
|||
MatrixApp app = appMapper.queryByCode(appCode); |
|||
if (StringUtils.hasText(app.getWx())) { |
|||
WxConfig config = gson.fromJson(app.getWx(), WxConfig.class); |
|||
config.appSecret = config.appSecret.substring(0, Math.min(10, config.appSecret.length())) + "......"; |
|||
return config; |
|||
} |
|||
return null; |
|||
} |
|||
|
|||
public void saveWxConfig(String appCode, WxConfig config) { |
|||
Assert.isTrue(StringUtils.hasText(config.appId), "AppId不能为空(微信开放平台获取)"); |
|||
Assert.isTrue(StringUtils.hasText(config.appSecret), "AppSecret不能为空(微信开放平台获取)"); |
|||
MatrixApp app = appMapper.queryByCode(appCode); |
|||
app.setWx(gson.toJson(config)); |
|||
appMapper.updateById(app); |
|||
} |
|||
|
|||
} |
@ -1,38 +0,0 @@ |
|||
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); |
|||
} |
|||
} |
@ -0,0 +1,85 @@ |
|||
package awesome.group.game.web.rest.matrix; |
|||
|
|||
import awesome.group.game.service.bo.matrix.*; |
|||
import awesome.group.game.service.common.response.R; |
|||
import awesome.group.game.service.matrix.MatrixAppConfigService; |
|||
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 MatrixAppConfigController { |
|||
|
|||
@Autowired |
|||
private MatrixAppConfigService appService; |
|||
|
|||
@GetMapping("/normalConfig") |
|||
@RestApi |
|||
public R<AppNormalConfig> getAppNormalConfig(@RequestParam String appCode) { |
|||
AppNormalConfig data = appService.getNormalConfig(appCode); |
|||
return new R<>(data); |
|||
} |
|||
|
|||
@PostMapping("/normalConfig") |
|||
@RestApi |
|||
public R<Void> saveNormalConfig(@RequestParam String appCode, @RequestBody AppNormalConfig config) { |
|||
appService.saveNormalConfig(appCode, config); |
|||
return new R<>(null); |
|||
} |
|||
|
|||
@GetMapping("/uMengConfig") |
|||
@RestApi |
|||
public R<UmengConfigBo> getUMengConfig(@RequestParam String appCode) { |
|||
UmengConfigBo data = appService.getUMengConfig(appCode); |
|||
return new R<>(data); |
|||
} |
|||
|
|||
@PostMapping("/uMengConfig") |
|||
@RestApi |
|||
public R<Void> saveUMengConfig(@RequestParam String appCode, @RequestBody UmengConfigBo config) { |
|||
appService.saveUMengConfig(appCode, config); |
|||
return new R<>(null); |
|||
} |
|||
|
|||
@GetMapping("/aliPayConfig") |
|||
@RestApi |
|||
public R<AliPayConfigBo> getAliPayConfig(@RequestParam String appCode) { |
|||
AliPayConfigBo data = appService.getAliPayConfig(appCode); |
|||
return new R<>(data); |
|||
} |
|||
|
|||
@PostMapping("/aliPayConfig") |
|||
@RestApi |
|||
public R<Void> saveAliPayConfig(@RequestParam String appCode, @RequestBody AliPayConfigBo config) { |
|||
appService.saveAliPayConfig(appCode, config); |
|||
return new R<>(null); |
|||
} |
|||
|
|||
@GetMapping("/basicConfig") |
|||
@RestApi |
|||
public R<AppBasicConfig> getBasicConfig(@RequestParam String appCode) { |
|||
AppBasicConfig data = appService.getAppBasic(appCode); |
|||
return new R<>(data); |
|||
} |
|||
|
|||
@PostMapping("/basicConfig") |
|||
@RestApi |
|||
public R<Void> saveBasicConfig(@RequestBody AppBasicConfig config) { |
|||
appService.saveAppBasic(config); |
|||
return new R<>(null); |
|||
} |
|||
|
|||
@GetMapping("/wxConfig") |
|||
@RestApi |
|||
public R<WxConfig> getWxConfig(@RequestParam String appCode) { |
|||
return new R<>(appService.getWxConfig(appCode)); |
|||
} |
|||
|
|||
@PostMapping("/wxConfig") |
|||
@RestApi |
|||
public R<Void> saveWxConfig(@RequestParam String appCode, @RequestBody WxConfig config) { |
|||
appService.saveWxConfig(appCode, config); |
|||
return new R<>(null); |
|||
} |
|||
} |
@ -1,30 +0,0 @@ |
|||
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<AppNormalConfig> getAppNormalConfig(@RequestParam String appCode) { |
|||
AppNormalConfig data = appService.getNormalConfig(appCode); |
|||
return new R<>(data); |
|||
} |
|||
|
|||
@PostMapping("/normalConfig") |
|||
@RestApi |
|||
public R<Void> saveNormalConfig(@RequestParam String appCode, @RequestBody AppNormalConfig config) { |
|||
appService.saveNormalConfig(appCode, config); |
|||
return new R<>(null); |
|||
} |
|||
} |
Loading…
Reference in new issue