Selaa lähdekoodia

后台逻辑开发

xufeng 2 vuotta sitten
vanhempi
commit
157e44b5b8
38 muutettua tiedostoa jossa 811 lisäystä ja 75 poistoa
  1. 23 0
      game-module/game-common/src/main/java/com/zanxiang/common/enums/StatusEnum.java
  2. 2 0
      game-module/game-common/src/main/java/com/zanxiang/common/exception/ParamNullException.java
  3. 2 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/ManageApplication.java
  4. 51 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/GamePayWayController.java
  5. 8 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayApplicationController.java
  6. 17 4
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayBoxController.java
  7. 10 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayMerchantController.java
  8. 24 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/mapper/GamePayWayListMapper.java
  9. 29 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/mapper/PayBoxListMapper.java
  10. 29 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GamePayWayListParam.java
  11. 42 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GamePayWayParam.java
  12. 93 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayApplicationListNoPageParam.java
  13. 2 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayApplicationListParam.java
  14. 2 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayApplicationParam.java
  15. 16 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayBoxListParam.java
  16. 9 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayBoxParam.java
  17. 30 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantListNoPageParam.java
  18. 1 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantListParam.java
  19. 2 5
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantParam.java
  20. 59 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GamePayWayListVO.java
  21. 1 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayApplicationVO.java
  22. 43 9
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayBoxListVO.java
  23. 64 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayMerchantListNoPageVO.java
  24. 2 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayMerchantListVO.java
  25. 2 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayMerchantVO.java
  26. 32 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/GamePayWayService.java
  27. 51 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GamePayWayServiceImpl.java
  28. 18 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayApplicationServiceImpl.java
  29. 71 16
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayBoxServiceImpl.java
  30. 16 14
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayMerchantServiceImpl.java
  31. 17 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/PayApplicationService.java
  32. 3 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/PayBoxService.java
  33. 6 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/PayMerchantService.java
  34. 17 5
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/GamePayWay.java
  35. 1 1
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayApplication.java
  36. 14 0
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayBox.java
  37. 1 1
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayMerchant.java
  38. 1 0
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/mapper/PayBoxMapper.java

+ 23 - 0
game-module/game-common/src/main/java/com/zanxiang/common/enums/StatusEnum.java

@@ -0,0 +1,23 @@
+package com.zanxiang.common.enums;
+
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+
+/**
+ * @author xufeng
+ * @date 2022/6/13 11:39
+ */
+@Getter
+@NoArgsConstructor
+public enum StatusEnum {
+    YES(0, "正常"),
+    NO(1, "禁止");
+
+    private int code;
+    private String name;
+
+    StatusEnum(int code, String name) {
+        this.code = code;
+        this.name = name;
+    }
+}

+ 2 - 0
game-module/game-common/src/main/java/com/zanxiang/common/exception/ParamNullException.java

@@ -1,6 +1,8 @@
 package com.zanxiang.common.exception;
 
 /**
+ * 参数为空异常
+ *
  * @author xufeng
  * @date 2022/6/22 17:31
  */

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

@@ -2,6 +2,7 @@ package com.zanxiang.manage;
 
 import lombok.extern.slf4j.Slf4j;
 import org.mybatis.spring.annotation.MapperScan;
+import org.mybatis.spring.annotation.MapperScans;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
@@ -11,7 +12,7 @@ import org.springframework.web.bind.annotation.CrossOrigin;
 @Slf4j
 @EnableDiscoveryClient
 @SpringBootApplication
-@MapperScan("com.zanxiang.mybatis.mapper")
+@MapperScan({"com.zanxiang.mybatis.mapper", "com.zanxiang.manage.domain.mapper"})
 public class ManageApplication {
 
     public static void main(String[] args) {

+ 51 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/GamePayWayController.java

@@ -0,0 +1,51 @@
+package com.zanxiang.manage.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.zanxiang.common.domain.ResultVo;
+import com.zanxiang.common.utils.bean.BeanUtils;
+import com.zanxiang.manage.domain.bo.PayApplicationBO;
+import com.zanxiang.manage.domain.params.GamePayWayListParam;
+import com.zanxiang.manage.domain.params.GamePayWayParam;
+import com.zanxiang.manage.domain.params.PayApplicationListParam;
+import com.zanxiang.manage.domain.params.PayApplicationParam;
+import com.zanxiang.manage.domain.vo.GamePayWayListVO;
+import com.zanxiang.manage.domain.vo.PayApplicationVO;
+import com.zanxiang.manage.service.GamePayWayService;
+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 xufeng
+ * @date 2022-06-30 14:22
+ */
+@Api(tags = "游戏支付配置")
+@RestController
+@RequestMapping("/game-pay-way")
+public class GamePayWayController {
+
+    @Autowired
+    private GamePayWayService gamePayWayService;
+
+    @ApiOperation(value = "新增/编辑/删除")
+    @PostMapping(value = "/save")
+    public ResultVo<Boolean> save(@Validated @RequestBody GamePayWayParam param) {
+        return ResultVo.ok(gamePayWayService.saveOrUpdate(param));
+    }
+
+    @ApiOperation(value = "列表")
+    @PostMapping(value = "/list")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = GamePayWayListVO.class, responseContainer = "list")})
+    public ResultVo<IPage<GamePayWayListVO>> list(@Validated @RequestBody GamePayWayListParam param) {
+        return ResultVo.ok(gamePayWayService.list(param));
+    }
+}

