Kaynağa Gözat

feat : 游戏分类标签抽成单独得表

bilingfeng 2 yıl önce
ebeveyn
işleme
05b042362a
14 değiştirilmiş dosya ile 59 ekleme ve 142 silme
  1. 1 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/GameCategoryController.java
  2. 4 7
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/dto/GameTagDTO.java
  3. 0 40
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GameCategoryAddUpdateParam.java
  4. 0 29
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GameCategoryListParam.java
  5. 0 37
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameCategoryParentVO.java
  6. 3 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameInfoVO.java
  7. 1 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/GameCategoryService.java
  8. 9 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/GameTagService.java
  9. 2 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GameCategoryServiceImpl.java
  10. 10 6
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GameServiceImpl.java
  11. 19 4
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GameTagServiceImpl.java
  12. 3 4
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GameUserRoleServiceImpl.java
  13. 3 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/OrderServiceImpl.java
  14. 4 4
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/UserLoginLogServiceImpl.java

+ 1 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/GameCategoryController.java

@@ -5,7 +5,6 @@ import com.zanxiang.common.domain.ResultVO;
 import com.zanxiang.erp.security.annotation.PreAuthorize;
 import com.zanxiang.manage.domain.params.GameTagAddUpdateParam;
 import com.zanxiang.manage.domain.params.GameTagListParam;
-import com.zanxiang.manage.domain.vo.GameCategoryVO;
 import com.zanxiang.manage.domain.vo.GameTagVO;
 import com.zanxiang.manage.service.GameTagService;
 import io.swagger.annotations.Api;
@@ -34,7 +33,7 @@ public class GameCategoryController {
     @ApiOperation(value = "查询游戏标签列表")
     @PostMapping(value = "/list")
     @PreAuthorize(permissionKey = "sdk:gameCategory:list")
-    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = GameCategoryVO.class)})
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = GameTagVO.class)})
     public ResultVO<IPage<GameTagVO>> list(@Validated @RequestBody GameTagListParam param) {
         return ResultVO.ok(gameTagService.list(param));
     }

+ 4 - 7
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameCategoryVO.java → game-module/game-manage/src/main/java/com/zanxiang/manage/domain/dto/GameTagDTO.java

@@ -1,6 +1,5 @@
-package com.zanxiang.manage.domain.vo;
+package com.zanxiang.manage.domain.dto;
 
-import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
@@ -8,12 +7,11 @@ import java.time.LocalDateTime;
 
 /**
  * @author : lingfeng
- * @time : 2022-06-23
- * @description : 标签列表查询
+ * @time : 2022-11-16
+ * @description : 游戏分类标签
  */
-@ApiModel
 @Data
-public class GameCategoryVO {
+public class GameTagDTO {
 
     /**
      * id
@@ -68,5 +66,4 @@ public class GameCategoryVO {
      */
     @ApiModelProperty(notes = "更新时间")
     private LocalDateTime updateTime;
-
 }

+ 0 - 40
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GameCategoryAddUpdateParam.java

@@ -1,40 +0,0 @@
-package com.zanxiang.manage.domain.params;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotBlank;
-
-/**
- * @author : lingfeng
- * @time : 2022-06-23
- * @description : 分类标签
- */
-@Data
-public class GameCategoryAddUpdateParam {
-
-    /**
-     * id
-     */
-    @ApiModelProperty(notes = "id, 不传id为新增, 传id为修改")
-    private Long id;
-
-    /**
-     * 父标签id
-     */
-    @ApiModelProperty(notes = "父标签id")
-    private Long parentId;
-
-    /**
-     * 名称
-     */
-    @NotBlank(message = "标签分类名称不可为空")
-    @ApiModelProperty(notes = "名称")
-    private String name;
-
-    /**
-     * 标签描述
-     */
-    @ApiModelProperty(notes = "标签描述")
-    private String remark;
-}

+ 0 - 29
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GameCategoryListParam.java

@@ -1,29 +0,0 @@
-package com.zanxiang.manage.domain.params;
-
-import com.zanxiang.common.base.BasePage;
-import com.zanxiang.mybatis.entity.GameCategory;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-/**
- * @author : lingfeng
- * @time : 2022-06-23
- * @description : 标签查询
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class GameCategoryListParam extends BasePage<GameCategory> {
-
-    /**
-     * 标签名称
-     */
-    @ApiModelProperty(notes = "标签名称")
-    private String labelName;
-
-    /**
-     * 是否父标签
-     */
-    @ApiModelProperty(notes = "是否父标签")
-    private Boolean isParent;
-}

