소스 검색

逻辑开发

xufeng 2 년 전
부모
커밋
6f6dab0e37
28개의 변경된 파일293개의 추가작업 그리고 141개의 파일을 삭제
  1. 41 2
      game-module/game-common/src/main/java/com/zanxiang/common/enums/PayDeviceEnum.java
  2. 9 11
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayApplicationController.java
  3. 14 9
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayMerchantController.java
  4. 2 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayWayController.java
  5. 3 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/bo/PayApplicationBO.java
  6. 12 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayApplicationParam.java
  7. 13 14
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantListParam.java
  8. 21 6
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantParam.java
  9. 13 4
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayApplicationVO.java
  10. 22 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayMerchantVO.java
  11. 8 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayWayVO.java
  12. 11 7
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayApplicationServiceImpl.java
  13. 17 8
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayBoxServiceImpl.java
  14. 41 11
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayMerchantServiceImpl.java
  15. 4 4
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/PayApplicationService.java
  16. 4 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/PayBoxService.java
  17. 4 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/PayMerchantService.java
  18. 1 1
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/Order.java
  19. 2 0
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayApplication.java
  20. 1 1
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayBox.java
  21. 9 0
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayMerchant.java
  22. 1 11
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayWay.java
  23. 1 1
      game-module/game-mybatis/src/main/resources/mapper/OrderMapper.xml
  24. 0 39
      game-module/game-mybatis/src/main/resources/mapper/PayMerchantMapper.xml
  25. 19 1
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/PlatformOrderServiceImpl.java
  26. 1 1
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/pay/WxpayServiceImpl.java
  27. 8 0
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/PlatformOrderService.java
  28. 11 0
      game-module/game-sdk/src/test/java/com/zanxiang/sdk/OrderTests.java

+ 41 - 2
game-module/game-common/src/main/java/com/zanxiang/common/enums/PayDeviceEnum.java

@@ -3,6 +3,10 @@ package com.zanxiang.common.enums;
 import lombok.AllArgsConstructor;
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 import lombok.Getter;
 
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
 /**
 /**
  * 支付设备类型
  * 支付设备类型
  *
  *
@@ -10,7 +14,6 @@ import lombok.Getter;
  * @date 2022/6/16 18:07
  * @date 2022/6/16 18:07
  */
  */
 @Getter
 @Getter
-@AllArgsConstructor
 public enum PayDeviceEnum {
 public enum PayDeviceEnum {
     PC(1, "pc", "Pc端支付"),
     PC(1, "pc", "Pc端支付"),
     H5(2, "h5", "Wap端支付"),
     H5(2, "h5", "Wap端支付"),
@@ -23,7 +26,43 @@ public enum PayDeviceEnum {
 
 
     private String desc;
     private String desc;
 
 
-    String getSqlCode(Integer code) {
+    PayDeviceEnum(Integer code, String name, String desc) {
+        this.code = code;
+        this.name = name;
+        this.desc = desc;
+    }
+
+    public static String getCodeByNum(Integer code) {
+        PayDeviceEnum[] values = PayDeviceEnum.values();
+        for (int i = 0; i < values.length; i++) {
+            if (values[i].getCode().equals(code))
+                return values[i].getName();
+        }
+        return "";
+    }
+
+    public static String getDescByNum(Integer code) {
+        PayDeviceEnum[] values = PayDeviceEnum.values();
+        for (int i = 0; i < values.length; i++) {
+            if (values[i].getCode().equals(code))
+                return values[i].getDesc();
+        }
+        return "";
+    }
+
+
+    public static String getSqlCode(Integer code) {
         return "," + code + ",";
         return "," + code + ",";
     }
     }
+
+    public static String getDesc(String obj) {
+        List<String> Desc = new ArrayList<>(10);
+        String str = obj.substring(1, obj.length() - 1);
+        String[] strArr = str.split(",");
+        for (int i = 0; i < strArr.length; i++) {
+            String name = PayDeviceEnum.getDescByNum(Integer.valueOf(strArr[i]));
+            Desc.add(name);
+        }
+        return Desc.stream().collect(Collectors.joining(","));
+    }
 }
 }

+ 9 - 11
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayApplicationController.java

@@ -1,15 +1,20 @@
 package com.zanxiang.manage.controller;
 package com.zanxiang.manage.controller;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.zanxiang.common.domain.ResultVo;
 import com.zanxiang.common.domain.ResultVo;
 import com.zanxiang.common.enums.HttpStatusEnum;
 import com.zanxiang.common.enums.HttpStatusEnum;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayApplicationBO;
 import com.zanxiang.manage.domain.bo.PayApplicationBO;
 import com.zanxiang.manage.domain.dto.PayApplicationDTO;
 import com.zanxiang.manage.domain.dto.PayApplicationDTO;
+import com.zanxiang.manage.domain.params.PayApplicationListParam;
 import com.zanxiang.manage.domain.params.PayApplicationParam;
 import com.zanxiang.manage.domain.params.PayApplicationParam;
 import com.zanxiang.manage.domain.vo.PayApplicationVO;
 import com.zanxiang.manage.domain.vo.PayApplicationVO;
+import com.zanxiang.manage.domain.vo.PayMerchantListVO;
 import com.zanxiang.manage.service.PayApplicationService;
 import com.zanxiang.manage.service.PayApplicationService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 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.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -37,20 +42,13 @@ public class PayApplicationController {
     @PostMapping(value = "/save")
     @PostMapping(value = "/save")
     public ResultVo<Boolean> save(@Validated @RequestBody PayApplicationParam param) {
     public ResultVo<Boolean> save(@Validated @RequestBody PayApplicationParam param) {
         Boolean result = payApplicationService.saveOrUpdate(BeanUtils.copy(param, PayApplicationBO.class));
         Boolean result = payApplicationService.saveOrUpdate(BeanUtils.copy(param, PayApplicationBO.class));
-        if (result) {
-            return new ResultVo<>(HttpStatusEnum.SUCCESS, true);
-        }
-        return new ResultVo<>(HttpStatusEnum.FAIL, false);
+        return ResultVo.ok(result);
     }
     }
 
 
     @ApiOperation(value = "列表")
     @ApiOperation(value = "列表")
     @PostMapping(value = "/list")
     @PostMapping(value = "/list")
-    public ResultVo<List<PayApplicationVO>> list(@Validated @RequestBody PayApplicationParam param) {
-        List<PayApplicationDTO> result = payApplicationService.list(BeanUtils.copy(param, PayApplicationBO.class));
-        if (!result.isEmpty()) {
-            List<PayApplicationVO> list = BeanUtils.copyList(result, PayApplicationVO.class);
-            return new ResultVo<>(HttpStatusEnum.SUCCESS, list);
-        }
-        return new ResultVo<>(HttpStatusEnum.FAIL);
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = PayApplicationVO.class, responseContainer = "list")})
+    public ResultVo<IPage<PayApplicationVO>> list(@Validated @RequestBody PayApplicationListParam param) {
+        return ResultVo.ok(payApplicationService.list(param));
     }
     }
 }
 }