+ 8 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayApplicationController.java

@@ -6,6 +6,7 @@ import com.zanxiang.common.enums.HttpStatusEnum;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayApplicationBO;
 import com.zanxiang.manage.domain.dto.PayApplicationDTO;
+import com.zanxiang.manage.domain.params.PayApplicationListNoPageParam;
 import com.zanxiang.manage.domain.params.PayApplicationListParam;
 import com.zanxiang.manage.domain.params.PayApplicationParam;
 import com.zanxiang.manage.domain.vo.PayApplicationVO;
@@ -51,4 +52,11 @@ public class PayApplicationController {
     public ResultVo<IPage<PayApplicationVO>> list(@Validated @RequestBody PayApplicationListParam param) {
         return ResultVo.ok(payApplicationService.list(param));
     }
+
+    @ApiOperation(value = "列表(无分页)")
+    @PostMapping(value = "/listNoPage")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = PayApplicationVO.class, responseContainer = "list")})
+    public ResultVo<List<PayApplicationVO>> listNoPage(@Validated @RequestBody PayApplicationListNoPageParam param) {
+        return ResultVo.ok(payApplicationService.listNoPage(param));
+    }
 }

+ 17 - 4
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayBoxController.java

@@ -4,11 +4,19 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.zanxiang.common.domain.ResultVo;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayMerchantBO;
+import com.zanxiang.manage.domain.params.PayBoxListParam;
+import com.zanxiang.manage.domain.params.PayBoxParam;
 import com.zanxiang.manage.domain.params.PayMerchantListParam;
 import com.zanxiang.manage.domain.params.PayMerchantParam;
+import com.zanxiang.manage.domain.vo.PayBoxListVO;
+import com.zanxiang.manage.domain.vo.PayMerchantListVO;
 import com.zanxiang.manage.domain.vo.PayMerchantVO;
+import com.zanxiang.manage.service.PayBoxService;
 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;
@@ -25,15 +33,20 @@ import org.springframework.web.bind.annotation.RestController;
 @RestController
 @RequestMapping("/pay-box")
 public class PayBoxController {
+
+    @Autowired
+    private PayBoxService payBoxService;
+
     @ApiOperation(value = "支付盒子-新增/修改/删除")
     @PostMapping(value = "/save")
-    public ResultVo<Boolean> save(@Validated @RequestBody PayMerchantParam param) {
-        return null;
+    public ResultVo<Boolean> save(@Validated @RequestBody PayBoxParam param) {
+        return ResultVo.ok(payBoxService.saveOrUpdate(param));
     }
 
     @ApiOperation(value = "商户号-列表")
     @PostMapping(value = "/list")
-    public ResultVo<IPage<PayMerchantVO>> list(@Validated @RequestBody PayMerchantListParam param) {
-        return null;
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = PayBoxListVO.class, responseContainer = "list")})
+    public ResultVo<IPage<PayBoxListVO>> list(@Validated @RequestBody PayBoxListParam param) {
+        return ResultVo.ok(payBoxService.list(param));
     }
 }

+ 10 - 3
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayMerchantController.java

@@ -7,11 +7,11 @@ import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayMerchantBO;
 import com.zanxiang.manage.domain.bo.PayMerchantListBO;
 import com.zanxiang.manage.domain.dto.PayMerchantDTO;
+import com.zanxiang.manage.domain.params.PayApplicationListParam;
+import com.zanxiang.manage.domain.params.PayMerchantListNoPageParam;
 import com.zanxiang.manage.domain.params.PayMerchantListParam;
 import com.zanxiang.manage.domain.params.PayMerchantParam;
-import com.zanxiang.manage.domain.vo.GameCategoryParentVO;
-import com.zanxiang.manage.domain.vo.PayMerchantListVO;
-import com.zanxiang.manage.domain.vo.PayMerchantVO;
+import com.zanxiang.manage.domain.vo.*;
 import com.zanxiang.manage.service.PayMerchantService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -58,4 +58,11 @@ public class PayMerchantController {
         return ResultVo.ok(result);
     }
 
+    @ApiOperation(value = "列表(无分页)")
+    @PostMapping(value = "/listNoPage")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = PayMerchantListNoPageVO.class, responseContainer = "list")})
+    public ResultVo<List<PayMerchantListNoPageVO>> listNoPage(@Validated @RequestBody PayMerchantListNoPageParam param) {
+        return ResultVo.ok(payMerchantService.listNoPage(param));
+    }
+
 }

+ 24 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/mapper/GamePayWayListMapper.java

