Browse Source

feat : sdk对接修改

bilingfeng 2 years ago
parent
commit
3885c88e82
29 changed files with 395 additions and 876 deletions
  1. 53 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/GamePayStrategyController.java
  2. 0 48
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/GameStrategyController.java
  3. 0 58
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/mapper/GameStrategyListMapper.java
  4. 0 29
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/mapper/PayBoxListMapper.java
  5. 39 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GamePayStrategyListParam.java
  6. 0 45
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GamePayWayParam.java
  7. 0 41
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GameStrategyListParam.java
  8. 0 17
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GameStrategyOrderParam.java
  9. 0 42
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GameStrategyParam.java
  10. 0 91
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayApplicationListNoPageParam.java
  11. 0 56
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayBoxParam.java
  12. 0 19
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/UserBanAddParam.java
  13. 0 24
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/AllGamePayWayByGameIdVO.java
  14. 0 6
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameListVO.java
  15. 101 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GamePayStrategyListVO.java
  16. 0 63
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameStrategyInfoVO.java
  17. 0 63
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameStrategyListVO.java
  18. 0 17
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameStrategyOrderVO.java
  19. 0 31
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameStrategyVO.java
  20. 0 25
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayBoxTypeChoiceVO.java
  21. 0 31
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayWayVO.java
  22. 40 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/IGamePayStrategyService.java
  23. 19 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/IGamePayWayService.java
  24. 0 43
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/IGameStrategyService.java
  25. 1 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/IPayWayService.java
  26. 103 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/impl/GamePayStrategyServiceImpl.java
  27. 39 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/impl/GamePayWayServiceImpl.java
  28. 0 6
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/impl/GameServiceImpl.java
  29. 0 119
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/impl/GameStrategyServiceImpl.java

+ 53 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/GamePayStrategyController.java

@@ -0,0 +1,53 @@
+package com.zanxiang.manage.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.zanxiang.common.domain.ResultVO;
+import com.zanxiang.erp.security.annotation.PreAuthorize;
+import com.zanxiang.manage.domain.params.GamePayStrategyListParam;
+import com.zanxiang.manage.domain.vo.GamePayStrategyListVO;
+import com.zanxiang.manage.service.IGamePayStrategyService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-11-25
+ * @description : 支付策略管理
+ */
+@Api(tags = "支付策略管理")
+@RestController
+@RequestMapping("/game/pay/strategy")
+public class GamePayStrategyController {
+
+    @Autowired
+    private IGamePayStrategyService gamePayStrategyService;
+
+    @ApiOperation(value = "游戏支付策略列表查询")
+    @PostMapping(value = "/list")
+    @PreAuthorize(permissionKey = "manage:payStrategy:list")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = GamePayStrategyListVO.class)})
+    public ResultVO<IPage<GamePayStrategyListVO>> pageList(@Validated @RequestBody GamePayStrategyListParam param) {
+        return new ResultVO<>(gamePayStrategyService.pageList(param));
+    }
+
+    @ApiOperation(value = "游戏支付策略删除")
+    @DeleteMapping(value = "/delete")
+    @PreAuthorize(permissionKey = "manage:payStrategy:delete")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
+    public ResultVO<Boolean> deleteById(@RequestParam Long id) {
+        return new ResultVO<>(gamePayStrategyService.deleteById(id));
+    }
+
+    @ApiOperation(value = "游戏支付策略状态变更")
+    @PatchMapping(value = "/status/update")
+    @PreAuthorize(permissionKey = "manage:payStrategy:statusUpdate")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
+    public ResultVO<Boolean> statusUpdate(@RequestParam Long id, @RequestParam Integer status) {
+        return new ResultVO<>(gamePayStrategyService.statusUpdate(id, status));
+    }
+}

+ 0 - 48
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/GameStrategyController.java

@@ -1,48 +0,0 @@
-package com.zanxiang.manage.controller;
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.zanxiang.common.domain.ResultVO;
-import com.zanxiang.erp.security.annotation.PreAuthorize;
-import com.zanxiang.manage.domain.params.GameStrategyListParam;
-import com.zanxiang.manage.domain.params.GameStrategyParam;
-import com.zanxiang.manage.domain.vo.GameStrategyListVO;
-import com.zanxiang.manage.service.IGameStrategyService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * @author : lingfeng
- * @time : 2022-11-25
- * @description : 支付策略管理
- */
-@Api(tags = "支付策略管理")
-@RestController
-@RequestMapping("/game/pay/strategy")
-public class GameStrategyController {
-
-    @Autowired
-    private IGameStrategyService gameStrategyService;
-
-    @ApiOperation(value = "新增/编辑/删除")
-    @PostMapping(value = "/save")
-    @PreAuthorize(permissionKey = "sdk:gameStrategy:save")
-    public ResultVO<Boolean> save(@Validated @RequestBody GameStrategyParam param) {
-        return ResultVO.ok(gameStrategyService.saveOrUpdate(param));
-    }
-
-    @ApiOperation(value = "列表")
-    @PostMapping(value = "/list")
-    @PreAuthorize(permissionKey = "sdk:gameStrategy:list")
-    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = GameStrategyListVO.class, responseContainer = "list")})
-    public ResultVO<IPage<GameStrategyListVO>> list(@Validated @RequestBody GameStrategyListParam param) {
-        return ResultVO.ok(gameStrategyService.list(param));
-    }
-}

+ 0 - 58
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/mapper/GameStrategyListMapper.java