+ 14 - 9
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayMerchantController.java

@@ -1,15 +1,22 @@
 package com.zanxiang.manage.controller;
 package com.zanxiang.manage.controller;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.zanxiang.common.domain.ResultVo;
 import com.zanxiang.common.domain.ResultVo;
 import com.zanxiang.common.enums.HttpStatusEnum;
 import com.zanxiang.common.enums.HttpStatusEnum;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayMerchantBO;
 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.dto.PayMerchantDTO;
+import com.zanxiang.manage.domain.params.PayMerchantListParam;
 import com.zanxiang.manage.domain.params.PayMerchantParam;
 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.PayMerchantVO;
 import com.zanxiang.manage.service.PayMerchantService;
 import com.zanxiang.manage.service.PayMerchantService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 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.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -35,22 +42,20 @@ public class PayMerchantController {
 
 
     @ApiOperation(value = "商户号-新增/编辑/删除(payWayId/merchantNo/merchantName 必传)")
     @ApiOperation(value = "商户号-新增/编辑/删除(payWayId/merchantNo/merchantName 必传)")
     @PostMapping(value = "/save")
     @PostMapping(value = "/save")
-    public ResultVo<String> save(@Validated @RequestBody PayMerchantParam param) {
+    public ResultVo<Boolean> save(@Validated @RequestBody PayMerchantParam param) {
         Boolean result = payMerchantService.saveOrUpdate(BeanUtils.copy(param, PayMerchantBO.class));
         Boolean result = payMerchantService.saveOrUpdate(BeanUtils.copy(param, PayMerchantBO.class));
         if (result) {
         if (result) {
-            return new ResultVo(HttpStatusEnum.SUCCESS, result);
+            return ResultVo.ok(true);
         }
         }
-        return new ResultVo(HttpStatusEnum.FAIL, result);
+        return ResultVo.ok(false);
     }
     }
 
 
     @ApiOperation(value = "商户号-列表")
     @ApiOperation(value = "商户号-列表")
     @PostMapping(value = "/list")
     @PostMapping(value = "/list")
-    public ResultVo<PayMerchantVO> list(@Validated @RequestBody PayMerchantParam param) {
-        List<PayMerchantDTO> result = payMerchantService.list(BeanUtils.copy(param, PayMerchantBO.class));
-        if (!result.isEmpty()) {
-            return new ResultVo(HttpStatusEnum.SUCCESS, result);
-        }
-        return new ResultVo(HttpStatusEnum.FAIL);
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = PayMerchantListVO.class, responseContainer = "list")})
+    public ResultVo<IPage<PayMerchantListVO>> list(@Validated @RequestBody PayMerchantListParam param) {
+        IPage<PayMerchantListVO> result = payMerchantService.list(param);
+        return ResultVo.ok(result);
     }
     }
 
 
 }
 }

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