@@ -0,0 +1,24 @@
+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.GamePayWayListVO;
+import com.zanxiang.mybatis.entity.GamePayWay;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+/**
+ * @author xufeng
+ * @date 2022/6/29 16:32
+ */
+public interface GamePayWayListMapper extends BaseMapper<GamePayWay> {
+
+    @Select("<script> SELECT p.*, g.`name` as gameName,c.`name` as gameType, w.pay_name as payWayName, b.`name` as payBoxName  FROM h_game_pay_way p LEFT JOIN h_game g ON p.game_id = g.id LEFT JOIN h_pay_box b ON p.pay_box_id = b.id LEFT JOIN h_pay_way w ON w.id = p.pay_way_id LEFT JOIN h_game_category c ON g.category = c.id " +
+            "where p.is_delete=0 " +
+            "<when test='gameName != null'> and g.`name` like CONCAT('%', #{gameName}, '%') </when>" +
+            "<when test='payWayId != null'> and p.pay_way_id = #{payWayId} </when>" +
+            "<when test='status != null'> and p.status = #{status} </when>" +
+            " </script>")
+    IPage<GamePayWayListVO> List(Page<GamePayWay> page, @Param("gameName") String gameName, @Param("payWayId") String payWayId, @Param("status") String status);
+}

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

@@ -0,0 +1,29 @@
+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 h_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);
+}

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

@@ -0,0 +1,29 @@
+package com.zanxiang.manage.domain.params;
+
+import com.zanxiang.common.base.BasePage;
+import com.zanxiang.mybatis.entity.GamePayWay;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author : xufeng
+ * @time : 2022-06-30
+ * @description : 游戏支付配置表
+ */
+@Data
+public class GamePayWayListParam extends BasePage<GamePayWay> {
+
+    @ApiModelProperty(notes = "游戏名称")
+    private String gameName;
+
+    @ApiModelProperty(notes = "游戏类型")
+    private String gameType;
+
+    @ApiModelProperty(notes = "支付方式id")
+    private Integer payWayId;
+
+
+    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
+    private Integer status;
+
+}

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

@@ -0,0 +1,42 @@
+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 = "备注")
+    private String remark;
+
+}

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

@@ -0,0 +1,93 @@
+package com.zanxiang.manage.domain.params;
+
+import com.zanxiang.common.base.BasePage;
+import com.zanxiang.mybatis.entity.PayApplication;
+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;
+
+}

+ 2 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayApplicationListParam.java

@@ -82,13 +82,13 @@ public class PayApplicationListParam extends BasePage<PayApplication> implements
     /**
      * 状态 1 不可用 2 可用
      */
-    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
+    @ApiModelProperty(notes = "状态 1 不可用 0正常")
     private Integer status;
 
     /**
      * 是否已删除 1 已删除 2 正常
      */
-    @ApiModelProperty(notes = "是否已删除 1 已删除 2 正常")
+    @ApiModelProperty(notes = "删除状态 1 已删除 0 正常")
     private Integer isDelete;
 
 }

+ 2 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayApplicationParam.java

@@ -79,13 +79,13 @@ public class PayApplicationParam implements Serializable {
     /**
      * 状态 1 不可用 2 可用
      */
-    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
+    @ApiModelProperty(notes = "状态 1 不可用 0正常")
     private Integer status;
 
     /**
      * 是否已删除 1 已删除 2 正常
      */
-    @ApiModelProperty(notes = "是否已删除 1 已删除 2 正常")
+    @ApiModelProperty(notes = "删除状态 1 已删除 0 正常")
     private Integer isDelete;
 
 }

+ 16 - 3
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayBoxListParam.java

@@ -14,7 +14,7 @@ import java.io.Serializable;
  */
 @Data
 @NoArgsConstructor
