|
@@ -88,53 +88,77 @@ public class AppletCheckServiceImpl implements IAppletCheckService {
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void payApplicationCheck(PayApplication payApplication) {
|
|
public void payApplicationCheck(PayApplication payApplication) {
|
|
-// try {
|
|
|
|
-// //更新游戏支付盒子配置
|
|
|
|
-// this.gamePayWayUpdate(payApplication);
|
|
|
|
-// } catch (Exception e) {
|
|
|
|
-// log.error("支付应用异常更新游戏支付盒子失败, appName : {}, e : {}", payApplication.getAppName(), e.getMessage());
|
|
|
|
-// }
|
|
|
|
|
|
+ try {
|
|
|
|
+ //更新游戏支付盒子配置
|
|
|
|
+ this.gamePayWayUpdate(payApplication);
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ log.error("支付应用异常更新游戏支付盒子失败, appName : {}, e : {}", payApplication.getAppName(), e.getMessage());
|
|
|
|
+ }
|
|
try {
|
|
try {
|
|
//钉钉通知
|
|
//钉钉通知
|
|
this.sendDingTalkMsg(payApplication);
|
|
this.sendDingTalkMsg(payApplication);
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
log.error("支付应用异常钉钉通知失败, appName : {}, e : {}", payApplication.getAppName(), e.getMessage());
|
|
log.error("支付应用异常钉钉通知失败, appName : {}, e : {}", payApplication.getAppName(), e.getMessage());
|
|
}
|
|
}
|
|
-// try {
|
|
|
|
-// //电话通知
|
|
|
|
-// this.sendPhoneTalkMsg(payApplication);
|
|
|
|
-// } catch (Exception e) {
|
|
|
|
-// log.error("支付应用异常电话通知失败, appName : {}, e : {}", payApplication.getAppName(), e.getMessage());
|
|
|
|
-// }
|
|
|
|
|
|
+ try {
|
|
|
|
+ //电话通知
|
|
|
|
+ this.sendPhoneTalkMsg(payApplication);
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ log.error("支付应用异常电话通知失败, appName : {}, e : {}", payApplication.getAppName(), e.getMessage());
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
private void gamePayWayUpdate(PayApplication payApplication) {
|
|
private void gamePayWayUpdate(PayApplication payApplication) {
|
|
//修改支付应用状态
|
|
//修改支付应用状态
|
|
|
|
+ log.error("支付应用异常 - 修改支付应用状态, appName : {}", payApplication.getAppName());
|
|
payApplicationService.update(new LambdaUpdateWrapper<PayApplication>()
|
|
payApplicationService.update(new LambdaUpdateWrapper<PayApplication>()
|
|
.eq(PayApplication::getAppId, payApplication.getAppId())
|
|
.eq(PayApplication::getAppId, payApplication.getAppId())
|
|
.set(PayApplication::getStatus, StatusEnum.NO.getCode())
|
|
.set(PayApplication::getStatus, StatusEnum.NO.getCode())
|
|
.set(PayApplication::getUpdateTime, LocalDateTime.now()));
|
|
.set(PayApplication::getUpdateTime, LocalDateTime.now()));
|
|
|
|
+
|
|
|
|
+
|
|
//查询支付应用对应的盒子
|
|
//查询支付应用对应的盒子
|
|
List<PayBox> payBoxList = payBoxService.list(new LambdaQueryWrapper<PayBox>()
|
|
List<PayBox> payBoxList = payBoxService.list(new LambdaQueryWrapper<PayBox>()
|
|
- .eq(PayBox::getAppId, payApplication.getAppId()));
|
|
|
|
|
|
+ .eq(PayBox::getAppId, payApplication.getAppId())
|
|
|
|
+ .eq(PayBox::getStatus, StatusEnum.YES.getCode()));
|
|
if (CollectionUtils.isEmpty(payBoxList)) {
|
|
if (CollectionUtils.isEmpty(payBoxList)) {
|
|
|
|
+ log.error("支付应用异常 - 支付应用不存在相关支付盒子, appName : {}", payApplication.getAppName());
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
- //修改相关支付盒子状态
|
|
|
|
|
|
+ Set<Integer> payBoxIdList = payBoxList.stream().map(PayBox::getId).collect(Collectors.toSet());
|
|
|
|
+ //修改支付应用相关支付盒子状态
|
|
|
|
+ log.error("支付应用异常 - 修改支付盒子状态, appName : {}, payBoxIdList : {}", payApplication.getAppName(), payBoxIdList);
|
|
payBoxService.update(new LambdaUpdateWrapper<PayBox>()
|
|
payBoxService.update(new LambdaUpdateWrapper<PayBox>()
|
|
- .eq(PayBox::getAppId, payApplication.getAppId())
|
|
|
|
|
|
+ .in(PayBox::getId, payBoxIdList)
|
|
.set(PayBox::getStatus, StatusEnum.NO.getCode())
|
|
.set(PayBox::getStatus, StatusEnum.NO.getCode())
|
|
.set(PayBox::getUpdateTime, LocalDateTime.now()));
|
|
.set(PayBox::getUpdateTime, LocalDateTime.now()));
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ //查询相关盒子被使用到的游戏
|
|
|
|
+ List<GamePayWay> gamePayWayList = gamePayWayService.list(new LambdaQueryWrapper<GamePayWay>()
|
|
|
|
+ .in(GamePayWay::getPayBoxId, payBoxIdList));
|
|
|
|
+ if (CollectionUtils.isEmpty(gamePayWayList)) {
|
|
|
|
+ log.error("支付应用异常 - 支付应用不存在相关联游戏支付配置, appName : {}", payApplication.getAppName());
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
//获取一个能用的支付盒子
|
|
//获取一个能用的支付盒子
|
|
PayBox payBox = payBoxService.getOne(new LambdaQueryWrapper<PayBox>()
|
|
PayBox payBox = payBoxService.getOne(new LambdaQueryWrapper<PayBox>()
|
|
.eq(PayBox::getType, payApplication.getType())
|
|
.eq(PayBox::getType, payApplication.getType())
|
|
.eq(PayBox::getStatus, StatusEnum.YES.getCode())
|
|
.eq(PayBox::getStatus, StatusEnum.YES.getCode())
|
|
.last("limit 1"));
|
|
.last("limit 1"));
|
|
|
|
+ if (payBox == null) {
|
|
|
|
+ log.error("支付应用异常 - 不存在正常可用的支付盒子, appName : {}", payApplication.getAppName());
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ //相关游戏支付配置id列表
|
|
|
|
+ Set<Long> gamePayWayIdSet = gamePayWayList.stream().map(GamePayWay::getId).collect(Collectors.toSet());
|
|
//修改游戏支付配置
|
|
//修改游戏支付配置
|
|
- gamePayWayService.update(new LambdaUpdateWrapper<GamePayWay>()
|
|
|
|
- .in(GamePayWay::getPayBoxId, payBoxList)
|
|
|
|
- .set(GamePayWay::getPayBoxId, payBox.getId())
|
|
|
|
- .set(GamePayWay::getUpdateTime, LocalDateTime.now()));
|
|
|
|
|
|
+ log.error("支付应用异常 - 修改游戏支付配置, appName : {}, gamePayWayIdSet : {}, payBoxId : {}", payApplication.getAppName(),
|
|
|
|
+ gamePayWayIdSet, payBox.getId());
|
|
|
|
+// gamePayWayService.update(new LambdaUpdateWrapper<GamePayWay>()
|
|
|
|
+// .in(GamePayWay::getId, gamePayWayIdSet)
|
|
|
|
+// .set(GamePayWay::getPayBoxId, payBox.getId())
|
|
|
|
+// .set(GamePayWay::getUpdateTime, LocalDateTime.now()));
|
|
}
|
|
}
|
|
|
|
|
|
private void sendDingTalkMsg(PayApplication payApplication) {
|
|
private void sendDingTalkMsg(PayApplication payApplication) {
|
|
@@ -142,7 +166,7 @@ public class AppletCheckServiceImpl implements IAppletCheckService {
|
|
if (CollectionUtils.isEmpty(listenCallList)) {
|
|
if (CollectionUtils.isEmpty(listenCallList)) {
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
- String content = "小程序 : " + payApplication.getAppName() + " 可能被封停或者禁用, 请注意验证";
|
|
|
|
|
|
+ String content = "小程序 : <" + payApplication.getAppName() + "> 可能被封停或者禁用, 请注意验证";
|
|
Set<Long> userIdSet = listenCallList.stream().map(ListenCall::getUserId).collect(Collectors.toSet());
|
|
Set<Long> userIdSet = listenCallList.stream().map(ListenCall::getUserId).collect(Collectors.toSet());
|
|
userIdSet.forEach(userId -> dingTalkMsgRpc.sendByUserId(userId, content));
|
|
userIdSet.forEach(userId -> dingTalkMsgRpc.sendByUserId(userId, content));
|
|
}
|
|
}
|
|
@@ -181,6 +205,7 @@ public class AppletCheckServiceImpl implements IAppletCheckService {
|
|
try {
|
|
try {
|
|
// 带参POST请求
|
|
// 带参POST请求
|
|
String result = HttpUtil.post(host, JsonUtil.toString(paramMap));
|
|
String result = HttpUtil.post(host, JsonUtil.toString(paramMap));
|
|
|
|
+ log.error("小程序接口监测结果, result : {}", result);
|
|
if (Strings.isNotBlank(result) && result.contains("errcode")) {
|
|
if (Strings.isNotBlank(result) && result.contains("errcode")) {
|
|
return Boolean.FALSE;
|
|
return Boolean.FALSE;
|
|
}
|
|
}
|