@@ -1,58 +0,0 @@
-package com.zanxiang.manage.domain.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.zanxiang.manage.domain.vo.GameStrategyListVO;
-import com.zanxiang.mybatis.entity.GameStrategy;
-import org.apache.ibatis.annotations.Param;
-import org.apache.ibatis.annotations.Select;
-
-/**
- * @author xufeng
- * @date 2022/6/29 16:32
- */
-public interface GameStrategyListMapper extends BaseMapper<GameStrategy> {
-
-    @Select("<script> SELECT s.*,g.`name` AS gameName,p.pay_box_id,c.`name` AS gameType,b.`name` AS payBoxName,b.pay_merchant_id AS payMerchant,a.`name` AS applicationName " +
-            "FROM h_game_strategy s " +
-            "LEFT JOIN h_game g ON s.game_id=g.id AND g.is_delete=0 AND g.`status`=0 " +
-            "LEFT JOIN h_game_category c ON g.category=c.id AND c.is_delete=0 " +
-            "LEFT JOIN h_game_pay_way p ON p.game_id=s.game_id AND p.pay_way_id=3 AND p.is_delete=0 " +
-            "LEFT JOIN h_pay_box b ON p.pay_box_id=b.id AND b.is_delete=0 AND b.`status`=0 " +
-            "LEFT JOIN h_pay_application a ON a.id=b.pay_application_id AND a.is_delete=0 AND a.`status`=0 " +
-            "where s.is_delete=0 " +
-            "<when test='name != null'> and s.`name` like CONCAT('%', #{name}, '%') </when>" +
-            "<when test='type != null'> and s.type = #{type} </when>" +
-            "<when test='status != null'> and s.status = #{status} </when>" +
-            "<when test='gameId != null'> and s.gameId = #{gameId} </when>" +
-            " </script>")
-    IPage<GameStrategyListVO> List(Page<GameStrategy> page, @Param("name") String name, @Param("type") Integer type, @Param("status") Integer status, @Param("gameId") Long gameId);
-
-
-//    SELECT
-//    s.*,
-//    g.`name` AS gameName,
-//    p.pay_box_id,
-//    c.`name` AS gameType,
-//    b.`name` AS payBoxName,
-//    b.pay_merchant_id AS payMerchant,
-//    a.`name` AS applicationName
-//    FROM
-//    h_game_strategy s
-//    LEFT JOIN h_game g ON s.game_id = g.id
-//    AND g.is_delete = 0
-//    AND g.`status` = 0
-//    LEFT JOIN h_game_category c ON g.category = c.id
-//    AND c.is_delete = 0
-//    LEFT JOIN h_game_pay_way p ON p.game_id = s.game_id
-//    AND p.pay_way_id = 3
-//    AND p.is_delete = 0
-//    LEFT JOIN h_pay_box b ON p.pay_box_id = b.id
-//    AND b.is_delete = 0
-//    AND b.`status` = 0
-//    LEFT JOIN h_pay_application a ON a.id = b.pay_application_id
-//    AND a.is_delete = 0
-//    AND a.`status` = 0
-
-}

+ 0 - 29
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/mapper/PayBoxListMapper.java

@@ -1,29 +0,0 @@
-package com.zanxiang.manage.domain.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.zanxiang.manage.domain.vo.PayBoxListVO;
-import com.zanxiang.mybatis.entity.PayBox;
-import org.apache.ibatis.annotations.Param;
-import org.apache.ibatis.annotations.Select;
-
-/**
- * @author xufeng
- * @date 2022/6/29 16:32
- */
-public interface PayBoxListMapper extends BaseMapper<PayBox> {
-
-    // '微信小程序' as payApplicationTypeName
-    @Select("<script> SELECT b.*,a.company,a.type as payApplicationType,a.app_id as appId,a.primeval_id as primevalId,a.name as payApplicationName, a.id as payApplicationId, '微信小程序' as payApplicationTypeName from t_pay_box b " +
-            "LEFT JOIN h_pay_application a ON b.pay_application_id = a.id " +
-            "where b.is_delete=0 " +
-            "<when test='name != null'> and b.name like CONCAT('%', #{name}, '%') </when>" +
-            "<when test='payApplicationName != null'> and a.name like CONCAT('%', #{payApplicationName}, '%') </when>" +
-            "<when test='appId != null'> and a.app_id like CONCAT('%', #{appId}, '%') </when>" +
-            "<when test='company != null'> and a.company like CONCAT('%', #{company}, '%') </when>" +
-            "<when test='payMerchantId != null'> and b.pay_merchant_id like CONCAT('%', #{payMerchantId}, '%') </when>" +
-            "<when test='payApplicationType != null'> and a.type = #{payMerchantId} </when>" +
-            " </script>")
-    IPage<PayBoxListVO> payBoxList(Page<PayBox> page, @Param("name") String name, @Param("payApplicationName") String payApplicationName, @Param("appId") String appId, @Param("company") String company, @Param("payMerchantId") String payMerchantId, @Param("payApplicationType") String payApplicationType);
-}

+ 39 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GamePayStrategyListParam.java

@@ -0,0 +1,39 @@
+package com.zanxiang.manage.domain.params;
+
+import com.zanxiang.common.base.BasePage;
+import com.zanxiang.mybatis.entity.GamePayStrategy;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author : lingfeng
+ * @time : 2023-02-16
+ * @description : 游戏策略查询
+ */
+@Data
+public class GamePayStrategyListParam extends BasePage<GamePayStrategy> {
+
+    /**
+     * 策略名称
+     */
+    @ApiModelProperty(notes = "策略名称")
+    private String name;
+
+    /**
+     * 策略类型 1: 切换规则, 2: 显示规则, 3: 订单起量切换规则
+     */
+    @ApiModelProperty(notes = "策略类型 1: 切换规则, 2: 显示规则, 3: 订单起量切换规则")
+    private Integer type;
+
+    /**
+     * 关联游戏id
+     */
+    @ApiModelProperty(notes = "关联游戏id")
+    private Long gameId;
+
+    /**
+     * 状态 1 不可用 0 可用
+     */
+    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
+    private Integer status;
+}

+ 0 - 45
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GamePayWayParam.java

