ソースを参照

fix : H5游戏配置做成一个配置字段

bilingfeng 1 年間 前
コミット
a3db8f19f1

+ 7 - 12
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/pojo/params/GameAddParam.java

@@ -1,5 +1,6 @@
 package com.zanxiang.game.module.manage.pojo.params;
 
+import com.zanxiang.game.module.base.pojo.dto.H5GameConfigDTO;
 import com.zanxiang.game.module.manage.pojo.dto.GameAppletConfigDTO;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -64,18 +65,6 @@ public class GameAddParam {
     @ApiModelProperty(notes = "游戏应用类型")
     private Long category;
 
-    /**
-     * H5游戏跳转地址
-     */
-    @ApiModelProperty(notes = "H5游戏跳转地址, 游戏类型为H5时必填")
-    private String h5GameUrl;
-
-    /**
-     * H5游戏登录logo图片
-     */
-    @ApiModelProperty(notes = "H5游戏登录logo图片, 游戏类型为H5时必填")
-    private String h5LoginLogo;
-
     /**
      * 游戏是否投放
      */
@@ -111,4 +100,10 @@ public class GameAddParam {
      */
     @ApiModelProperty(notes = "小游戏/公众号应用信息 (微信小游戏和H5游戏必填, 其他游戏不填)")
     private GameAppletConfigDTO gameAppletConfigDTO;
+
+    /**
+     * H5游戏配置对象
+     */
+    @ApiModelProperty(notes = "H5游戏配置对象 (H5游戏必填, 其他游戏不填)")
+    private H5GameConfigDTO h5GameConfigDTO;
 }

+ 7 - 12
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/pojo/vo/GameListVO.java

@@ -1,5 +1,6 @@
 package com.zanxiang.game.module.manage.pojo.vo;
 
+import com.zanxiang.game.module.base.pojo.dto.H5GameConfigDTO;
 import com.zanxiang.game.module.manage.pojo.dto.GameAppletConfigDTO;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -116,18 +117,6 @@ public class GameListVO {
     @ApiModelProperty(notes = "支付方式列表")
     private List<GamePayWayVO> gamePayWayList;
 
-    /**
-     * H5游戏跳转地址
-     */
-    @ApiModelProperty(notes = "H5游戏跳转地址")
-    private String h5GameUrl;
-
-    /**
-     * H5游戏登录logo图片
-     */
-    @ApiModelProperty(notes = "H5游戏登录logo图片")
-    private String h5LoginLogo;
-
     /**
      * 游戏是否投放
      */
@@ -151,4 +140,10 @@ public class GameListVO {
      */
     @ApiModelProperty(notes = "小游戏/公众号应用信息 (微信小游戏和H5游戏才有值)")
     private GameAppletConfigDTO gameAppletConfigDTO;
+
+    /**
+     * H5游戏配置对象
+     */
+    @ApiModelProperty(notes = "H5游戏配置对象 (H5游戏必填, 其他游戏不填)")
+    private H5GameConfigDTO h5GameConfigDTO;
 }

+ 8 - 4
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameServiceImpl.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zanxiang.game.module.base.pojo.dto.H5GameConfigDTO;
 import com.zanxiang.game.module.base.pojo.enums.GameCategoryEnum;
 import com.zanxiang.game.module.manage.enums.GameStatusEnum;
 import com.zanxiang.game.module.manage.pojo.dto.GameAppletConfigDTO;
@@ -20,6 +21,7 @@ import com.zanxiang.game.module.mybatis.entity.Cp;
 import com.zanxiang.game.module.mybatis.entity.Game;
 import com.zanxiang.game.module.mybatis.entity.GameTag;
 import com.zanxiang.game.module.mybatis.mapper.GameMapper;
+import com.zanxiang.module.util.JsonUtil;
 import com.zanxiang.module.util.bean.BeanUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -74,8 +76,7 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements IG
                     .h5GameId(param.getH5GameId())
                     .guideGameId(param.getGuideGameId())
                     .remark(param.getRemark())
-                    .h5GameUrl(param.getH5GameUrl())
-                    .h5LoginLogo(param.getH5LoginLogo())
+                    .h5GameConfig(JsonUtil.toString(param.getH5GameConfigDTO()))
                     .isPut(param.getIsPut())
                     .createTime(LocalDateTime.now())
                     .updateTime(LocalDateTime.now())
@@ -89,8 +90,7 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements IG
             game.setH5GameId(param.getH5GameId());
             game.setGuideGameId(param.getGuideGameId());
             game.setRemark(param.getRemark());
-            game.setH5GameUrl(param.getH5GameUrl());
-            game.setH5LoginLogo(param.getH5LoginLogo());
+            game.setH5GameConfig(JsonUtil.toString(param.getH5GameConfigDTO()));
             game.setIsPut(param.getIsPut());
             game.setUpdateTime(LocalDateTime.now());
         }
@@ -210,6 +210,10 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements IG
         if (gameAppletDTO != null) {
             gameListVO.setGameAppletConfigDTO(BeanUtil.copy(gameAppletDTO, GameAppletConfigDTO.class));
         }
+        //H5游戏配置
+        if (Strings.isNotBlank(game.getH5GameConfig())) {
+            gameListVO.setH5GameConfigDTO(JsonUtil.toObj(game.getH5GameConfig(), H5GameConfigDTO.class));
+        }
         return gameListVO;
     }
 

