Explorar el Código

fix : 仙剑APP导量玩家禁止充值, 引导回小程序充值

bilingfeng hace 2 meses
padre
commit
0b177fe4cc

+ 1 - 1
game-module/game-module-sdk/src/main/java/com/zanxiang/game/module/sdk/SDKApplication.java

@@ -25,7 +25,7 @@ public class SDKApplication {
 
     public static void main(String[] args) {
         SpringApplication.run(SDKApplication.class, args);
-        System.out.println("赞象SDK服务启动成功 <解决仙剑安卓APP充值CpOrderId不正确的问题> ( ´・・)ノ(._.`) \n" +
+        System.out.println("赞象SDK服务启动成功 <仙剑APP导量玩家禁止充值, 引导回小程序充值> ( ´・・)ノ(._.`) \n" +
                 " ___________ _   __\n" +
                 "/  ___|  _  \\ | / /\n" +
                 "\\ `--.| | | | |/ / \n" +

+ 13 - 1
game-module/game-module-sdk/src/main/java/com/zanxiang/game/module/sdk/service/impl/OrderServiceImpl.java

@@ -66,7 +66,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
         //游戏信息
         Game game = gameService.getById(gameId);
         if (Objects.equals(game.getRechargeCloseSwitch(), Boolean.TRUE)) {
-            throw new BaseException("游戏已经关闭充值, 禁止操作");
+            this.rechargeCloseCheck(game, user);
         }
         //玩家信息
         GameUser gameUser = gameUserService.getOne(new LambdaQueryWrapper<GameUser>()
@@ -98,6 +98,18 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
         return Boolean.TRUE;
     }
 
+    private void rechargeCloseCheck(Game game, User user){
+        //暗影防线禁止充值
+        if (Objects.equals(game.getId(), 2L)){
+            throw new BaseException("游戏已经关闭充值, 禁止操作");
+        }
+        //仙剑APP导量玩家禁止充值, 直接APP注册的玩家正常充值
+        if (Objects.equals(game.getSuperGameId(), 12L) && user.getRelationUserId() != null
+                && Objects.equals(game.getCategory(), GameCategoryEnum.CATEGORY_APP.getId())) {
+            throw new BaseException("APP专注畅快游戏体验,充值请回小程序享受完整服务");
+        }
+    }
+
     private Order transform(UserData userData, String orderNum, ProductPayParam payParam, User user, GameUser gameUser,
                             Game game, GameUserRole gameUserRole, GamePayWayDTO gamePayWayDTO) {
         Order order = Order.builder()