@@ -1,45 +0,0 @@
-package com.zanxiang.manage.domain.params;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * @author : xufeng
- * @time : 2022-06-30
- * @description : 游戏支付配置表
- */
-@Data
-public class GamePayWayParam {
-    private String id;
-
-    @ApiModelProperty(notes = "游戏id")
-    private String gameId;
-
-    @ApiModelProperty(notes = "支付方式id")
-    private Integer payWayId;
-
-    @ApiModelProperty(notes = "支付方式名称")
-    private String payWayName;
-
-    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
-    private Integer status;
-
-    /**
-     * 支付配置json (存储根据payway设置后,配置的具体商户号信息)
-     */
-    @ApiModelProperty(notes = "支付配置json")
-    private String payConfig;
-
-    @ApiModelProperty(notes = "是否已删除 1 已删除 0 正常")
-    private Integer isDelete;
-
-    @ApiModelProperty(notes = "支付盒子id")
-    private Long payBoxId;
-
-    @ApiModelProperty(notes = "支付商户号id")
-    private Long payMerchantId;
-
-    @ApiModelProperty(notes = "备注")
-    private String remark;
-
-}

+ 0 - 41
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GameStrategyListParam.java

@@ -1,41 +0,0 @@
-package com.zanxiang.manage.domain.params;
-
-import com.zanxiang.common.base.BasePage;
-import com.zanxiang.mybatis.entity.GameStrategy;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.io.Serializable;
-
-/**
- * 注释游戏策略
- *
- * @author xufeng
- * @date 2022-07-01 11:38
- */
-@Data
-public class GameStrategyListParam extends BasePage<GameStrategy> implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    @ApiModelProperty(notes = "ID")
-    private Long id;
-
-    @ApiModelProperty(notes = "策略名称")
-    private String name;
-
-    @ApiModelProperty(notes = "策略类型 1:订单起量切换规则")
-    private Integer type;
-
-    @ApiModelProperty(notes = "关联游戏id")
-    private Long gameId;
-
-    @ApiModelProperty(notes = "删除状态 0正常 1删除")
-    private Integer isDelete;
-
-    @ApiModelProperty(notes = "状态 0正常 1不可用")
-    private Integer status;
-
-    @ApiModelProperty(notes = "渠道")
-    private Long channel;
-}

+ 0 - 17
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GameStrategyOrderParam.java

@@ -1,17 +0,0 @@
-package com.zanxiang.manage.domain.params;
-
-import com.zanxiang.common.domain.gameStrategy.Order;
-import lombok.Data;
-
-import java.io.Serializable;
-
-/**
- * 注释游戏策略
- *
- * @author xufeng
- * @date 2022-07-01 11:38
- */
-@Data
-public class GameStrategyOrderParam extends Order implements Serializable {
-
-}

+ 0 - 42
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GameStrategyParam.java

@@ -1,42 +0,0 @@
-package com.zanxiang.manage.domain.params;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.io.Serializable;
-
-/**
- * 注释游戏策略
- *
- * @author xufeng
- * @date 2022-07-01 11:38
- */
-@Data
-public class GameStrategyParam implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    @ApiModelProperty(notes = "ID")
-    private Long id;
-
-    @ApiModelProperty(notes = "策略名称")
-    private String name;
-
-    @ApiModelProperty(notes = "策略类型 1:订单起量切换规则")
-    private Integer type;
-
-    @ApiModelProperty(notes = "关联游戏id")
-    private Long gameId;
-
-    @ApiModelProperty(notes = "删除状态 0正常 1删除")
-    private Integer isDelete;
-
-    @ApiModelProperty(notes = "状态 0正常 1不可用")
-    private Integer status;
-
-    @ApiModelProperty(notes = "订单切量")
-    private GameStrategyOrderParam orderConfig;
-
-    @ApiModelProperty(notes = "渠道")
-    private Long channel;
-}

+ 0 - 91
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayApplicationListNoPageParam.java

@@ -1,91 +0,0 @@
-package com.zanxiang.manage.domain.params;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.io.Serializable;
-
-/**
- * 注释游戏应用表
- *
- * @author xufeng
- * @date 2022-06-20 15:16
- */
-@Data
-@NoArgsConstructor
-@AllArgsConstructor
-public class PayApplicationListNoPageParam implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    private Long id;
-
-    /**
-     * 应用名称
-     */
-    @ApiModelProperty(notes = "应用名称")
-    private String name;
-
-    /**
-     * 类型 1 微信小程序
-     */
-    @ApiModelProperty(notes = "类型 1 微信小程序")
-    private Integer type;
-
-    /**
-     * 应用appid
-     */
-    @ApiModelProperty(notes = "应用appid")
-    private String appId;
-
-    /**
-     * 应用原始id
-     */
-    @ApiModelProperty(notes = "应用原始id")
-    private String primevalId;
-
-    /**
-     * 应用主体
-     */
-    @ApiModelProperty(notes = "应用主体")
-    private String company;
-
-    /**
-     * 登录账号
-     */
-    @ApiModelProperty(notes = "登录账号")
-    private String loginName;
-
-    /**
-     * 登录密码
-     */
-    @ApiModelProperty(notes = "登录密码")
-    private String loginPassword;
-
-    /**
-     * 管理员
-     */
-    @ApiModelProperty(notes = "管理员")
-    private String managePerson;
-
-    /**
-     * 备注
-     */
-    @ApiModelProperty(notes = "备注")
-    private String remark;
-
-    /**
-     * 状态 1 不可用 2 可用
-     */
-    @ApiModelProperty(notes = "状态 1 不可用 0正常")
-    private Integer status;
-
-    /**
-     * 是否已删除 1 已删除 2 正常
-     */
-    @ApiModelProperty(notes = "删除状态 1 已删除 0 正常")
-    private Integer isDelete;
-
-}