+ 0 - 37
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameCategoryParentVO.java

@@ -1,37 +0,0 @@
-package com.zanxiang.manage.domain.vo;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * @author : lingfeng
- * @time : 2022-06-23
- * @description :
- */
-@Data
-public class GameCategoryParentVO {
-
-    /**
-     * 主键id
-     */
-    @ApiModelProperty(notes = "主键id")
-    private Long id;
-
-    /**
-     * 名称
-     */
-    @ApiModelProperty(notes = "名称")
-    private String name;
-
-    /**
-     * 是否父标签
-     */
-    @ApiModelProperty(notes = "是否父标签")
-    private Boolean isParent;
-
-    /**
-     * 父分类id(顶层游戏分类为0)
-     */
-    @ApiModelProperty(notes = "是否父标签")
-    private Long parentId;
-}

+ 3 - 1
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameInfoVO.java

@@ -1,5 +1,7 @@
 package com.zanxiang.manage.domain.vo;
 
+import com.zanxiang.manage.domain.dto.GameCategoryDTO;
+import com.zanxiang.mybatis.entity.GameCategory;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
@@ -53,7 +55,7 @@ public class GameInfoVO {
      * 游戏应用类型Id
      */
     @ApiModelProperty(notes = "游戏应用类型Id")
-    private GameTagChoiceVO category;
+    private GameCategoryDTO category;
 
     /**
      * 分成比例

+ 1 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/service/GameCategoryService.java

@@ -3,7 +3,6 @@ package com.zanxiang.manage.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.manage.domain.dto.GameCategoryDTO;
 import com.zanxiang.manage.domain.vo.GameCategoryChoiceVO;
-import com.zanxiang.manage.domain.vo.GameCategoryVO;
 import com.zanxiang.mybatis.entity.GameCategory;
 
 import java.util.List;
@@ -22,7 +21,7 @@ public interface GameCategoryService extends IService<GameCategory> {
      * @param id : 主键id
      * @return : 返回游戏分类信息
      */
-    GameCategoryVO getById(Long id);
+    GameCategoryDTO getById(Long id);
 
     /**
      * 查询所有应用类型列表

+ 9 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/GameTagService.java

@@ -2,6 +2,7 @@ package com.zanxiang.manage.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.zanxiang.manage.domain.dto.GameTagDTO;
 import com.zanxiang.manage.domain.params.GameTagAddUpdateParam;
 import com.zanxiang.manage.domain.params.GameTagListParam;
 import com.zanxiang.manage.domain.vo.GameTagChoiceVO;
@@ -9,6 +10,7 @@ import com.zanxiang.manage.domain.vo.GameTagVO;
 import com.zanxiang.mybatis.entity.GameTag;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author : lingfeng
@@ -32,6 +34,13 @@ public interface GameTagService extends IService<GameTag> {
      */
     List<GameTagChoiceVO> gameTagsChoiceList();
 
+    /**
+     * 查询游戏分类标签
+     *
+     * @return : 返回所有游戏分类和标签
+     */
+    Map<Long, GameTagDTO> gameTagMap();
+
     /**
      * 查询游戏标签列表
      *

+ 2 - 3
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GameCategoryServiceImpl.java

@@ -6,7 +6,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.dto.GameCategoryDTO;
 import com.zanxiang.manage.domain.vo.GameCategoryChoiceVO;
-import com.zanxiang.manage.domain.vo.GameCategoryVO;
 import com.zanxiang.manage.service.GameCategoryService;
 import com.zanxiang.mybatis.entity.GameCategory;
 import com.zanxiang.mybatis.mapper.GameCategoryMapper;
@@ -35,8 +34,8 @@ public class GameCategoryServiceImpl extends ServiceImpl<GameCategoryMapper, Gam
      * @return : 返回游戏分类信息
      */
     @Override
-    public GameCategoryVO getById(Long id) {
-        return BeanUtils.copy(super.getById(id), GameCategoryVO.class);
+    public GameCategoryDTO getById(Long id) {
+        return BeanUtils.copy(super.getById(id), GameCategoryDTO.class);
     }
 
     /**

+ 10 - 6
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GameServiceImpl.java

@@ -9,6 +9,7 @@ import com.zanxiang.common.enums.GameStatusEnum;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.dto.GameCategoryDTO;
 import com.zanxiang.manage.domain.dto.GameDTO;
+import com.zanxiang.manage.domain.dto.GameTagDTO;
 import com.zanxiang.manage.domain.params.*;
 import com.zanxiang.manage.domain.vo.*;
 import com.zanxiang.manage.service.*;
@@ -255,8 +256,8 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements Ga
             gameInfoVO.setClassifyList(BeanUtils.copyList(gameTagVOList, GameTagChoiceVO.class));
         }
         if (game.getCategory() != null) {
-            GameCategoryVO gameCategoryVO = gameCategoryService.getById(game.getCategory());
-            gameInfoVO.setCategory(BeanUtils.copy(gameCategoryVO, GameTagChoiceVO.class));
+            GameCategoryDTO gameCategoryDTO = gameCategoryService.getById(game.getCategory());
+            gameInfoVO.setCategory(gameCategoryDTO);
         }
         //是否主游戏
         gameInfoVO.setIsParentGame(Objects.equals(gameInfoVO.getParentId(), 0L));
@@ -400,8 +401,10 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements Ga
         //cp列表
         Map<Long, String> cpMap = cpService.choiceList().stream()
                 .collect(Collectors.toMap(CpChoiceVO::getId, CpChoiceVO::getCpName));
-        //游戏分类列表
+        //游戏应用类型列表
         Map<Long, GameCategoryDTO> gameCategoryMap = gameCategoryService.gameCategoryMap();
+        //游戏分类标签列表
+        Map<Long, GameTagDTO> gameTagMap = gameTagService.gameTagMap();
         //查询游戏
         Map<Long, String> gameMap = this.choiceList().stream()
                 .collect(Collectors.toMap(GameChoiceVO::getId, GameChoiceVO::getName));
@@ -420,7 +423,7 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements Ga
                 .apply(param.getGameClassifyId() != null && Objects.equals(param.getIsParentClassify(), Boolean.TRUE),
                         "FIND_IN_SET({0}, classify_parent)", String.valueOf(param.getGameClassifyId()))
                 .orderByDesc(Game::getCreateTime)
-        ).convert(game -> this.toVo(game, cpMap, gameCategoryMap, gameMap));
+        ).convert(game -> this.toVo(game, cpMap, gameCategoryMap, gameMap, gameTagMap));
     }
 
     /**
@@ -429,7 +432,8 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements Ga
      * @param game : 游戏信息
      * @return : 返回展示对象
      */
-    private GameListVO toVo(Game game, Map<Long, String> cpMap, Map<Long, GameCategoryDTO> gameCategoryMap, Map<Long, String> gameMap) {
+    private GameListVO toVo(Game game, Map<Long, String> cpMap, Map<Long, GameCategoryDTO> gameCategoryMap,
+                            Map<Long, String> gameMap, Map<Long, GameTagDTO> gameTagMap) {
         GameListVO gameListVO = BeanUtils.copy(game, GameListVO.class);
         if (gameListVO == null) {
             return null;
@@ -447,7 +451,7 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements Ga
             String[] classifyIds = gameListVO.getClassify().split(",");
             List<String> classifyNameList = new ArrayList<>();
             for (String classifyId : classifyIds) {
-                classifyNameList.add(gameCategoryMap.get(Long.valueOf(classifyId)) == null ? null : gameCategoryMap.get(Long.valueOf(classifyId)).getName());
+                classifyNameList.add(gameTagMap.get(Long.valueOf(classifyId)) == null ? null : gameTagMap.get(Long.valueOf(classifyId)).getName());
             }
             gameListVO.setClassifyNameList(classifyNameList);
         }

+ 19 - 4
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GameTagServiceImpl.java

@@ -10,6 +10,7 @@ import com.zanxiang.common.exception.BaseException;
 import com.zanxiang.common.utils.StringUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.erp.security.util.SecurityUtil;
+import com.zanxiang.manage.domain.dto.GameTagDTO;
 import com.zanxiang.manage.domain.params.GameTagAddUpdateParam;
 import com.zanxiang.manage.domain.params.GameTagListParam;
 import com.zanxiang.manage.domain.vo.GameTagChoiceVO;
@@ -22,10 +23,8 @@ import org.apache.logging.log4j.util.Strings;
 import org.springframework.stereotype.Service;
 
 import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 
 /**
@@ -61,6 +60,22 @@ public class GameTagServiceImpl extends ServiceImpl<GameTagMapper, GameTag> impl
         return BeanUtils.copyList(super.list(), GameTagChoiceVO.class);
     }
 
+    /**
+     * 查询游戏分类标签
+     *
+     * @return : 返回所有游戏分类和标签
+     */
+    @Override
+    public Map<Long, GameTagDTO> gameTagMap() {
+        List<GameTag> gameTagList = list(new LambdaQueryWrapper<GameTag>()
+                .select(GameTag::getId, GameTag::getName));
+        if (CollectionUtils.isEmpty(gameTagList)) {
+            return Collections.emptyMap();
+        }
+        List<GameTagDTO> gameTagDTOList = BeanUtils.copyList(gameTagList, GameTagDTO.class);
+        return gameTagDTOList.stream().collect(Collectors.toMap(GameTagDTO::getId, Function.identity()));
+    }
+
     /**
      * 查询游戏标签列表
      *

+ 3 - 4
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GameUserRoleServiceImpl.java

@@ -10,7 +10,6 @@ import com.zanxiang.common.utils.StringUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.dto.*;
 import com.zanxiang.manage.domain.params.GameUserRoleListParam;
-import com.zanxiang.manage.domain.vo.GameCategoryVO;
 import com.zanxiang.manage.domain.vo.GameUserRoleListVO;
 import com.zanxiang.manage.domain.vo.GameUserRoleVO;
 import com.zanxiang.manage.domain.vo.GameUserVO;
@@ -89,9 +88,9 @@ public class GameUserRoleServiceImpl extends ServiceImpl<GameUserRoleMapper, Gam
             if (gameDTO != null) {
                 gameUserRoleVO.setGameName(gameDTO.getName());
                 //设置游戏列表
-                GameCategoryVO gameCategoryVO = gameCategoryService.getById(gameDTO.getCategory());
-                if (gameCategoryVO != null) {
-                    gameUserRoleVO.setGameCategoryName(gameCategoryVO.getName());
+                GameCategoryDTO gameCategoryDTO = gameCategoryService.getById(gameDTO.getCategory());
+                if (gameCategoryDTO != null) {
+                    gameUserRoleVO.setGameCategoryName(gameCategoryDTO.getName());
                 }
             }
             //玩家游戏信息

+ 3 - 3
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/OrderServiceImpl.java

@@ -163,9 +163,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
             return orderListVO;
         }
         //设置游戏列表
-        GameCategoryVO gameCategoryVO = gameCategoryService.getById(gameDTO.getCategory());
-        if (gameCategoryVO != null) {
-            orderListVO.setGameCategoryName(gameCategoryVO.getName());
+        GameCategoryDTO gameCategoryDTO = gameCategoryService.getById(gameDTO.getCategory());
+        if (gameCategoryDTO != null) {
+            orderListVO.setGameCategoryName(gameCategoryDTO.getName());
         }
         orderListVO.setGameName(gameDTO.getName());
         return orderListVO;

+ 4 - 4
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/UserLoginLogServiceImpl.java

@@ -4,10 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zanxiang.common.utils.bean.BeanUtils;
+import com.zanxiang.manage.domain.dto.GameCategoryDTO;
 import com.zanxiang.manage.domain.dto.GameDTO;
 import com.zanxiang.manage.domain.dto.GameUserRoleDTO;
 import com.zanxiang.manage.domain.params.UserLoginLogParam;
-import com.zanxiang.manage.domain.vo.GameCategoryVO;
 import com.zanxiang.manage.domain.vo.UserRoleLoginVO;
 import com.zanxiang.manage.service.GameCategoryService;
 import com.zanxiang.manage.service.GameService;
@@ -74,9 +74,9 @@ public class UserLoginLogServiceImpl extends ServiceImpl<UserLoginLogMapper, Use
         GameDTO gameDTO = gameService.getById(userLoginLog.getGameId());
         if (gameDTO != null) {
             //设置游戏列表
-            GameCategoryVO gameCategoryVO = gameCategoryService.getById(gameDTO.getCategory());
-            if (gameCategoryVO != null) {
-                roleLoginVO.setGameCategoryName(gameCategoryVO.getName());
+            GameCategoryDTO gameCategoryDTO = gameCategoryService.getById(gameDTO.getCategory());
+            if (gameCategoryDTO != null) {
+                roleLoginVO.setGameCategoryName(gameCategoryDTO.getName());
             }
             roleLoginVO.setGameName(gameDTO.getName());
         }