+ 0 - 10
game-module/game-module-mybatis/src/main/java/com/zanxiang/game/module/mybatis/entity/Game.java

@@ -42,16 +42,6 @@ public class Game implements Serializable {
      */
     private Long category;
 
-    /**
-     * H5游戏跳转地址
-     */
-    private String h5GameUrl;
-
-    /**
-     * H5游戏登录logo图片
-     */
-    private String h5LoginLogo;
-
     /**
      * 游戏是否投放
      */

+ 4 - 9
game-module/game-module-sdk/src/main/java/com/zanxiang/game/module/sdk/pojo/vo/GameInitVO.java

@@ -1,5 +1,6 @@
 package com.zanxiang.game.module.sdk.pojo.vo;
 
+import com.zanxiang.game.module.base.pojo.dto.H5GameConfigDTO;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
 import lombok.Builder;
@@ -42,14 +43,8 @@ public class GameInitVO {
     private Boolean isPut;
 
     /**
-     * H5游戏跳转地址
+     * H5游戏配置
      */
-    @ApiModelProperty(notes = "H5游戏跳转地址")
-    private String h5GameUrl;
-
-    /**
-     * H5游戏登录logo图片
-     */
-    @ApiModelProperty(notes = "H5游戏跳转地址")
-    private String h5LoginLogo;
+    @ApiModelProperty(notes = "H5游戏配置")
+    private H5GameConfigDTO h5GameConfigDTO;
 }

+ 4 - 2
game-module/game-module-sdk/src/main/java/com/zanxiang/game/module/sdk/service/impl/GameAppletServiceImpl.java

@@ -2,6 +2,7 @@ package com.zanxiang.game.module.sdk.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zanxiang.game.module.base.pojo.dto.H5GameConfigDTO;
 import com.zanxiang.game.module.base.pojo.enums.HttpStatusEnum;
 import com.zanxiang.game.module.mybatis.entity.Game;
 import com.zanxiang.game.module.mybatis.entity.GameApplet;
@@ -194,6 +195,8 @@ public class GameAppletServiceImpl extends ServiceImpl<GameAppletMapper, GameApp
         if (game == null) {
             throw new BaseException("参数错误, 游戏信息不存在");
         }
+        //H5游戏配置
+        String h5GameConfig = game.getH5GameConfig();
         //游戏应用信息
         GameApplet gameApplet = super.getOne(new LambdaQueryWrapper<GameApplet>()
                 .eq(GameApplet::getGameId, userData.getGameId()));
@@ -204,8 +207,7 @@ public class GameAppletServiceImpl extends ServiceImpl<GameAppletMapper, GameApp
                 .appKey(gameExt == null ? null : gameExt.getAppKey())
                 .gameName(game.getName())
                 .isPut(game.getIsPut())
-                .h5GameUrl(game.getH5GameUrl())
-                .h5LoginLogo(game.getH5LoginLogo())
+                .h5GameConfigDTO(Strings.isBlank(h5GameConfig) ? null : JsonUtil.toObj(h5GameConfig, H5GameConfigDTO.class))
                 .build();
     }
 }