+ 0 - 56
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayBoxParam.java

@@ -1,56 +0,0 @@
-package com.zanxiang.manage.domain.params;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-/**
- * @author xufeng
- * @date 2022/6/16 19:14
- */
-@Data
-@NoArgsConstructor
-public class PayBoxParam {
-
-    /**
-     * 主键
-     */
-    @ApiModelProperty(notes = "主键, 不传是新建, 传是更新")
-    private Long id;
-
-    /**
-     * 名称
-     */
-    @ApiModelProperty(notes = "名称")
-    private String name;
-
-    /**
-     * 支付名称
-     */
-    @ApiModelProperty(notes = "支付名称")
-    private String payName;
-
-    /**
-     * 应用id
-     */
-    @ApiModelProperty(notes = "应用id")
-    private Integer payApplicationId;
-
-    /**
-     * 商户号id(多个逗号分割,id,)
-     */
-    @ApiModelProperty(notes = "商户号id(多个逗号分割,id,)")
-    private String payMerchantId;
-
-    /**
-     * 盒子类型 1、金币 2、红包
-     */
-    @ApiModelProperty(notes = "盒子类型 1、金币 2、红包")
-    private Integer type;
-
-    /**
-     * 描述
-     */
-    @ApiModelProperty(notes = "描述")
-    private String remark;
-}

+ 0 - 19
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/UserBanAddParam.java

@@ -1,19 +0,0 @@
-package com.zanxiang.manage.domain.params;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * @author : lingfeng
- * @time : 2022-06-29
- * @description : 玩家封禁添加
- */
-@Data
-public class UserBanAddParam {
-
-    /**
-     * 玩家id
-     */
-    @ApiModelProperty(notes = "玩家id")
-    private Long userId;
-}

+ 0 - 24
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/AllGamePayWayByGameIdVO.java

@@ -1,24 +0,0 @@
-package com.zanxiang.manage.domain.vo;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * @author xufeng
- * @date 2022/7/13 17:52
- */
-@Data
-public class AllGamePayWayByGameIdVO {
-
-    @ApiModelProperty(notes = "微信支付配置")
-    private GameWxpayPayVO wxpayPayVO;
-
-    @ApiModelProperty(notes = "虚拟支付配置")
-    private GameAnalogPayVO.PayConfigBean analogPayVO;
-
-    @ApiModelProperty(notes = "支付宝支付配置")
-    private GameAlipayPayVO alipayPayVO;
-
-    @ApiModelProperty(notes = "支付策略配置——订单起量切换规则")
-    private GameStrategyInfoVO gameStrategyVO;
-}

+ 0 - 6
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameListVO.java

@@ -127,12 +127,6 @@ public class GameListVO {
     @ApiModelProperty(notes = "支付方式列表")
     private List<GamePayWayVO> gamePayWayList;
 
-    /**
-     * 游戏订单起量切换以及规则配置
-     */
-    @ApiModelProperty(notes = "游戏订单起量切换以及规则配置")
-    private List<GameStrategyVO> gameStrategyList;
-
     /**
      * CP回调地址
      */

+ 101 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GamePayStrategyListVO.java

@@ -0,0 +1,101 @@
+package com.zanxiang.manage.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Map;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-07-06
+ * @description : 游起起量规则配置
+ */
+@Data
+public class GamePayStrategyListVO {
+
+    /**
+     * 主键id
+     */
+    @ApiModelProperty(notes = "主键id")
+    private Long id;
+
+    /**
+     * 策略名称
+     */
+    @ApiModelProperty(notes = "策略名称")
+    private String name;
+
+    /**
+     * 策略类型 1: 切换规则, 2: 显示规则, 3: 订单起量切换规则
+     */
+    @ApiModelProperty(notes = "策略类型 1: 切换规则, 2: 显示规则, 3: 订单起量切换规则")
+    private Integer type;
+
+    /**
+     * 策略类型名称
+     */
+    @ApiModelProperty(notes = "策略类型名称")
+    private String typeName;
+
+    /**
+     * 关联游戏id
+     */
+    @ApiModelProperty(notes = "关联游戏id")
+    private Long gameId;
+
+    /**
+     * 游戏名称
+     */
+    @ApiModelProperty(notes = "游戏名称")
+    private String gameName;
+
+    /**
+     * 游戏类型id
+     */
+    @ApiModelProperty(notes = "游戏类型id")
+    private Long gameCategoryId;
+
+    /**
+     * 游戏类型名称
+     */
+    @ApiModelProperty(notes = "游戏类型名称")
+    private String gameCategory;
+
+    /**
+     * 商户号日金额
+     */
+    @ApiModelProperty(notes = "日已用额度")
+    private BigDecimal dayPayAmount;
+
+    /**
+     * 商户号周金额
+     */
+    @ApiModelProperty(notes = "周已用额度")
+    private BigDecimal weakerPayAmount;
+
+    /**
+     * 商户号月金额
+     */
+    @ApiModelProperty(notes = "月已用额度")
+    private BigDecimal mouthPayAmount;
+
+    /**
+     * 商户号总金额
+     */
+    @ApiModelProperty(notes = "总支付额度")
+    private BigDecimal totalPayAmount;
+
+    /**
+     * 商户信息
+     */
+    @ApiModelProperty(notes = "商户信息")
+    private Map<String, String> payMerchantMap;
+
+    /**
+     * 状态 1 不可用 0 可用
+     */
+    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
+    private Integer status;
+
+}

+ 0 - 63
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameStrategyInfoVO.java

@@ -1,63 +0,0 @@
-package com.zanxiang.manage.domain.vo;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.io.Serializable;
-
-/**
- * 注释游戏策略
- *
- * @author xufeng
- * @date 2022-07-01 11:38
- */
-@Data
-public class GameStrategyInfoVO implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    @ApiModelProperty(notes = "ID")
-    private Long id;
-
-    @ApiModelProperty(notes = "策略名称")
-    private String name;
-
-    @ApiModelProperty(notes = "策略类型 1:订单起量切换规则")
-    private Integer type;
-
-    @ApiModelProperty(notes = "关联游戏id")
-    private Long gameId;
-
-    @ApiModelProperty(notes = "关联游戏名称")
-    private String gameName;
-
-    @ApiModelProperty(notes = "关联游戏类型")
-    private String gameType;
-
-    @ApiModelProperty(notes = "支付方式")
-    private String gamePayWay;
-
-    @ApiModelProperty(notes = "支付盒子")
-    private String gamePayBox;
-
-    @ApiModelProperty(notes = "支付商户号")
-    private String payMerchant;
-
-    @ApiModelProperty(notes = "关联应用名称")
-    private String applicationName;
-
-    @ApiModelProperty(notes = "关联商户号_商户主体")
-    private String applicationMerchant;
-
-    @ApiModelProperty(notes = "删除状态 0正常 1删除")
-    private Integer isDelete;
-
-    @ApiModelProperty(notes = "状态 0正常 1不可用")
-    private Integer status;
-
-    @ApiModelProperty(notes = "配置")
-    private GameStrategyOrderVO config;
-
-    @ApiModelProperty(notes = "渠道")
-    private Long channel;
-}