@@ -10,6 +10,7 @@ import com.zanxiang.mybatis.entity.PayWay;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
@@ -31,7 +32,7 @@ public class PayWayController {
     private PayWayService payWayService;
     private PayWayService payWayService;
 
 
     @ApiOperation(value = "支付方式列表")
     @ApiOperation(value = "支付方式列表")
-    @PostMapping(value = "/list")
+    @GetMapping(value = "/list")
     public ResultVo<List<PayWayVO>> list() {
     public ResultVo<List<PayWayVO>> list() {
         List<PayWay> list = payWayService.list(new LambdaQueryWrapper<PayWay>().eq(PayWay::getParentId, 0));
         List<PayWay> list = payWayService.list(new LambdaQueryWrapper<PayWay>().eq(PayWay::getParentId, 0));
         if (list.isEmpty()) {
         if (list.isEmpty()) {

+ 3 - 1
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/bo/PayApplicationBO.java

@@ -1,5 +1,7 @@
 package com.zanxiang.manage.domain.bo;
 package com.zanxiang.manage.domain.bo;
 
 
+import com.zanxiang.common.base.BasePage;
+import com.zanxiang.mybatis.entity.PayApplication;
 import lombok.AllArgsConstructor;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;
@@ -15,7 +17,7 @@ import java.io.Serializable;
 @Data
 @Data
 @NoArgsConstructor
 @NoArgsConstructor
 @AllArgsConstructor
 @AllArgsConstructor
-public class PayApplicationBO implements Serializable {
+public class PayApplicationBO extends BasePage<PayApplication> implements Serializable {
 
 
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;
 
 

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

@@ -1,5 +1,6 @@
 package com.zanxiang.manage.domain.params;
 package com.zanxiang.manage.domain.params;
 
 
+import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;
@@ -24,56 +25,67 @@ public class PayApplicationParam implements Serializable {
     /**
     /**
      * 应用名称
      * 应用名称
      */
      */
+    @ApiModelProperty(notes = "应用名称")
     private String name;
     private String name;
 
 
     /**
     /**
      * 类型 1 微信小程序
      * 类型 1 微信小程序
      */
      */
+    @ApiModelProperty(notes = "类型 1 微信小程序")
     private Integer type;
     private Integer type;
 
 
     /**
     /**
      * 应用appid
      * 应用appid
      */
      */
+    @ApiModelProperty(notes = "应用appid")
     private String appId;
     private String appId;
 
 
     /**
     /**
      * 应用原始id
      * 应用原始id
      */
      */
+    @ApiModelProperty(notes = "应用原始id")
     private String primevalId;
     private String primevalId;
 
 
     /**
     /**
      * 应用主体
      * 应用主体
      */
      */
+    @ApiModelProperty(notes = "应用主体")
     private String company;
     private String company;
 
 
     /**
     /**
      * 登录账号
      * 登录账号
      */
      */
+    @ApiModelProperty(notes = "登录账号")
     private String loginName;
     private String loginName;
 
 
     /**
     /**
      * 登录密码
      * 登录密码
      */
      */
+    @ApiModelProperty(notes = "登录密码")
     private String loginPassword;
     private String loginPassword;
 
 
     /**
     /**
      * 管理员
      * 管理员
      */
      */
+    @ApiModelProperty(notes = "管理员")
     private String managePerson;
     private String managePerson;
 
 
     /**
     /**
      * 备注
      * 备注
      */
      */
+    @ApiModelProperty(notes = "备注")
     private String remark;
     private String remark;
 
 
     /**
     /**
      * 状态 1 不可用 2 可用
      * 状态 1 不可用 2 可用
      */
      */
+    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
     private Integer status;
     private Integer status;
 
 
     /**
     /**
      * 是否已删除 1 已删除 2 正常
      * 是否已删除 1 已删除 2 正常
      */
      */
+    @ApiModelProperty(notes = "是否已删除 1 已删除 2 正常")
     private Integer isDelete;
     private Integer isDelete;
 
 
 }
 }

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

@@ -1,6 +1,11 @@
 package com.zanxiang.manage.domain.params;
 package com.zanxiang.manage.domain.params;
 
 
+import com.zanxiang.common.base.BasePage;
+import com.zanxiang.mybatis.entity.GameCategory;
+import com.zanxiang.mybatis.entity.PayMerchant;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
+import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;
 
 
 import java.io.Serializable;
 import java.io.Serializable;
@@ -10,27 +15,21 @@ import java.io.Serializable;
  * @date 2022/6/16 19:14
  * @date 2022/6/16 19:14
  */
  */
 @Data
 @Data
-@NoArgsConstructor
-public class PayMerchantListParam implements Serializable {
+@EqualsAndHashCode(callSuper = true)
+public class PayMerchantListParam extends BasePage<PayMerchant> {
 
 
-    /**
-     * 支付方式id
-     */
+
+    @ApiModelProperty(notes = "支付方式id")
     private Integer payWayId;
     private Integer payWayId;
 
 
-    /**
-     * 商户号
-     */
+    @ApiModelProperty(notes = "商户号")
     private String merchantNo;
     private String merchantNo;
 
 
-    /**
-     * 商户名称
-     */
+
+    @ApiModelProperty(notes = "商户名称")
     private String merchantName;
     private String merchantName;
 
 
-    /**
-     * 状态 1 不可用 2 可用
-     */
+    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
     private Integer status;
     private Integer status;
 
 
 }
 }

+ 21 - 6
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantParam.java

@@ -1,5 +1,9 @@
 package com.zanxiang.manage.domain.params;
 package com.zanxiang.manage.domain.params;
 
 
+import com.zanxiang.common.base.BasePage;
+import com.zanxiang.mybatis.entity.GameCategory;
+import com.zanxiang.mybatis.entity.PayMerchant;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;
 import lombok.NonNull;
 import lombok.NonNull;
@@ -18,65 +22,71 @@ public class PayMerchantParam implements Serializable {
 
 
     private Long id;
     private Long id;
 
 
-    /**
-     * 支付方式id
-     */
+    @ApiModelProperty(notes = "支付方式id")
     private Integer payWayId;
     private Integer payWayId;
 
 
-    /**
-     * 商户号
-     */
+    @ApiModelProperty(notes = "商户号")
     @NonNull
     @NonNull
     private String merchantNo;
     private String merchantNo;
 
 
     /**
     /**
      * 商户名称
      * 商户名称
      */
      */
+    @ApiModelProperty(notes = "商户名称")
     private String merchantName;
     private String merchantName;
 
 
     /**
     /**
      * 支持支付方式(pc/h5/app/)
      * 支持支付方式(pc/h5/app/)
      */
      */
+    @ApiModelProperty(notes = "支持支付方式(pc/h5/app/)")
     private String payDevice;
     private String payDevice;
 
 
     /**
     /**
      * 商户号登录账号
      * 商户号登录账号
      */
      */
+    @ApiModelProperty(notes = "商户号登录账号")
     private String loginName;
     private String loginName;
 
 
     /**
     /**
      * 商户号登录密码
      * 商户号登录密码
      */
      */
+    @ApiModelProperty(notes = "商户号登录密码")
     private String loginPassword;
     private String loginPassword;
 
 
     /**
     /**
      * 管理员
      * 管理员
      */
      */
+    @ApiModelProperty(notes = "管理员")
     private String managePerson;
     private String managePerson;
 
 
     /**
     /**
      * 绑定手机号
      * 绑定手机号
      */
      */
+    @ApiModelProperty(notes = "绑定手机号")
     private String mobile;
     private String mobile;
 
 
     /**
     /**
      * 绑定邮箱
      * 绑定邮箱
      */
      */
+    @ApiModelProperty(notes = "绑定邮箱")
     private String email;
     private String email;
 
 
     /**
     /**
      * 状态 1 不可用 2 可用
      * 状态 1 不可用 2 可用
      */
      */
+    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
     private Integer status;
     private Integer status;
 
 
     /**
     /**
      * 支付配置json (存储根据payway设置后,配置的具体商户号信息)
      * 支付配置json (存储根据payway设置后,配置的具体商户号信息)
      */
      */
+    @ApiModelProperty(notes = "支付配置json")
     private String payConfig;
     private String payConfig;
 
 
     /**
     /**
      * 最大支付额度锁 0 正常 1 锁定
      * 最大支付额度锁 0 正常 1 锁定
      */
      */
+    @ApiModelProperty(notes = "最大支付额度锁 0 正常 1 锁定")
     private Integer maxPayLock;
     private Integer maxPayLock;
 
 
     /**
     /**
@@ -117,10 +127,15 @@ public class PayMerchantParam implements Serializable {
     /**
     /**
      * 备注
      * 备注
      */
      */
+    @ApiModelProperty(notes = "备注")
     private String remark;
     private String remark;
 
 
     /**
     /**
      * 是否已删除 1 已删除 2 正常
      * 是否已删除 1 已删除 2 正常
      */
      */
+    @ApiModelProperty(notes = "是否已删除 1 已删除 2 正常")
     private Integer isDelete;
     private Integer isDelete;
+
+
+    private Integer pageNum;
 }
 }

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

@@ -1,7 +1,6 @@
 package com.zanxiang.manage.domain.vo;
 package com.zanxiang.manage.domain.vo;
 
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;
@@ -22,62 +21,72 @@ public class PayApplicationVO implements Serializable {
 
 
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;
 
 
-    @TableId(value = "id", type = IdType.AUTO)
     private Long id;
     private Long id;
 
 
     /**
     /**
      * 应用名称
      * 应用名称
      */
      */
+    @ApiModelProperty(notes = "应用名称")
     private String name;
     private String name;
 
 
     /**
     /**
      * 类型 1 微信小程序
      * 类型 1 微信小程序
      */
      */
+    @ApiModelProperty(notes = "类型 1 微信小程序")
     private Integer type;
     private Integer type;
 
 
     /**
     /**
      * 应用appid
      * 应用appid
      */
      */
+    @ApiModelProperty(notes = "应用appid")
     private String appId;
     private String appId;
 
 
     /**
     /**
      * 应用原始id
      * 应用原始id
      */
      */
+    @ApiModelProperty(notes = "应用原始id")
     private String primevalId;
     private String primevalId;
 
 
     /**
     /**
      * 应用主体
      * 应用主体
      */
      */
+    @ApiModelProperty(notes = "应用主体")
     private String company;
     private String company;
 
 
     /**
     /**
      * 登录账号
      * 登录账号
      */
      */
+    @ApiModelProperty(notes = "登录账号")
     private String loginName;
     private String loginName;
 
 
     /**
     /**
      * 登录密码
      * 登录密码
      */
      */
+    @ApiModelProperty(notes = "登录密码")
     private String loginPassword;
     private String loginPassword;
 
 
     /**
     /**
      * 管理员
      * 管理员
      */
      */
+    @ApiModelProperty(notes = "管理员")
     private String managePerson;
     private String managePerson;
 
 
     /**
     /**
      * 备注
      * 备注
      */
      */
+    @ApiModelProperty(notes = "备注")
     private String remark;
     private String remark;
 
 
     /**
     /**
      * 状态 1 不可用 2 可用
      * 状态 1 不可用 2 可用
      */
      */
+    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
     private Integer status;
     private Integer status;
 
 
     /**
     /**
-     * 是否已删除 1 已删除 2 正常
+     * 是否已删除 1 已删除 0 正常
      */
      */
+    @ApiModelProperty(notes = "是否已删除 1 已删除 0 正常")
     private Integer isDelete;
     private Integer isDelete;
 
 
     /**
     /**

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

@@ -2,6 +2,8 @@ package com.zanxiang.manage.domain.vo;
 
 
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;
 
 
@@ -15,6 +17,7 @@ import java.util.Date;
  */
  */
 @Data
 @Data
 @NoArgsConstructor
 @NoArgsConstructor
+@ApiModel
 public class PayMerchantVO implements Serializable {
 public class PayMerchantVO implements Serializable {
 
 
     @JsonSerialize(using = ToStringSerializer.class)
     @JsonSerialize(using = ToStringSerializer.class)
@@ -23,81 +26,94 @@ public class PayMerchantVO implements Serializable {
     /**
     /**
      * 支付方式id
      * 支付方式id
      */
      */
+    @ApiModelProperty(notes = "支付方式id")
     private Integer payWayId;
     private Integer payWayId;
 
 
     /**
     /**
      * 商户号
      * 商户号
      */
      */
+    @ApiModelProperty(notes = "商户号")
     private String merchantNo;
     private String merchantNo;
 
 
     /**
     /**
      * 商户名称
      * 商户名称
      */
      */
+    @ApiModelProperty(notes = "商户名称")
     private String merchantName;
     private String merchantName;
 
 
     /**
     /**
      * 支持支付方式(pc/h5/app/)
      * 支持支付方式(pc/h5/app/)
      */
      */
+    @ApiModelProperty(notes = "商户名称")
     private String payDevice;
     private String payDevice;
 
 
     /**
     /**
      * 商户号登录账号
      * 商户号登录账号
      */
      */
+    @ApiModelProperty(notes = "商户名称")
     private String loginName;
     private String loginName;
 
 
     /**
     /**
      * 商户号登录密码
      * 商户号登录密码
      */
      */
+    @ApiModelProperty(notes = "商户号登录密码")
     private String loginPassword;
     private String loginPassword;
 
 
     /**
     /**
      * 管理员
      * 管理员
      */
      */
+    @ApiModelProperty(notes = "管理员")
     private String managePerson;
     private String managePerson;
 
 
     /**
     /**
      * 绑定手机号
      * 绑定手机号
      */
      */
+    @ApiModelProperty(notes = "绑定手机号")
     private String mobile;
     private String mobile;
 
 
     /**
     /**
      * 绑定邮箱
      * 绑定邮箱
      */
      */
+    @ApiModelProperty(notes = "绑定邮箱")
     private String email;
     private String email;
 
 
-    /**
-     * 状态 1 不可用 2 可用
-     */
+    @ApiModelProperty(notes = "状态 1 不可用 2 可用")
     private Integer status;
     private Integer status;
 
 
     /**
     /**
      * 支付配置json (存储根据payway设置后,配置的具体商户号信息)
      * 支付配置json (存储根据payway设置后,配置的具体商户号信息)
      */
      */
+    @ApiModelProperty(notes = "支付配置json")
     private String payConfig;
     private String payConfig;
 
 
     /**
     /**
      * 最大支付额度锁 0 正常 1 锁定
      * 最大支付额度锁 0 正常 1 锁定
      */
      */
+    @ApiModelProperty(notes = "最大支付额度锁 0 正常 1 锁定")
     private Integer maxPayLock;
     private Integer maxPayLock;
 
 
     /**
     /**
      * 最大支付额度
      * 最大支付额度
      */
      */
+    @ApiModelProperty(notes = "最大支付额度")
     private BigDecimal maxPayAmount;
     private BigDecimal maxPayAmount;
 
 
     /**
     /**
      * 月已用支付额度
      * 月已用支付额度
      */
      */
+    @ApiModelProperty(notes = "月已用支付额度")
     private BigDecimal mouthPayAmount;
     private BigDecimal mouthPayAmount;
 
 
     /**
     /**
      * 月更新日期
      * 月更新日期
      */
      */
+    @ApiModelProperty(notes = "月更新日期")
     private Date mouthUpdateDate;
     private Date mouthUpdateDate;
 
 
     /**
     /**
      * 周已用额度
      * 周已用额度
      */
      */
+    @ApiModelProperty(notes = "周已用额度")
     private BigDecimal weakerPayAmount;
     private BigDecimal weakerPayAmount;
 
 
     /**
     /**
@@ -118,14 +134,17 @@ public class PayMerchantVO implements Serializable {
     /**
     /**
      * 备注
      * 备注
      */
      */
+    @ApiModelProperty(notes = "备注")
     private String remark;
     private String remark;
 
 
     /**
     /**
      * 是否已删除 1 已删除 2 正常
      * 是否已删除 1 已删除 2 正常
      */
      */
+    @ApiModelProperty(notes = "是否已删除 1 已删除 2 正常")
     private Integer isDelete;
     private Integer isDelete;
     /**
     /**
      * 删除时间
      * 删除时间
      */
      */
+    @ApiModelProperty(notes = "删除时间")
     private Date deleteTime;
     private Date deleteTime;
 }
 }

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

@@ -1,5 +1,6 @@
 package com.zanxiang.manage.domain.vo;
 package com.zanxiang.manage.domain.vo;
 
 
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 
 
 /**
 /**
@@ -13,30 +14,36 @@ public class PayWayVO {
     /**
     /**
      * 支付方式
      * 支付方式
      */
      */
+    @ApiModelProperty(notes = "支付方式id")
     private Integer id;
     private Integer id;
 
 
     /**
     /**
      * 支付通道
      * 支付通道
      */
      */
+    @ApiModelProperty(notes = "支付通道")
     private String code;
     private String code;
 
 
     /**
     /**
      * 支付名称
      * 支付名称
      */
      */
+    @ApiModelProperty(notes = "支付名称")
     private String payName;
     private String payName;
 
 
     /**
     /**
      * 父ID
      * 父ID
      */
      */
+    @ApiModelProperty(notes = "父ID")
     private Integer parentId;
     private Integer parentId;
 
 
     /**
     /**
      * 支付配置(存储需要配置的信息json)
      * 支付配置(存储需要配置的信息json)
      */
      */
+    @ApiModelProperty(notes = "支付配置")
     private String payExt;
     private String payExt;
 
 
     /**
     /**
      * 描述
      * 描述
      */
      */
-    private String desc;
+    @ApiModelProperty(notes = "描述")
+    private String remark;
 }
 }

+ 11 - 7
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayApplicationServiceImpl.java

@@ -1,17 +1,19 @@
 package com.zanxiang.manage.service.Impl;
 package com.zanxiang.manage.service.Impl;
 
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.zanxiang.common.enums.DeleteEnum;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayApplicationBO;
 import com.zanxiang.manage.domain.bo.PayApplicationBO;
 import com.zanxiang.manage.domain.dto.PayApplicationDTO;
 import com.zanxiang.manage.domain.dto.PayApplicationDTO;
+import com.zanxiang.manage.domain.params.PayApplicationListParam;
+import com.zanxiang.manage.domain.vo.PayApplicationVO;
 import com.zanxiang.manage.service.PayApplicationService;
 import com.zanxiang.manage.service.PayApplicationService;
 import com.zanxiang.mybatis.entity.PayApplication;
 import com.zanxiang.mybatis.entity.PayApplication;
 import com.zanxiang.mybatis.mapper.PayApplicationMapper;
 import com.zanxiang.mybatis.mapper.PayApplicationMapper;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
-import java.util.List;
+import java.util.Objects;
 
 
 /**
 /**
  * 游戏应用表 服务实现类
  * 游戏应用表 服务实现类
@@ -29,14 +31,16 @@ public class PayApplicationServiceImpl extends ServiceImpl<PayApplicationMapper,
     }
     }
 
 
     @Override
     @Override
-    public List<PayApplicationDTO> list(PayApplicationBO bo) {
+    public IPage<PayApplicationVO> list(PayApplicationListParam bo) {
         PayApplication app = BeanUtils.copy(bo, PayApplication.class);
         PayApplication app = BeanUtils.copy(bo, PayApplication.class);
-        app.setIsDelete(DeleteEnum.NO.getCode());
-        List<PayApplication> result = list(new LambdaQueryWrapper<PayApplication>().setEntity(app));
-        if (result.isEmpty()) {
+        return page(bo.toPage(), new LambdaQueryWrapper<PayApplication>().setEntity(app).orderByDesc(PayApplication::getCreateTime)).convert(this::toVo);
+    }
+
+    private PayApplicationVO toVo(PayApplication payApplication) {
+        if (Objects.isNull(payApplication)) {
             return null;
             return null;
         }
         }
-        return BeanUtils.copyList(result, PayApplicationDTO.class);
+        return BeanUtils.copy(payApplication, PayApplicationVO.class);
     }
     }
 
 
 }
 }

+ 17 - 8
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayBoxServiceImpl.java

@@ -1,10 +1,13 @@
 package com.zanxiang.manage.service.Impl;
 package com.zanxiang.manage.service.Impl;
 
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayBoxBO;
 import com.zanxiang.manage.domain.bo.PayBoxBO;
 import com.zanxiang.manage.domain.dto.PayBoxDTO;
 import com.zanxiang.manage.domain.dto.PayBoxDTO;
+import com.zanxiang.manage.domain.params.PayBoxListParam;
+import com.zanxiang.manage.domain.vo.PayBoxListVO;
 import com.zanxiang.manage.service.PayBoxService;
 import com.zanxiang.manage.service.PayBoxService;
 import com.zanxiang.mybatis.entity.PayBox;
 import com.zanxiang.mybatis.entity.PayBox;
 import com.zanxiang.mybatis.mapper.PayBoxMapper;
 import com.zanxiang.mybatis.mapper.PayBoxMapper;
@@ -28,13 +31,19 @@ public class PayBoxServiceImpl extends ServiceImpl<PayBoxMapper, PayBox> impleme
     }
     }
 
 
     @Override
     @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);
-
+    public IPage<PayBoxListVO> list(PayBoxListParam param) {
+//        page\\\\\
+        return null;
     }
     }
+
+//    @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);
+//
+//    }
 }
 }

+ 41 - 11
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/PayMerchantServiceImpl.java

@@ -1,20 +1,34 @@
 package com.zanxiang.manage.service.Impl;
 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.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fasterxml.jackson.databind.util.JSONPObject;
 import com.zanxiang.common.enums.DeleteEnum;
 import com.zanxiang.common.enums.DeleteEnum;
+import com.zanxiang.common.enums.PayDeviceEnum;
 import com.zanxiang.common.utils.StringUtils;
 import com.zanxiang.common.utils.StringUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayMerchantBO;
 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.dto.PayMerchantDTO;
+import com.zanxiang.manage.domain.params.PayMerchantListParam;
+import com.zanxiang.manage.domain.vo.PayMerchantListVO;
 import com.zanxiang.manage.service.PayMerchantService;
 import com.zanxiang.manage.service.PayMerchantService;
+import com.zanxiang.manage.service.PayWayService;
 import com.zanxiang.mybatis.entity.PayMerchant;
 import com.zanxiang.mybatis.entity.PayMerchant;
+import com.zanxiang.mybatis.entity.PayWay;
 import com.zanxiang.mybatis.mapper.PayMerchantMapper;
 import com.zanxiang.mybatis.mapper.PayMerchantMapper;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import java.util.Date;
 import java.util.Date;
 import java.util.List;
 import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.stream.Collectors;
 
 
 /**
 /**
  * 游戏支付商户配置表 服务实现类
  * 游戏支付商户配置表 服务实现类
@@ -25,6 +39,9 @@ import java.util.List;
 @Service
 @Service
 public class PayMerchantServiceImpl extends ServiceImpl<PayMerchantMapper, PayMerchant> implements PayMerchantService {
 public class PayMerchantServiceImpl extends ServiceImpl<PayMerchantMapper, PayMerchant> implements PayMerchantService {
 
 
+    @Autowired
+    private PayWayService payWayService;
+
 
 
     @Override
     @Override
     public PayMerchantDTO info(Long id) {
     public PayMerchantDTO info(Long id) {
@@ -38,7 +55,7 @@ public class PayMerchantServiceImpl extends ServiceImpl<PayMerchantMapper, PayMe
     public Boolean saveOrUpdate(PayMerchantBO bo) {
     public Boolean saveOrUpdate(PayMerchantBO bo) {
         PayMerchant data = BeanUtils.copy(bo, PayMerchant.class);
         PayMerchant data = BeanUtils.copy(bo, PayMerchant.class);
         //删除时候增加删除时间
         //删除时候增加删除时间
-        if (data.getIsDelete() == DeleteEnum.YES.getCode()) {
+        if (data.getIsDelete() != null && data.getIsDelete() == DeleteEnum.YES.getCode()) {
             data.setDeleteTime(new Date());
             data.setDeleteTime(new Date());
         }
         }
         if (!StringUtils.isEmpty(data.getPayDevice())) {
         if (!StringUtils.isEmpty(data.getPayDevice())) {
@@ -48,19 +65,32 @@ public class PayMerchantServiceImpl extends ServiceImpl<PayMerchantMapper, PayMe
     }
     }
 
 
     @Override
     @Override
-    public List<PayMerchantDTO> list(PayMerchantBO bo) {
-//        LambdaQueryWrapper<PayMerchant> wrapper = new LambdaQueryWrapper<>();
-//        wrapper.eq(PayMerchant::getMerchantNo, bo.getMerchantNo());
-//        wrapper.eq(PayMerchant::getMerchantName, bo.getMerchantName());
-//        wrapper.eq(PayMerchant::getStatus, bo.getStatus());
-//        wrapper.eq(PayMerchant::getIsDelete, DeleteEnum.NO.getCode());
+    public IPage<PayMerchantListVO> list(PayMerchantListParam bo) {
         PayMerchant app = BeanUtils.copy(bo, PayMerchant.class);
         PayMerchant app = BeanUtils.copy(bo, PayMerchant.class);
-        app.setIsDelete(DeleteEnum.NO.getCode());
-        List<PayMerchant> result = list(new QueryWrapper<PayMerchant>().setEntity(app));
-        if (result.isEmpty()) {
+        IPage<PayMerchantListVO> convert = page(bo.toPage(), new QueryWrapper<PayMerchant>().lambda().setEntity(app)).convert(this::toVo);
+        if (convert == null) {
+            return null;
+        }
+        List<PayWay> list = payWayService.list(new LambdaQueryWrapper<PayWay>().eq(PayWay::getParentId, 0));
+        Map<Integer, PayWay> payWayMap = list.stream().collect(Collectors.toMap(PayWay::getId, PayWay -> PayWay));
+        convert.getRecords().forEach(t -> {
+            PayWay payWayInfo = payWayMap.get(t.getPayWayId());
+            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;
+    }
+
+
+    private PayMerchantListVO toVo(PayMerchant payMerchant) {
+        if (Objects.isNull(payMerchant)) {
             return null;
             return null;
         }
         }
-        return BeanUtils.copyList(result, PayMerchantDTO.class);
+        return BeanUtils.copy(payMerchant, PayMerchantListVO.class);
     }
     }
 
 
 //    @Override
 //    @Override

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

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

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

@@ -1,8 +1,11 @@
 package com.zanxiang.manage.service;
 package com.zanxiang.manage.service;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.manage.domain.bo.PayBoxBO;
 import com.zanxiang.manage.domain.bo.PayBoxBO;
 import com.zanxiang.manage.domain.dto.PayBoxDTO;
 import com.zanxiang.manage.domain.dto.PayBoxDTO;
+import com.zanxiang.manage.domain.params.PayBoxListParam;
+import com.zanxiang.manage.domain.vo.PayBoxListVO;
 import com.zanxiang.mybatis.entity.PayBox;
 import com.zanxiang.mybatis.entity.PayBox;
 
 
 import java.util.List;
 import java.util.List;
@@ -16,5 +19,5 @@ import java.util.List;
 public interface PayBoxService extends IService<PayBox> {
 public interface PayBoxService extends IService<PayBox> {
     Boolean saveOrUpdate(PayBoxBO bo);
     Boolean saveOrUpdate(PayBoxBO bo);
 
 
-    List<PayBoxDTO> list(PayBoxBO bo);
+    IPage<PayBoxListVO> list(PayBoxListParam param);
 }
 }

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

@@ -1,12 +1,13 @@
 package com.zanxiang.manage.service;
 package com.zanxiang.manage.service;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.manage.domain.bo.PayMerchantBO;
 import com.zanxiang.manage.domain.bo.PayMerchantBO;
 import com.zanxiang.manage.domain.dto.PayMerchantDTO;
 import com.zanxiang.manage.domain.dto.PayMerchantDTO;
+import com.zanxiang.manage.domain.params.PayMerchantListParam;
+import com.zanxiang.manage.domain.vo.PayMerchantListVO;
 import com.zanxiang.mybatis.entity.PayMerchant;
 import com.zanxiang.mybatis.entity.PayMerchant;
 
 
-import java.util.List;
-
 /**
 /**
  * 游戏支付商户配置表 服务类接口
  * 游戏支付商户配置表 服务类接口
  *
  *
@@ -19,7 +20,7 @@ public interface PayMerchantService extends IService<PayMerchant> {
 
 
     Boolean saveOrUpdate(PayMerchantBO bo);
     Boolean saveOrUpdate(PayMerchantBO bo);
 
 
-    List<PayMerchantDTO> list(PayMerchantBO bo);
+    IPage<PayMerchantListVO> list(PayMerchantListParam bo);
 
 
 //    Boolean config(PayMerchantBO bo);
 //    Boolean config(PayMerchantBO bo);
 }
 }

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

@@ -135,7 +135,7 @@ public class Order {
     /**
     /**
      * 最近通知时间
      * 最近通知时间
      */
      */
-    private Long lastCpNotifyTime;
+    private Date lastCpNotifyTime;
 
 
     /**
     /**
      * 客服处理: 2正常; 1纠纷
      * 客服处理: 2正常; 1纠纷

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

@@ -3,6 +3,7 @@ package com.zanxiang.mybatis.entity;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.AllArgsConstructor;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;
@@ -19,6 +20,7 @@ import java.util.Date;
 @Data
 @Data
 @NoArgsConstructor
 @NoArgsConstructor
 @AllArgsConstructor
 @AllArgsConstructor
+@TableName("h_pay_application")
 public class PayApplication implements Serializable {
 public class PayApplication implements Serializable {
 
 
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;

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

@@ -53,7 +53,7 @@ public class PayBox implements Serializable {
     /**
     /**
      * 描述
      * 描述
      */
      */
-    private String desc;
+    private String remark;
 
 
     /**
     /**
      * 创建时间
      * 创建时间

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

@@ -3,8 +3,11 @@ package com.zanxiang.mybatis.entity;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Builder;
 import lombok.Data;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;
+import lombok.ToString;
 
 
 import java.io.Serializable;
 import java.io.Serializable;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
@@ -18,6 +21,7 @@ import java.util.Date;
  */
  */
 @Data
 @Data
 @NoArgsConstructor
 @NoArgsConstructor
+@TableName("h_pay_merchant")
 public class PayMerchant implements Serializable {
 public class PayMerchant implements Serializable {
 
 
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;
@@ -90,6 +94,11 @@ public class PayMerchant implements Serializable {
      */
      */
     private BigDecimal maxPayAmount;
     private BigDecimal maxPayAmount;
 
 
+    /**
+     * 总支付金额
+     */
+    private BigDecimal totalPayAmount;
+
     /**
     /**
      * 月已用支付额度
      * 月已用支付额度
      */
      */

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

@@ -49,15 +49,5 @@ public class PayWay {
     /**
     /**
      * 描述
      * 描述
      */
      */
-    private String desc;
-
-    /**
-     * 创建时间
-     */
-    private LocalDateTime createTime;
-
-    /**
-     * 更新时间
-     */
-    private LocalDateTime updateTime;
+    private String remark;
 }
 }

+ 1 - 1
game-module/game-mybatis/src/main/resources/mapper/OrderMapper.xml

@@ -24,7 +24,7 @@
         <result column="game_payway_id" jdbcType="VARCHAR" property="gamePaywayId"/>
         <result column="game_payway_id" jdbcType="VARCHAR" property="gamePaywayId"/>
         <result column="pay_time" jdbcType="TIMESTAMP" property="payTime"/>
         <result column="pay_time" jdbcType="TIMESTAMP" property="payTime"/>
         <result column="cp_notify_cnt" jdbcType="INTEGER" property="cpNotifyCnt"/>
         <result column="cp_notify_cnt" jdbcType="INTEGER" property="cpNotifyCnt"/>
-        <result column="last_cp_notify_time" jdbcType="BIGINT" property="lastCpNotifyTime"/>
+        <result column="last_cp_notify_time" jdbcType="TIMESTAMP" property="lastCpNotifyTime"/>
         <result column="is_handle" jdbcType="TINYINT" property="isHandle"/>
         <result column="is_handle" jdbcType="TINYINT" property="isHandle"/>
         <result column="is_distribute" jdbcType="TINYINT" property="isDistribute"/>
         <result column="is_distribute" jdbcType="TINYINT" property="isDistribute"/>
         <result column="cp_status" jdbcType="TINYINT" property="cpStatus"/>
         <result column="cp_status" jdbcType="TINYINT" property="cpStatus"/>

+ 0 - 39
game-module/game-mybatis/src/main/resources/mapper/PayMerchantMapper.xml

@@ -1,43 +1,4 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="com.zanxiang.mybatis.mapper.PayMerchantMapper">
 <mapper namespace="com.zanxiang.mybatis.mapper.PayMerchantMapper">
-  <resultMap id="BaseResultMap" type="com.zanxiang.mybatis.entity.PayMerchant">
-    <id column="id" jdbcType="BIGINT" property="id"/>
-    <result column="pay_way_id" jdbcType="INTEGER" property="payWayId"/>
-    <result column="merchant_no" jdbcType="VARCHAR" property="merchantNo"/>
-    <result column="merchant_name" jdbcType="VARCHAR" property="merchantName"/>
-    <result column="pay_device" jdbcType="VARCHAR" property="payDevice"/>
-    <result column="login_name" jdbcType="VARCHAR" property="loginName"/>
-    <result column="login_password" jdbcType="VARCHAR" property="loginPassword"/>
-    <result column="manage_person" jdbcType="VARCHAR" property="managePerson"/>
-    <result column="mobile" jdbcType="VARCHAR" property="mobile"/>
-    <result column="email" jdbcType="VARCHAR" property="email"/>
-    <result column="status" jdbcType="TINYINT" property="status"/>
-    <result column="max_pay_lock" jdbcType="TINYINT" property="maxPayLock"/>
-    <result column="max_pay_amount" jdbcType="DECIMAL" property="maxPayAmount"/>
-    <result column="mouth_pay_amount" jdbcType="DECIMAL" property="mouthPayAmount"/>
-    <result column="mouth_update_date" jdbcType="DATE" property="mouthUpdateDate"/>
-    <result column="weaker_pay_amount" jdbcType="DECIMAL" property="weakerPayAmount"/>
-    <result column="weaker_update_date" jdbcType="DATE" property="weakerUpdateDate"/>
-    <result column="day_pay_amount" jdbcType="DECIMAL" property="dayPayAmount"/>
-    <result column="day_update_date" jdbcType="DATE" property="dayUpdateDate"/>
-    <result column="remark" jdbcType="VARCHAR" property="remark"/>
-    <result column="pay_config" jdbcType="LONGVARCHAR" property="payConfig"/>
-    <result column="is_delete" jdbcType="TINYINT" property="isDelete"/>
-    <result column="delete_time" jdbcType="TIMESTAMP" property="deleteTime"/>
-    <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
-    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
-  </resultMap>
-  <resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.zanxiang.mybatis.entity.PayMerchant">
-  </resultMap>
-  <sql id="Base_Column_List">
-    id
-    , pay_way_id, merchant_no, merchant_name, pay_device, login_name, login_password,
-	manage_person, mobile, email, status, max_pay_lock, max_pay_amount, mouth_pay_amount, 
-	mouth_update_date, weaker_pay_amount, weaker_update_date, day_pay_amount, day_update_date, remark, is_delete, 
-	delete_time, create_time, update_time
-  </sql>
-  <sql id="Blob_Column_List">
-    pay_config
-  </sql>
 </mapper>
 </mapper>

+ 19 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/PlatformOrderServiceImpl.java

@@ -8,6 +8,7 @@ import com.zanxiang.common.utils.StringUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.mybatis.entity.Order;
 import com.zanxiang.mybatis.entity.Order;
 import com.zanxiang.mybatis.mapper.OrderMapper;
 import com.zanxiang.mybatis.mapper.OrderMapper;
+import com.zanxiang.sdk.common.listener.OrderPaySuccessEvent;
 import com.zanxiang.sdk.domain.bo.PlatformOrderBO;
 import com.zanxiang.sdk.domain.bo.PlatformOrderBO;
 import com.zanxiang.sdk.domain.dto.PlatformOrderDTO;
 import com.zanxiang.sdk.domain.dto.PlatformOrderDTO;
 import com.zanxiang.sdk.service.PlatformOrderService;
 import com.zanxiang.sdk.service.PlatformOrderService;
@@ -16,6 +17,7 @@ import org.junit.jupiter.api.extension.ParameterResolutionException;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.ApplicationContext;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
@@ -38,8 +40,12 @@ public class PlatformOrderServiceImpl extends ServiceImpl<OrderMapper, Order> im
     @Autowired
     @Autowired
     private OrderMapper orderMapper;
     private OrderMapper orderMapper;
 
 
+    @Autowired
+    private ApplicationContext applicationContext;
+
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
     @Override
     @Override
+
     public String create(PlatformOrderBO platformOrderBO) {
     public String create(PlatformOrderBO platformOrderBO) {
         try {
         try {
             logger.info("生成订单请求参数 platformOrderBO:{}", platformOrderBO);
             logger.info("生成订单请求参数 platformOrderBO:{}", platformOrderBO);
@@ -71,7 +77,13 @@ public class PlatformOrderServiceImpl extends ServiceImpl<OrderMapper, Order> im
             }
             }
             platformOrderBO.setPayTime(new Date());
             platformOrderBO.setPayTime(new Date());
             logger.info("订单支付提交数据 data:{}", platformOrderBO);
             logger.info("订单支付提交数据 data:{}", platformOrderBO);
-            return updateById(BeanUtils.copy(platformOrderBO, Order.class));
+            boolean result = updateById(BeanUtils.copy(platformOrderBO, Order.class));
+            if (result) {
+                OrderPaySuccessEvent orderPaySuccessEvent = new OrderPaySuccessEvent(this, order.getId());
+                applicationContext.publishEvent(orderPaySuccessEvent);
+                return true;
+            }
+            return false;
         } catch (ParameterResolutionException e) {
         } catch (ParameterResolutionException e) {
             logger.error("订单支付失败 platformOrderBO:{}, error:{}", platformOrderBO, e);
             logger.error("订单支付失败 platformOrderBO:{}, error:{}", platformOrderBO, e);
             e.printStackTrace();
             e.printStackTrace();
@@ -106,6 +118,12 @@ public class PlatformOrderServiceImpl extends ServiceImpl<OrderMapper, Order> im
         return BeanUtils.copy(order, PlatformOrderDTO.class);
         return BeanUtils.copy(order, PlatformOrderDTO.class);
     }
     }
 
 
+    @Override
+    public PlatformOrderDTO info(String id) {
+        Order order = getOne(new LambdaQueryWrapper<Order>().eq(Order::getId, id));
+        return BeanUtils.copy(order, PlatformOrderDTO.class);
+    }
+
     /**
     /**
      * 检查订单参数
      * 检查订单参数
      *
      *

+ 1 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/pay/WxpayServiceImpl.java

@@ -43,7 +43,7 @@ public class WxpayServiceImpl extends PayService implements OrderPayService {
     @Value("server.domain")
     @Value("server.domain")
     private String serverUrl;
     private String serverUrl;
 
 
-    @Value("payConfig.alipay.notifyUrl")
+    @Value("payConfig.wx.notifyUrl")
     private String notifyUrl;
     private String notifyUrl;
 
 
     private String filePath = "/tmp/wxpay/";
     private String filePath = "/tmp/wxpay/";

+ 8 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/PlatformOrderService.java

@@ -46,4 +46,12 @@ public interface PlatformOrderService extends IService<Order> {
      * @return PlatformOrderDTO
      * @return PlatformOrderDTO
      */
      */
     PlatformOrderDTO info(String id, String userId);
     PlatformOrderDTO info(String id, String userId);
+
+    /**
+     * 单一订单详情获取
+     *
+     * @param id
+     * @return PlatformOrderDTO
+     */
+    PlatformOrderDTO info(String id);
 }
 }

+ 11 - 0
game-module/game-sdk/src/test/java/com/zanxiang/sdk/OrderTests.java

@@ -1,10 +1,12 @@
 package com.zanxiang.sdk;
 package com.zanxiang.sdk;
 
 
+import com.zanxiang.sdk.common.listener.OrderPaySuccessEvent;
 import com.zanxiang.sdk.domain.bo.PlatformOrderBO;
 import com.zanxiang.sdk.domain.bo.PlatformOrderBO;
 import com.zanxiang.sdk.domain.dto.PlatformOrderDTO;
 import com.zanxiang.sdk.domain.dto.PlatformOrderDTO;
 import com.zanxiang.sdk.service.PlatformOrderService;
 import com.zanxiang.sdk.service.PlatformOrderService;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.Test;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.ApplicationContext;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 
 
@@ -20,6 +22,9 @@ public class OrderTests extends SDKApplicationTests {
     @Autowired
     @Autowired
     private PlatformOrderService platformOrderService;
     private PlatformOrderService platformOrderService;
 
 
+    @Autowired
+    private ApplicationContext applicationContext;
+
     @Test
     @Test
     void getOrderInfo() {
     void getOrderInfo() {
         PlatformOrderDTO info = platformOrderService.info("1", "1");
         PlatformOrderDTO info = platformOrderService.info("1", "1");
@@ -66,4 +71,10 @@ public class OrderTests extends SDKApplicationTests {
         System.out.println(result);
         System.out.println(result);
     }
     }
 
 
+    @Test
+    void paySuccess() {
+        OrderPaySuccessEvent orderPaySuccessEvent = new OrderPaySuccessEvent(this, "1540258001251815425");
+        applicationContext.publishEvent(orderPaySuccessEvent);
+    }
+
 }
 }