-public class PayBoxListParam extends BasePage<PayBox> implements Serializable {
+public class PayBoxListParam extends BasePage<PayBox> {
 
     private Integer id;
 
@@ -39,9 +39,22 @@ public class PayBoxListParam extends BasePage<PayBox> implements Serializable {
     /**
      * 商户号id(多个逗号分割,id,)
      */
-    @ApiModelProperty(notes = "商户号id(多个逗号分割,id,)")
+    @ApiModelProperty(notes = "商户号id")
     private String payMerchantId;
 
+    @ApiModelProperty(notes = "关联应用appId")
+    private String appId;
+
+    @ApiModelProperty(notes = "应用名称")
+    private String payApplicationName;
+
+    @ApiModelProperty(notes = "应用类型")
+    private String payApplicationType;
+
+    @ApiModelProperty(notes = "应用主体")
+    private String company;
+
+
     /**
      * 盒子类型 1、金币 2、红包
      */
@@ -52,5 +65,5 @@ public class PayBoxListParam extends BasePage<PayBox> implements Serializable {
      * 描述
      */
     @ApiModelProperty(notes = "描述")
-    private String desc;
+    private String remark;
 }

+ 9 - 1
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayBoxParam.java

@@ -50,5 +50,13 @@ public class PayBoxParam implements Serializable {
      * 描述
      */
     @ApiModelProperty(notes = "描述")
-    private String desc;
+    private String remark;
+
+    
+    @ApiModelProperty(notes = "状态 1 不可用 0正常")
+    private Integer status;
+
+
+    @ApiModelProperty(notes = "删除状态 1 已删除 0 正常")
+    private Integer isDelete;
 }

+ 30 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantListNoPageParam.java

@@ -0,0 +1,30 @@
+package com.zanxiang.manage.domain.params;
+
+import com.zanxiang.common.base.BasePage;
+import com.zanxiang.mybatis.entity.PayMerchant;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author xufeng
+ * @date 2022/6/16 19:14
+ */
+@Data
+public class PayMerchantListNoPageParam {
+
+
+    @ApiModelProperty(notes = "支付方式id")
+    private Integer payWayId;
+
+    @ApiModelProperty(notes = "商户号")
+    private String merchantNo;
+
+
+    @ApiModelProperty(notes = "商户名称")
+    private String merchantName;
+
+    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
+    private Integer status;
+
+}

+ 1 - 1
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantListParam.java

@@ -29,7 +29,7 @@ public class PayMerchantListParam extends BasePage<PayMerchant> {
     @ApiModelProperty(notes = "商户名称")
     private String merchantName;
 
-    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
+    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
     private Integer status;
 
 }

+ 2 - 5
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantParam.java

@@ -71,10 +71,7 @@ public class PayMerchantParam implements Serializable {
     @ApiModelProperty(notes = "绑定邮箱")
     private String email;
 
-    /**
-     * 状态 1 不可用 2 可用
-     */
-    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
+    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
     private Integer status;
 
     /**
@@ -133,7 +130,7 @@ public class PayMerchantParam implements Serializable {
     /**
      * 是否已删除 1 已删除 2 正常
      */
-    @ApiModelProperty(notes = "是否已删除 1 已删除 2 正常")
+    @ApiModelProperty(notes = "是否已删除 1 已删除 0 正常")
     private Integer isDelete;
 
 

+ 59 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GamePayWayListVO.java

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

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

@@ -80,7 +80,7 @@ public class PayApplicationVO implements Serializable {
     /**
      * 状态 1 不可用 2 可用
      */
-    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
+    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
     private Integer status;
 
     /**

+ 43 - 9
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayBoxListVO.java

@@ -1,13 +1,11 @@
 package com.zanxiang.manage.domain.vo;
 
-import com.zanxiang.common.base.BasePage;
-import com.zanxiang.mybatis.entity.PayBox;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
-import java.util.Date;
 
 /**
  * 支付盒子
@@ -18,49 +16,85 @@ import java.util.Date;
 @Data
 @NoArgsConstructor
 @AllArgsConstructor
-public class PayBoxListVO extends BasePage<PayBox> implements Serializable {
+public class PayBoxListVO implements Serializable {
 
     private static final long serialVersionUID = 1L;
 
     private Integer id;
 
+
     /**
      * 名称
      */
+    @ApiModelProperty(notes = "名称")
     private String name;
 
     /**
      * 支付名称
      */
+    @ApiModelProperty(notes = "支付名称")
     private String payName;
 
     /**
      * 应用id
      */
+    @ApiModelProperty(notes = "应用id")
     private Integer payApplicationId;
 
+    @ApiModelProperty(notes = "应用名称")
+    private String payApplicationName;
+
+    @ApiModelProperty(notes = "应用类型")
+    private String payApplicationType;
+
+    @ApiModelProperty(notes = "应用类型名称")
+    private String payApplicationTypeName;
+
+    @ApiModelProperty(notes = "应用appid")
+    private String appId;
+
+    @ApiModelProperty(notes = "应用原始id")
+    private String primevalId;
+
+    @ApiModelProperty(notes = "应用主体")
+    private String company;
+
     /**
      * 商户号id(多个逗号分割,id,)
      */
+    @ApiModelProperty(notes = "商户号id(多个逗号分割,id,)")
     private String payMerchantId;
 
+    @ApiModelProperty(notes = "商户号id_商户名称(多个,分割)")
+    private String payMerchantDetail;
+
     /**
      * 盒子类型 1、金币 2、红包
      */
+    @ApiModelProperty(notes = "盒子类型 1、金币 2、红包")
     private Integer type;
 
     /**
      * 描述
      */
-    private String desc;
+    @ApiModelProperty(notes = "描述")
+    private String remark;
 
     /**
-     * 创建时间
+     * 状态 1 不可用 2 可用
      */
-    private Date createTime;
+    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
+    private Integer status;
 
     /**
-     * 更新时间
+     * 是否已删除 1 已删除 0 正常
      */
-    private Date updateTime;
+    @ApiModelProperty(notes = "是否已删除 1 已删除 0 正常")
+    private Integer isDelete;
+
+    @ApiModelProperty(notes = "支付盒子id")
+    private Long payBoxId;
+
+    @ApiModelProperty(notes = "支付盒子")
+    private Long payBoxName;
 }

+ 64 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayMerchantListNoPageVO.java

@@ -0,0 +1,64 @@
+package com.zanxiang.manage.domain.vo;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @author xufeng
+ * @date 2022/6/16 19:14
+ */
+@Data
+@NoArgsConstructor
+@ApiModel
+public class PayMerchantListNoPageVO implements Serializable {
+
+    @JsonSerialize(using = ToStringSerializer.class)
+
+    private Long id;
+    /**
+     * 支付方式id
+     */
+    @ApiModelProperty(notes = "支付方式id")
+    private Integer payWayId;
+
+    @ApiModelProperty(notes = "支付方式")
+    private String payWayName;
+
+    /**
+     * 商户号
+     */
+    @ApiModelProperty(notes = "商户号")
+    private String merchantNo;
+
+    /**
+     * 商户名称
+     */
+    @ApiModelProperty(notes = "商户名称")
+    private String merchantName;
+
+    /**
+     * 支持支付方式(pc/h5/app/)
+     */
+    @ApiModelProperty(notes = "商户类型")
+    private String payDevice;
+
+    /**
+     * 支持支付方式(pc/h5/app/)
+     */
+    @ApiModelProperty(notes = "商户名称")
+    private String payDeviceName;
+
+    /**
+     * 商户号登录账号
+     */
+    @ApiModelProperty(notes = "商户名称")
+    private String loginName;
+}

+ 2 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayMerchantListVO.java

@@ -86,7 +86,7 @@ public class PayMerchantListVO implements Serializable {
     @ApiModelProperty(notes = "绑定邮箱")
     private String email;
 
-    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
+    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
     private Integer status;
 
     /**
@@ -152,7 +152,7 @@ public class PayMerchantListVO implements Serializable {
     /**
      * 是否已删除 1 已删除 2 正常
      */
-    @ApiModelProperty(notes = "是否已删除 1 已删除 2 正常")
+    @ApiModelProperty(notes = "是否已删除 1 已删除 0 正常")
     private Integer isDelete;
     /**
      * 删除时间

+ 2 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayMerchantVO.java

@@ -77,7 +77,7 @@ public class PayMerchantVO implements Serializable {
     @ApiModelProperty(notes = "绑定邮箱")
     private String email;
 
-    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
+    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
     private Integer status;
 
     /**
@@ -140,7 +140,7 @@ public class PayMerchantVO implements Serializable {
     /**
      * 是否已删除 1 已删除 2 正常
      */
-    @ApiModelProperty(notes = "是否已删除 1 已删除 2 正常")
+    @ApiModelProperty(notes = "是否已删除 1 已删除 0 正常")
     private Integer isDelete;
     /**
      * 删除时间

+ 32 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/GamePayWayService.java

@@ -0,0 +1,32 @@
+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.GamePayWayListParam;
+import com.zanxiang.manage.domain.params.GamePayWayParam;
+import com.zanxiang.manage.domain.vo.GamePayWayListVO;
+import com.zanxiang.mybatis.entity.GamePayWay;
+
+/**
+ * 游戏支付配置表 服务类接口
+ *
+ * @author xufeng
+ * @date 2022-06-30 14:22
+ */
+public interface GamePayWayService extends IService<GamePayWay> {
+    /**
+     * 游戏配置更新/保存/删除
+     *
+     * @param bo
+     * @return
+     */
+    Boolean saveOrUpdate(GamePayWayParam bo);
+
+    /**
+     * 带分页列表
+     *
+     * @param param
+     * @return
+     */
+    IPage<GamePayWayListVO> list(GamePayWayListParam param);
+}

+ 51 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GamePayWayServiceImpl.java

@@ -0,0 +1,51 @@
+package com.zanxiang.manage.service.Impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+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.CustomException;
+import com.zanxiang.common.exception.ParamNullException;
+import com.zanxiang.common.utils.bean.BeanUtils;
+import com.zanxiang.manage.domain.mapper.GamePayWayListMapper;
+import com.zanxiang.manage.domain.params.GamePayWayListParam;
+import com.zanxiang.manage.domain.params.GamePayWayParam;
+import com.zanxiang.manage.domain.vo.GamePayWayListVO;
+import com.zanxiang.manage.service.GamePayWayService;
+import com.zanxiang.mybatis.entity.Game;
+import com.zanxiang.mybatis.entity.GamePayWay;
+import com.zanxiang.mybatis.mapper.GamePayWayMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 游戏支付配置表 服务实现类
+ *
+ * @author xufeng
+ * @date 2022-06-30 14:22
+ */
+@Service
+public class GamePayWayServiceImpl extends ServiceImpl<GamePayWayMapper, GamePayWay> implements GamePayWayService {
+
+    @Autowired
+    private GamePayWayListMapper gamePayWayListMapper;
+
+    @Override
+    public Boolean saveOrUpdate(GamePayWayParam bo) {
+        if (bo.getIsDelete() != null && bo.getIsDelete() == DeleteEnum.YES.getCode()) {
+            if (bo.getId() == null) {
+                throw new ParamNullException("Id");
+            }
+            return removeById(bo.getId());
+        }
+        return saveOrUpdate(BeanUtils.copy(bo, GamePayWay.class));
+    }
+
+    @Override
+    public IPage<GamePayWayListVO> list(GamePayWayListParam param) {
+        Page<GamePayWay> page = new Page<>(param.getPageNum(), param.getPageSize());
+        String payWayId = param.getPayWayId() == null ? null : String.valueOf(param.getPayWayId());
+        String status = param.getStatus() == null ? null : String.valueOf(param.getStatus());
+        return gamePayWayListMapper.List(page, param.getGameName(), payWayId, status);
+    }
+}

+ 18 - 1
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayApplicationServiceImpl.java

@@ -3,9 +3,11 @@ package com.zanxiang.manage.service.Impl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zanxiang.common.enums.DeleteEnum;
+import com.zanxiang.common.enums.StatusEnum;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayApplicationBO;
-import com.zanxiang.manage.domain.dto.PayApplicationDTO;
+import com.zanxiang.manage.domain.params.PayApplicationListNoPageParam;
 import com.zanxiang.manage.domain.params.PayApplicationListParam;
 import com.zanxiang.manage.domain.vo.PayApplicationVO;
 import com.zanxiang.manage.service.PayApplicationService;
@@ -13,6 +15,7 @@ import com.zanxiang.mybatis.entity.PayApplication;
 import com.zanxiang.mybatis.mapper.PayApplicationMapper;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
 import java.util.Objects;
 
 /**
@@ -27,6 +30,9 @@ public class PayApplicationServiceImpl extends ServiceImpl<PayApplicationMapper,
     @Override
     public Boolean saveOrUpdate(PayApplicationBO bo) {
         PayApplication app = BeanUtils.copy(bo, PayApplication.class);
+        if (bo.getIsDelete() != null && bo.getIsDelete() == DeleteEnum.YES.getCode()) {
+            return removeById(bo.getId());
+        }
         return saveOrUpdate(app);
     }
 
@@ -36,6 +42,17 @@ public class PayApplicationServiceImpl extends ServiceImpl<PayApplicationMapper,
         return page(bo.toPage(), new LambdaQueryWrapper<PayApplication>().setEntity(app).orderByDesc(PayApplication::getCreateTime)).convert(this::toVo);
     }
 
+    @Override
+    public List<PayApplicationVO> listNoPage(PayApplicationListNoPageParam bo) {
+        PayApplication app = BeanUtils.copy(bo, PayApplication.class);
+        app.setStatus(StatusEnum.YES.getCode());
+        List<PayApplication> list = list(new LambdaQueryWrapper<PayApplication>().setEntity(app).orderByDesc(PayApplication::getCreateTime));
+        if (list.size() == 0) {
+            return null;
+        }
+        return BeanUtils.copyList(list, PayApplicationVO.class);
+    }
+
     private PayApplicationVO toVo(PayApplication payApplication) {
         if (Objects.isNull(payApplication)) {
             return null;

+ 71 - 16
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayBoxServiceImpl.java

@@ -1,19 +1,29 @@
 package com.zanxiang.manage.service.Impl;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+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.utils.StringUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
-import com.zanxiang.manage.domain.bo.PayBoxBO;
-import com.zanxiang.manage.domain.dto.PayBoxDTO;
+import com.zanxiang.manage.domain.mapper.PayBoxListMapper;
 import com.zanxiang.manage.domain.params.PayBoxListParam;
+import com.zanxiang.manage.domain.params.PayBoxParam;
 import com.zanxiang.manage.domain.vo.PayBoxListVO;
 import com.zanxiang.manage.service.PayBoxService;
+import com.zanxiang.manage.service.PayMerchantService;
 import com.zanxiang.mybatis.entity.PayBox;
+import com.zanxiang.mybatis.entity.PayMerchant;
 import com.zanxiang.mybatis.mapper.PayBoxMapper;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * 支付盒子 服务实现类
@@ -21,29 +31,74 @@ import java.util.List;
  * @author xufeng
  * @date 2022-06-22 15:26
  */
+@Component
+@Slf4j
 @Service
 public class PayBoxServiceImpl extends ServiceImpl<PayBoxMapper, PayBox> implements PayBoxService {
 
+    @Resource
+    private PayBoxListMapper payBoxListMapper;
+
+    @Resource
+    private PayMerchantService payMerchantService;
+
     @Override
-    public Boolean saveOrUpdate(PayBoxBO bo) {
+    public Boolean saveOrUpdate(PayBoxParam bo) {
         PayBox app = BeanUtils.copy(bo, PayBox.class);
+        if (StringUtils.isNotEmpty(bo.getPayMerchantId())) {
+            app.setPayMerchantId("," + bo.getPayMerchantId() + ",");
+        }
+        if (bo.getIsDelete() != null && bo.getIsDelete() == DeleteEnum.YES.getCode()) {
+            return removeById(bo.getId());
+        }
         return saveOrUpdate(app);
     }
 
     @Override
     public IPage<PayBoxListVO> list(PayBoxListParam param) {
-//        page\\\\\
-        return null;
+        Page<PayBox> page = new Page<>(param.getPageNum(), param.getPageSize());
+        IPage<PayBoxListVO> payBoxList = payBoxListMapper.payBoxList(page, param.getName(), param.getPayApplicationName(), param.getAppId(), param.getCompany(), param.getPayMerchantId(), param.getPayApplicationType()
+        );
+        if (payBoxList.getSize() == 0) {
+            return null;
+        }
+        //获取商户号列表
+        List<PayMerchant> payMerchantList = payMerchantService.list();
+        Map<String, PayMerchant> payMerchantData = payMerchantList.stream().collect(Collectors.toMap(PayMerchant::getMerchantNo, PayMerchant -> PayMerchant));
+        //循环set商户号详情
+        payBoxList.getRecords().stream().filter(t -> StringUtils.isNotEmpty(t.getPayMerchantId())).forEach(t -> {
+            t.setPayMerchantDetail(getMerchantDetail(payMerchantData, t.getPayMerchantId()));
+        });
+        return payBoxList;
     }
 
-//    @Override
-//    public List<PayBoxDTO> list(PayBoxBO bo) {
-//        PayBox app = BeanUtils.copy(bo, PayBox.class);
-//        List<PayBox> result = list(new LambdaQueryWrapper<PayBox>().setEntity(app));
-//        if (result.isEmpty()) {
-//            return null;
-//        }
-//        return BeanUtils.copyList(result, PayBoxDTO.class);
-//
-//    }
+
+    /**
+     * 通过商户号id获取商户号简介
+     *
+     * @param payMerchant
+     * @param ids
+     * @return
+     */
+    public String getMerchantDetail(Map<String, PayMerchant> payMerchant, String ids) {
+        if (StringUtils.isEmpty(ids) || payMerchant.isEmpty()) {
+            return "";
+        }
+        ArrayList<String> arr = new ArrayList<>();
+        String[] idArr = ids.substring(1, ids.length() - 1).split(",");
+        if (idArr.length == 0) {
+            return "";
+        }
+        for (int i = 0; i < idArr.length; i++) {
+            String id = idArr[i];
+            if (StringUtils.isEmpty(id)) {
+                continue;
+            }
+            if (payMerchant.get(id) == null) {
+                continue;
+            }
+            arr.add(id + "_" + payMerchant.get(id).getMerchantName());
+        }
+        return arr.stream().collect(Collectors.joining(","));
+    }
 }

+ 16 - 14
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayMerchantServiceImpl.java

@@ -1,20 +1,19 @@
 package com.zanxiang.manage.service.Impl;
 
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
 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.extension.service.impl.ServiceImpl;
-import com.fasterxml.jackson.databind.util.JSONPObject;
 import com.zanxiang.common.enums.DeleteEnum;
 import com.zanxiang.common.enums.PayDeviceEnum;
+import com.zanxiang.common.enums.StatusEnum;
 import com.zanxiang.common.utils.StringUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayMerchantBO;
-import com.zanxiang.manage.domain.bo.PayWayExtBO;
 import com.zanxiang.manage.domain.dto.PayMerchantDTO;
+import com.zanxiang.manage.domain.params.PayMerchantListNoPageParam;
 import com.zanxiang.manage.domain.params.PayMerchantListParam;
+import com.zanxiang.manage.domain.vo.PayMerchantListNoPageVO;
 import com.zanxiang.manage.domain.vo.PayMerchantListVO;
 import com.zanxiang.manage.service.PayMerchantService;
 import com.zanxiang.manage.service.PayWayService;
@@ -56,7 +55,9 @@ public class PayMerchantServiceImpl extends ServiceImpl<PayMerchantMapper, PayMe
         PayMerchant data = BeanUtils.copy(bo, PayMerchant.class);
         //删除时候增加删除时间
         if (data.getIsDelete() != null && data.getIsDelete() == DeleteEnum.YES.getCode()) {
+            data.setIsDelete(DeleteEnum.YES.getCode());
             data.setDeleteTime(new Date());
+            return removeById(bo.getId());
         }
         if (!StringUtils.isEmpty(data.getPayDevice())) {
             data.setPayDevice("," + data.getPayDevice().trim() + ",");
@@ -78,13 +79,23 @@ public class PayMerchantServiceImpl extends ServiceImpl<PayMerchantMapper, PayMe
             if (t.getPayWayId() == null || payWayInfo == null) {
                 return;
             }
-            //PayWayExtBO payExt = JSONObject.parseObject(payWayInfo.getPayExt(), PayWayExtBO.class);
             t.setPayWayName(payWayInfo.getPayName());
             t.setPayDeviceName(PayDeviceEnum.getDesc(t.getPayDevice()));
         });
         return convert;
     }
 
+    @Override
+    public List<PayMerchantListNoPageVO> listNoPage(PayMerchantListNoPageParam bo) {
+        PayMerchant app = BeanUtils.copy(bo, PayMerchant.class);
+        app.setStatus(StatusEnum.YES.getCode());
+        List<PayMerchant> list = list(new QueryWrapper<PayMerchant>().setEntity(app));
+        if (list.isEmpty()) {
+            return null;
+        }
+        return BeanUtils.copyList(list, PayMerchantListNoPageVO.class);
+    }
+
 
     private PayMerchantListVO toVo(PayMerchant payMerchant) {
         if (Objects.isNull(payMerchant)) {
@@ -92,13 +103,4 @@ public class PayMerchantServiceImpl extends ServiceImpl<PayMerchantMapper, PayMe
         }
         return BeanUtils.copy(payMerchant, PayMerchantListVO.class);
     }
-
-//    @Override
-//    public Boolean config(PayMerchantBO bo) {
-//        PayMerchantDTO info = info(bo.getId());
-//        if (info == null) {
-//            return null;
-//        }
-//        return null;
-//    }
 }

+ 17 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/PayApplicationService.java

@@ -3,10 +3,13 @@ package com.zanxiang.manage.service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.manage.domain.bo.PayApplicationBO;
+import com.zanxiang.manage.domain.params.PayApplicationListNoPageParam;
 import com.zanxiang.manage.domain.params.PayApplicationListParam;
 import com.zanxiang.manage.domain.vo.PayApplicationVO;
 import com.zanxiang.mybatis.entity.PayApplication;
 
+import java.util.List;
+
 /**
  * 游戏应用表 服务类接口
  *
@@ -22,5 +25,19 @@ public interface PayApplicationService extends IService<PayApplication> {
      */
     Boolean saveOrUpdate(PayApplicationBO bo);
 
+    /**
+     * shang
+     *
+     * @param bo
+     * @return
+     */
     IPage<PayApplicationVO> list(PayApplicationListParam bo);
+
+    /**
+     * shang
+     *
+     * @param bo
+     * @return
+     */
+    List<PayApplicationVO> listNoPage(PayApplicationListNoPageParam bo);
 }

+ 3 - 1
game-module/game-manage/src/main/java/com/zanxiang/manage/service/PayBoxService.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.manage.domain.bo.PayBoxBO;
 import com.zanxiang.manage.domain.dto.PayBoxDTO;
 import com.zanxiang.manage.domain.params.PayBoxListParam;
+import com.zanxiang.manage.domain.params.PayBoxParam;
 import com.zanxiang.manage.domain.vo.PayBoxListVO;
 import com.zanxiang.mybatis.entity.PayBox;
 
@@ -16,8 +17,9 @@ import java.util.List;
  * @author xufeng
  * @date 2022-06-22 15:26
  */
+
 public interface PayBoxService extends IService<PayBox> {
-    Boolean saveOrUpdate(PayBoxBO bo);
+    Boolean saveOrUpdate(PayBoxParam bo);
 
     IPage<PayBoxListVO> list(PayBoxListParam param);
 }

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

@@ -4,10 +4,14 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.manage.domain.bo.PayMerchantBO;
 import com.zanxiang.manage.domain.dto.PayMerchantDTO;
+import com.zanxiang.manage.domain.params.PayMerchantListNoPageParam;
 import com.zanxiang.manage.domain.params.PayMerchantListParam;
+import com.zanxiang.manage.domain.vo.PayMerchantListNoPageVO;
 import com.zanxiang.manage.domain.vo.PayMerchantListVO;
 import com.zanxiang.mybatis.entity.PayMerchant;
 
+import java.util.List;
+
 /**
  * 游戏支付商户配置表 服务类接口
  *
@@ -22,5 +26,7 @@ public interface PayMerchantService extends IService<PayMerchant> {
 
     IPage<PayMerchantListVO> list(PayMerchantListParam bo);
 
+    List<PayMerchantListNoPageVO> listNoPage(PayMerchantListNoPageParam bo);
+
 //    Boolean config(PayMerchantBO bo);
 }

+ 17 - 5
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/GamePayWay.java

@@ -2,6 +2,7 @@ package com.zanxiang.mybatis.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.*;
 
@@ -48,9 +49,9 @@ public class GamePayWay {
     private String payWayName;
 
     /**
-     * 状态 1 不可用 2 可用
+     * 状态 1 不可用 0 可用
      */
-    private Boolean status;
+    private Integer status;
 
     /**
      * 支付配置json (存储根据payway设置后,配置的具体商户号信息)
@@ -60,7 +61,7 @@ public class GamePayWay {
     /**
      * 最大支付额度锁 0 正常 1 锁定
      */
-    private Byte maxPayLock;
+    private Integer maxPayLock;
 
     /**
      * 最大支付额度
@@ -73,9 +74,20 @@ public class GamePayWay {
     private BigDecimal currentPayAmount;
 
     /**
-     * 是否已删除 1 已删除 2 正常
+     * 是否已删除 1 已删除 0 正常
      */
-    private Byte isDelete;
+    @TableLogic
+    private Integer isDelete;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 支付盒子id
+     */
+    private Long payBoxId;
 
     /**
      * 删除时间

+ 1 - 1
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayApplication.java

@@ -80,7 +80,7 @@ public class PayApplication implements Serializable {
     private Integer isDelete;
 
     /**
-     * 状态 1 不可用 2 可用
+     * 状态 1 不可用 0 正常
      */
     private Integer status;
 

+ 14 - 0
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayBox.java

@@ -2,6 +2,8 @@ package com.zanxiang.mybatis.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
@@ -18,6 +20,7 @@ import java.util.Date;
 @Data
 @NoArgsConstructor
 @AllArgsConstructor
+@TableName("h_pay_box")
 public class PayBox implements Serializable {
 
     private static final long serialVersionUID = 1L;
@@ -55,6 +58,17 @@ public class PayBox implements Serializable {
      */
     private String remark;
 
+    /**
+     * 状态 1 不可用 0 正常
+     */
+    private Integer status;
+
+    /**
+     * 1 删除  0 正常
+     */
+    @TableLogic
+    private Integer isDelete;
+
     /**
      * 创建时间
      */

+ 1 - 1
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayMerchant.java

@@ -75,7 +75,7 @@ public class PayMerchant implements Serializable {
     private String email;
 
     /**
-     * 状态 1 不可用 2 可用
+     * 状态 1 不可用 0 正常
      */
     private Integer status;
 

+ 1 - 0
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/mapper/PayBoxMapper.java

@@ -12,4 +12,5 @@ import org.apache.ibatis.annotations.Mapper;
  */
 @Mapper
 public interface PayBoxMapper extends BaseMapper<PayBox> {
+
 }