+ 0 - 63
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameStrategyListVO.java

@@ -1,63 +0,0 @@
-package com.zanxiang.manage.domain.vo;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.io.Serializable;
-
-/**
- * 注释游戏策略
- *
- * @author xufeng
- * @date 2022-07-01 11:38
- */
-@Data
-public class GameStrategyListVO implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    @ApiModelProperty(notes = "ID")
-    private Long id;
-
-    @ApiModelProperty(notes = "策略名称")
-    private String name;
-
-    @ApiModelProperty(notes = "策略类型 1:订单起量切换规则")
-    private Integer type;
-
-    @ApiModelProperty(notes = "关联游戏id")
-    private Long gameId;
-
-    @ApiModelProperty(notes = "关联游戏名称")
-    private String gameName;
-
-    @ApiModelProperty(notes = "关联游戏类型")
-    private String gameType;
-
-    @ApiModelProperty(notes = "支付方式")
-    private String gamePayWay;
-
-    @ApiModelProperty(notes = "支付盒子")
-    private String gamePayBox;
-
-    @ApiModelProperty(notes = "支付商户号")
-    private String payMerchant;
-
-    @ApiModelProperty(notes = "关联应用名称")
-    private String applicationName;
-
-    @ApiModelProperty(notes = "关联商户号_商户主体")
-    private String applicationMerchant;
-
-    @ApiModelProperty(notes = "删除状态 0正常 1删除")
-    private Integer isDelete;
-
-    @ApiModelProperty(notes = "状态 0正常 1不可用")
-    private Integer status;
-
-    @ApiModelProperty(notes = "配置")
-    private String config;
-
-    @ApiModelProperty(notes = "渠道")
-    private Long channel;
-}

+ 0 - 17
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameStrategyOrderVO.java

@@ -1,17 +0,0 @@
-package com.zanxiang.manage.domain.vo;
-
-import com.zanxiang.common.domain.gameStrategy.Order;
-import lombok.Data;
-
-import java.io.Serializable;
-
-/**
- * 注释游戏策略
- *
- * @author xufeng
- * @date 2022-07-01 11:38
- */
-@Data
-public class GameStrategyOrderVO extends Order implements Serializable {
-
-}

+ 0 - 31
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GameStrategyVO.java

@@ -1,31 +0,0 @@
-package com.zanxiang.manage.domain.vo;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * @author : lingfeng
- * @time : 2022-07-06
- * @description : 游起起量规则配置
- */
-@Data
-public class GameStrategyVO {
-
-    /**
-     * 配置id
-     */
-    @ApiModelProperty(notes = "配置id")
-    private Long id;
-
-    /**
-     * 策略名称
-     */
-    @ApiModelProperty(notes = "订单起量切换规则")
-    private String name;
-
-    /**
-     * 状态 0正常 1不可用
-     */
-    @ApiModelProperty(notes = "状态 , 0 : 开启, 1 : 关闭")
-    private Integer status;
-}

+ 0 - 25
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayBoxTypeChoiceVO.java

@@ -1,25 +0,0 @@
-package com.zanxiang.manage.domain.vo;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * @author : lingfeng
- * @time : 2022-11-29
- * @description : 支付盒子类型
- */
-@Data
-public class PayBoxTypeChoiceVO {
-
-    /**
-     * 支付盒子类型
-     */
-    @ApiModelProperty(notes = "支付盒子类型")
-    private Integer type;
-
-    /**
-     * 支付盒子名称
-     */
-    @ApiModelProperty(notes = "支付盒子名称")
-    private String name;
-}

+ 0 - 31
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayWayVO.java

@@ -1,31 +0,0 @@
-package com.zanxiang.manage.domain.vo;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * @author : lingfeng
- * @time : 2022-06-06
- * @description : 支付方式
- */
-@Data
-public class PayWayVO {
-
-    /**
-     * 支付方式
-     */
-    @ApiModelProperty(notes = "支付方式")
-    private Long id;
-
-    /**
-     * 支付渠道标识
-     */
-    @ApiModelProperty(notes = "支付渠道标识")
-    private String payWayKey;
-
-    /**
-     * 支付渠道名称
-     */
-    @ApiModelProperty(notes = "支付渠道名称")
-    private String payWayName;
-}

+ 40 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/IGamePayStrategyService.java

@@ -0,0 +1,40 @@
+package com.zanxiang.manage.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zanxiang.manage.domain.params.GamePayStrategyListParam;
+import com.zanxiang.manage.domain.vo.GamePayStrategyListVO;
+import com.zanxiang.mybatis.entity.GamePayStrategy;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-23
+ * @description : 游戏策略
+ */
+public interface IGamePayStrategyService extends IService<GamePayStrategy> {
+
+    /**
+     * 页面列表
+     *
+     * @param param 参数
+     * @return {@link IPage}<{@link GamePayStrategyListVO}>
+     */
+    IPage<GamePayStrategyListVO> pageList(GamePayStrategyListParam param);
+
+    /**
+     * 状态更新
+     *
+     * @param id     id
+     * @param status 状态
+     * @return {@link Boolean}
+     */
+    Boolean statusUpdate(Long id, Integer status);
+
+    /**
+     * 删除通过id
+     *
+     * @param id id
+     * @return boolean
+     */
+    boolean deleteById(Long id);
+}

+ 19 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/IGamePayWayService.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.PayDeviceDTO;
 import com.zanxiang.manage.domain.params.GamePayWayAddUpdateParam;
 import com.zanxiang.manage.domain.params.GamePayWayListParam;
 import com.zanxiang.manage.domain.vo.GamePayWayListVO;
@@ -9,6 +10,8 @@ import com.zanxiang.manage.domain.vo.GamePayWayVO;
 import com.zanxiang.mybatis.entity.GamePayWay;
 
 import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 /**
  * @author : lingfeng
@@ -57,4 +60,20 @@ public interface IGamePayWayService extends IService<GamePayWay> {
      * @return {@link IPage}<{@link GamePayWayListVO}>
      */
     IPage<GamePayWayListVO> pageList(GamePayWayListParam param);
+
+    /**
+     * 被游戏支付设备id
+     *
+     * @param gameId 游戏id
+     * @return {@link Map}<{@link Long}, {@link PayDeviceDTO}>
+     */
+    Map<Long, PayDeviceDTO> getPayDeviceByGameId(Long gameId);
+
+    /**
+     * 让游戏商人没有
+     *
+     * @param gameId 游戏id
+     * @return {@link Set}<{@link String}>
+     */
+    Set<String> getGameMerchantNo(Long gameId);
 }

+ 0 - 43
game-module/game-manage/src/main/java/com/zanxiang/manage/service/IGameStrategyService.java

@@ -1,43 +0,0 @@
-package com.zanxiang.manage.service;
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.zanxiang.manage.domain.params.GameStrategyListParam;
-import com.zanxiang.manage.domain.params.GameStrategyParam;
-import com.zanxiang.manage.domain.vo.GameStrategyListVO;
-import com.zanxiang.manage.domain.vo.GameStrategyVO;
-import com.zanxiang.mybatis.entity.GameStrategy;
-
-import java.util.List;
-
-/**
- * @author : lingfeng
- * @time : 2022-06-23
- * @description : 游戏策略
- */
-public interface IGameStrategyService extends IService<GameStrategy> {
-
-    /**
-     * 通过游戏id
-     *
-     * @param gameId 游戏id
-     * @return {@link List}<{@link GameStrategyVO}>
-     */
-    List<GameStrategyVO> getByGameId(Long gameId);
-
-    /**
-     * 保存或更新
-     *
-     * @param bo : 参数
-     * @return {@link Boolean}
-     */
-    Boolean saveOrUpdate(GameStrategyParam bo);
-
-    /**
-     * 列表
-     *
-     * @param bo : 参数
-     * @return {@link IPage}<{@link GameStrategyListVO}>
-     */
-    IPage<GameStrategyListVO> list(GameStrategyListParam bo);
-}

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

@@ -3,7 +3,6 @@ package com.zanxiang.manage.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.manage.domain.dto.PayWayDTO;
 import com.zanxiang.manage.domain.vo.PayWayChoiceVO;
-import com.zanxiang.manage.domain.vo.PayWayVO;
 import com.zanxiang.mybatis.entity.PayWay;
 
 import java.util.List;
@@ -26,7 +25,7 @@ public interface IPayWayService extends IService<PayWay> {
     /**
      * 支付方式图
      *
-     * @return {@link Map}<{@link Long}, {@link PayWayVO}>
+     * @return {@link Map}<{@link Long}, {@link PayWayDTO}>
      */
     Map<Long, PayWayDTO> payWayMap();
 

+ 103 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/impl/GamePayStrategyServiceImpl.java

@@ -0,0 +1,103 @@
+package com.zanxiang.manage.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+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.common.enums.GameStrategyTypeEnum;
+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.PayMerchantDTO;
+import com.zanxiang.manage.domain.params.GamePayStrategyListParam;
+import com.zanxiang.manage.domain.vo.GamePayStrategyListVO;
+import com.zanxiang.manage.service.*;
+import com.zanxiang.mybatis.entity.GamePayStrategy;
+import com.zanxiang.mybatis.mapper.GameStrategyMapper;
+import org.apache.logging.log4j.util.Strings;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.time.LocalDateTime;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-23
+ * @description : 游戏支付策略
+ */
+@Service
+public class GamePayStrategyServiceImpl extends ServiceImpl<GameStrategyMapper, GamePayStrategy> implements IGamePayStrategyService {
+
+    @Autowired
+    private IGameCategoryService gameCategoryService;
+
+    @Autowired
+    private IGameService gameService;
+
+    @Autowired
+    private IPayMerchantService payMerchantService;
+
+    @Autowired
+    private IGamePayWayService gamePayWayService;
+
+    @Override
+    public IPage<GamePayStrategyListVO> pageList(GamePayStrategyListParam param) {
+        Map<Long, GameCategoryDTO> gameCategoryMap = gameCategoryService.gameCategoryMap();
+        Map<Long, GameDTO> gameMap = gameService.gameMap();
+        Map<String, PayMerchantDTO> payMerchantMap = payMerchantService.payMerchantMap();
+        return super.page(param.toPage(), new LambdaQueryWrapper<GamePayStrategy>()
+                .like(Strings.isNotBlank(param.getName()), GamePayStrategy::getName, param.getName())
+                .eq(param.getType() != null, GamePayStrategy::getType, param.getType())
+                .eq(param.getGameId() != null, GamePayStrategy::getGameId, param.getGameId())
+                .eq(param.getStatus() != null, GamePayStrategy::getStatus, param.getStatus())
+                .orderByDesc(GamePayStrategy::getCreateTime))
+                .convert(gamePayStrategy -> this.toVO(gameMap, gameCategoryMap, gamePayStrategy, payMerchantMap));
+    }
+
+    private GamePayStrategyListVO toVO(Map<Long, GameDTO> gameMap, Map<Long, GameCategoryDTO> gameCategoryMap,
+                                       GamePayStrategy gamePayStrategy, Map<String, PayMerchantDTO> payMerchantMap) {
+        GamePayStrategyListVO gamePayStrategyListVO = BeanUtils.copy(gamePayStrategy, GamePayStrategyListVO.class);
+        if (gamePayStrategyListVO == null) {
+            return null;
+        }
+        gamePayStrategyListVO.setTypeName(GameStrategyTypeEnum.getNameByType(gamePayStrategyListVO.getType()));
+        GameDTO gameDTO = gameMap.get(gamePayStrategyListVO.getGameId());
+        if (gameDTO != null) {
+            GameCategoryDTO gameCategoryDTO = gameCategoryMap.get(gameDTO.getCategory());
+            gamePayStrategyListVO.setGameName(gameDTO.getName());
+            if (gameCategoryDTO != null) {
+                gamePayStrategyListVO.setGameCategory(gameCategoryDTO.getName());
+                gamePayStrategyListVO.setGameCategoryId(gameCategoryDTO.getId());
+            }
+        }
+        Set<String> gameMerchantNoSet = gamePayWayService.getGameMerchantNo(gamePayStrategyListVO.getGameId());
+        Map<String, String> merchantMap = new HashMap<>(gameMerchantNoSet.size());
+        gameMerchantNoSet.forEach(merchantNo -> {
+            PayMerchantDTO payMerchantDTO = payMerchantMap.get(merchantNo);
+            if (payMerchantDTO != null) {
+                merchantMap.put(payMerchantDTO.getMerchantNo(), payMerchantDTO.getMerchantName());
+            }
+        });
+        gamePayStrategyListVO.setPayMerchantMap(merchantMap);
+        return gamePayStrategyListVO;
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean statusUpdate(Long id, Integer status) {
+        return super.update(new LambdaUpdateWrapper<GamePayStrategy>()
+                .set(GamePayStrategy::getStatus, status)
+                .set(GamePayStrategy::getUpdateTime, LocalDateTime.now())
+                .eq(GamePayStrategy::getId, id));
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public boolean deleteById(Long id) {
+        return super.removeById(id);
+    }
+}

+ 39 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/impl/GamePayWayServiceImpl.java

@@ -29,6 +29,7 @@ import org.springframework.util.CollectionUtils;
 
 import java.time.LocalDateTime;
 import java.util.*;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 
 /**
@@ -266,4 +267,42 @@ public class GamePayWayServiceImpl extends ServiceImpl<GamePayWayMapper, GamePay
                 .build()));
         return list;
     }
+
+    @Override
+    public Map<Long, PayDeviceDTO> getPayDeviceByGameId(Long gameId) {
+        List<GamePayWay> gamePayWayList = super.list(new LambdaQueryWrapper<GamePayWay>()
+                .eq(GamePayWay::getGameId, gameId));
+        if (CollectionUtils.isEmpty(gamePayWayList)) {
+            return Collections.emptyMap();
+        }
+        List<Long> payDeviceIdList = gamePayWayList.stream().map(GamePayWay::getPayDeviceId).distinct().collect(Collectors.toList());
+        List<PayDeviceDTO> payDeviceDTOList = BeanUtils.copyList(payDeviceService.listByIds(payDeviceIdList), PayDeviceDTO.class);
+        if (CollectionUtils.isEmpty(payDeviceDTOList)) {
+            return Collections.emptyMap();
+        }
+        return payDeviceDTOList.stream().collect(Collectors.toMap(PayDeviceDTO::getId, Function.identity()));
+    }
+
+    @Override
+    public Set<String> getGameMerchantNo(Long gameId) {
+        List<GamePayWay> gamePayWayList = super.list(new LambdaQueryWrapper<GamePayWay>()
+                .eq(GamePayWay::getGameId, gameId));
+        if (CollectionUtils.isEmpty(gamePayWayList)) {
+            return Collections.emptySet();
+        }
+        Set<String> merchantNoSet = new HashSet<>();
+        gamePayWayList.forEach(gamePayWay -> {
+            Long payBoxId = gamePayWay.getPayBoxId();
+            if (payBoxId == null || Strings.isNotBlank(gamePayWay.getMerchantNo())) {
+                merchantNoSet.add(gamePayWay.getMerchantNo());
+            } else {
+                PayBoxDTO payBoxDTO = payBoxService.getByPayBoxId(payBoxId);
+                if (Strings.isNotBlank(payBoxDTO.getMerchantNos())) {
+                    String[] merchantNoArray = payBoxDTO.getMerchantNos().split(",");
+                    merchantNoSet.addAll(Arrays.asList(merchantNoArray));
+                }
+            }
+        });
+        return merchantNoSet;
+    }
 }

+ 0 - 6
game-module/game-manage/src/main/java/com/zanxiang/manage/service/impl/GameServiceImpl.java

@@ -39,9 +39,6 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements IG
     @Autowired
     private IGamePayWayService gamePayWayService;
 
-    @Autowired
-    private IGameStrategyService gameStrategyService;
-
     @Autowired
     private IGameCategoryService gameCategoryService;
 
@@ -410,9 +407,6 @@ public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements IG
         //查询支付方式列表
         List<GamePayWayVO> gamePayWayVOList = gamePayWayService.getByGameId(game.getId());
         gameListVO.setGamePayWayList(gamePayWayVOList);
-        //查询规则配置列表
-        List<GameStrategyVO> gameStrategyVOList = gameStrategyService.getByGameId(game.getId());
-        gameListVO.setGameStrategyList(gameStrategyVOList);
         return gameListVO;
     }
 

+ 0 - 119
game-module/game-manage/src/main/java/com/zanxiang/manage/service/impl/GameStrategyServiceImpl.java

@@ -1,119 +0,0 @@
-package com.zanxiang.manage.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.zanxiang.common.enums.DeleteEnum;
-import com.zanxiang.common.exception.ParamNullException;
-import com.zanxiang.common.utils.StringUtils;
-import com.zanxiang.common.utils.bean.BeanUtils;
-import com.zanxiang.manage.domain.mapper.GameStrategyListMapper;
-import com.zanxiang.manage.domain.params.GameStrategyListParam;
-import com.zanxiang.manage.domain.params.GameStrategyParam;
-import com.zanxiang.manage.domain.vo.GameStrategyListVO;
-import com.zanxiang.manage.domain.vo.GameStrategyVO;
-import com.zanxiang.manage.service.IGamePayWayService;
-import com.zanxiang.manage.service.IGameStrategyService;
-import com.zanxiang.manage.service.IPayBoxService;
-import com.zanxiang.manage.service.IPayMerchantService;
-import com.zanxiang.module.util.JsonUtil;
-import com.zanxiang.mybatis.entity.GamePayWay;
-import com.zanxiang.mybatis.entity.GameStrategy;
-import com.zanxiang.mybatis.entity.PayMerchant;
-import com.zanxiang.mybatis.mapper.GameStrategyMapper;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-/**
- * @author : lingfeng
- * @time : 2022-06-23
- * @description : 游戏支付策略
- */
-@Service
-public class GameStrategyServiceImpl extends ServiceImpl<GameStrategyMapper, GameStrategy> implements IGameStrategyService {
-
-    @Autowired
-    private IGamePayWayService gamePayWayService;
-
-    @Autowired
-    private IPayMerchantService payMerchantService;
-
-    @Autowired
-    private GameStrategyListMapper gameStrategyListMapper;
-
-    @Autowired
-    private IPayBoxService payBoxService;
-
-    @Override
-    public List<GameStrategyVO> getByGameId(Long gameId) {
-        List<GameStrategy> gameStrategyList = super.list(new LambdaQueryWrapper<GameStrategy>()
-                .eq(GameStrategy::getGameId, gameId)
-                .select(GameStrategy::getId, GameStrategy::getName, GameStrategy::getStatus));
-        return BeanUtils.copyList(gameStrategyList, GameStrategyVO.class);
-    }
-
-    @Override
-    public Boolean saveOrUpdate(GameStrategyParam bo) {
-        if (bo.getIsDelete() != null && bo.getIsDelete() == DeleteEnum.YES.getCode()) {
-            if (bo.getId() == null) {
-                throw new ParamNullException("Id");
-            }
-            return removeById(bo.getId());
-        }
-        GameStrategy gameStrategy = BeanUtils.copy(bo, GameStrategy.class);
-        if (bo.getOrderConfig() != null && !bo.getOrderConfig().equals("")) {
-            gameStrategy.setConfig(JsonUtil.toString(bo.getOrderConfig()));
-        }
-        return saveOrUpdate(gameStrategy);
-    }
-
-    @Override
-    public IPage<GameStrategyListVO> list(GameStrategyListParam bo) {
-
-        Page<GameStrategy> gameStrategyPage = new Page<>(bo.getPageNum(), bo.getPageSize());
-        IPage<GameStrategyListVO> list = gameStrategyListMapper.List(gameStrategyPage, bo.getName(), bo.getType(), bo.getStatus(), bo.getGameId());
-        if (list.getTotal() == 0) {
-            return null;
-        }
-        List<GameStrategyListVO> data = list.getRecords();
-
-        HashMap<Long, String> gamePayWayMap = new HashMap<>();
-
-        //获取商户号列表
-        List<PayMerchant> payMerchantList = payMerchantService.list();
-        Map<String, PayMerchant> payMerchantData = payMerchantList.stream().collect(Collectors.toMap(PayMerchant::getMerchantNo, PayMerchant -> PayMerchant));
-
-        data.stream().forEach(t -> {
-            //支付方式 -   避免重复查询,已获取则缓存
-            if (gamePayWayMap.get(t.getGameId()) == null) {
-                List<GamePayWay> gamePayWayList = gamePayWayService.list(new QueryWrapper<GamePayWay>().lambda().eq(GamePayWay::getGameId, t.getGameId()));
-                if (CollectionUtils.isNotEmpty(gamePayWayList)) {
-                    String payWayName = gamePayWayList.stream().map(b -> b.getPayName()).collect(Collectors.joining(","));
-                    t.setGamePayWay(payWayName);
-                }
-                gamePayWayMap.put(t.getGameId(), t.getGamePayWay());
-                if (StringUtils.isNotEmpty(t.getPayMerchant())) {
-//                    t.setApplicationMerchant(payBoxService.getMerchantDetail(payMerchantData, t.getPayMerchant()));
-                }
-            }
-
-        });
-        return list;
-    }
-
-    private GameStrategyListVO toVo(GameStrategy gameStrategy) {
-        if (Objects.isNull(gameStrategy)) {
-            return null;
-        }
-        return BeanUtils.copy(gameStrategy, GameStrategyListVO.class);
-    }
-}