Browse Source

逻辑开发

xufeng 2 years ago
parent
commit
2fa06fb46b
17 changed files with 280 additions and 49 deletions
  1. 3 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/GamePayWayParam.java
  2. 0 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantParam.java
  3. 12 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/GamePayWayListVO.java
  4. 4 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/LogPayCpVO.java
  5. 4 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/OrderCompleteVO.java
  6. 1 1
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/GameStrategyServiceImpl.java
  7. 2 4
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/OrderCompleteServiceImpl.java
  8. 5 0
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/GamePayWay.java
  9. 6 0
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/LogPayCp.java
  10. 32 0
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/Order.java
  11. 6 1
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/OrderComplete.java
  12. 23 2
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/common/listener/OrderPaySuccessListener.java
  13. 34 2
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/dto/PlatformOrderDTO.java
  14. 18 0
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/PayMerchantServiceImpl.java
  15. 110 29
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/PerformOrderServiceImpl.java
  16. 14 0
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/PayMerchantService.java
  17. 6 4
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/PerformOrderService.java

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

@@ -36,6 +36,9 @@ public class GamePayWayParam {
     @ApiModelProperty(notes = "支付盒子id")
     @ApiModelProperty(notes = "支付盒子id")
     private Long payBoxId;
     private Long payBoxId;
 
 
+    @ApiModelProperty(notes = "支付商户号id")
+    private Long payMerchantId;
+
     @ApiModelProperty(notes = "备注")
     @ApiModelProperty(notes = "备注")
     private String remark;
     private String remark;
 
 

+ 0 - 3
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantParam.java

@@ -1,8 +1,5 @@
 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 io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;

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

@@ -1,15 +1,20 @@
 package com.zanxiang.manage.domain.vo;
 package com.zanxiang.manage.domain.vo;
 
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.StringSerializer;
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 
 
+import java.io.Serializable;
+
 /**
 /**
  * @author : xufeng
  * @author : xufeng
  * @time : 2022-06-30
  * @time : 2022-06-30
  * @description : 游戏支付配置表
  * @description : 游戏支付配置表
  */
  */
 @Data
 @Data
-public class GamePayWayListVO {
+public class GamePayWayListVO implements Serializable {
 
 
     /**
     /**
      * 主键id
      * 主键id
@@ -44,7 +49,7 @@ public class GamePayWayListVO {
      * 支付配置json (存储根据payway设置后,配置的具体商户号信息)
      * 支付配置json (存储根据payway设置后,配置的具体商户号信息)
      */
      */
     private String payConfig;
     private String payConfig;
-    
+
     @ApiModelProperty(notes = "是否已删除 1 已删除 0 正常")
     @ApiModelProperty(notes = "是否已删除 1 已删除 0 正常")
     private Integer isDelete;
     private Integer isDelete;
 
 
@@ -56,4 +61,9 @@ public class GamePayWayListVO {
 
 
     @ApiModelProperty(notes = "支付盒子")
     @ApiModelProperty(notes = "支付盒子")
     private String payBoxName;
     private String payBoxName;
+
+
+    @ApiModelProperty(notes = "支付商户号id")
+    @JsonSerialize(using = StringSerializer.class)
+    private Long payMerchantId;
 }
 }

+ 4 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/LogPayCpVO.java

@@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 
 
 import java.io.Serializable;
 import java.io.Serializable;
+import java.util.Date;
 
 
 /**
 /**
  * 注释通知CP记录表
  * 注释通知CP记录表
@@ -42,4 +43,7 @@ public class LogPayCpVO implements Serializable {
 
 
     @ApiModelProperty(notes = "通知次数")
     @ApiModelProperty(notes = "通知次数")
     private Integer notifyCnt;
     private Integer notifyCnt;
+
+    @ApiModelProperty(notes = "创建时间")
+    private Date createTime;
 }
 }

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

@@ -79,6 +79,9 @@ public class OrderCompleteVO implements Serializable {
     @ApiModelProperty(notes = "推广广告")
     @ApiModelProperty(notes = "推广广告")
     private String agentAdvert;
     private String agentAdvert;
 
 
+    @ApiModelProperty(notes = "产品id")
+    private String productId;
+
     @ApiModelProperty(notes = "产品名称")
     @ApiModelProperty(notes = "产品名称")
     private String productName;
     private String productName;
 
 
@@ -143,7 +146,7 @@ public class OrderCompleteVO implements Serializable {
     private Integer advertNotifyType;
     private Integer advertNotifyType;
 
 
     @ApiModelProperty(notes = "渠道")
     @ApiModelProperty(notes = "渠道")
-    private Long channel;
+    private String channel;
 
 
     @ApiModelProperty(notes = "创建时间")
     @ApiModelProperty(notes = "创建时间")
     private Date createTime;
     private Date createTime;

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

@@ -1,8 +1,8 @@
 package com.zanxiang.manage.service.Impl;
 package com.zanxiang.manage.service.Impl;
 
 
-import com.alibaba.nacos.common.utils.CollectionUtils;
 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.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.zanxiang.common.enums.DeleteEnum;
 import com.zanxiang.common.enums.DeleteEnum;
 import com.zanxiang.common.exception.ParamNullException;
 import com.zanxiang.common.exception.ParamNullException;

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

@@ -1,9 +1,10 @@
 package com.zanxiang.manage.service.Impl;
 package com.zanxiang.manage.service.Impl;
 
 
-import com.alibaba.nacos.common.utils.CollectionUtils;
 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.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 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.params.OrderCompleteParam;
 import com.zanxiang.manage.domain.params.OrderCompleteParam;
@@ -13,10 +14,7 @@ import com.zanxiang.manage.service.CpService;
 import com.zanxiang.manage.service.OrderCompleteService;
 import com.zanxiang.manage.service.OrderCompleteService;
 import com.zanxiang.mybatis.entity.Cp;
 import com.zanxiang.mybatis.entity.Cp;
 import com.zanxiang.mybatis.entity.OrderComplete;
 import com.zanxiang.mybatis.entity.OrderComplete;
-import com.zanxiang.mybatis.entity.User;
-import com.zanxiang.mybatis.entity.UserExt;
 import com.zanxiang.mybatis.mapper.OrderCompleteMapper;
 import com.zanxiang.mybatis.mapper.OrderCompleteMapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.apache.logging.log4j.util.Strings;
 import org.apache.logging.log4j.util.Strings;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;

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

@@ -89,6 +89,11 @@ public class GamePayWay {
      */
      */
     private Long payBoxId;
     private Long payBoxId;
 
 
+    /**
+     * 支付商户号id
+     */
+    private Long payMerchantId;
+
     /**
     /**
      * 删除时间
      * 删除时间
      */
      */

+ 6 - 0
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/LogPayCp.java

@@ -1,6 +1,7 @@
 package com.zanxiang.mybatis.entity;
 package com.zanxiang.mybatis.entity;
 
 
 import java.io.Serializable;
 import java.io.Serializable;
+import java.util.Date;
 
 
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.Data;
@@ -68,4 +69,9 @@ public class LogPayCp implements Serializable {
      * 通知次数
      * 通知次数
      */
      */
     private Integer notifyCnt;
     private Integer notifyCnt;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
 }
 }

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

@@ -147,6 +147,11 @@ public class Order {
      */
      */
     private Integer isDistribute;
     private Integer isDistribute;
 
 
+    /**
+     * 是否切量  0 否 1 是
+     */
+    private Integer isSwitch;
+
     /**
     /**
      * CP通知状态,1为待处理,2为成功,-1为失败
      * CP通知状态,1为待处理,2为成功,-1为失败
      */
      */
@@ -177,4 +182,31 @@ public class Order {
      */
      */
     private String channel;
     private String channel;
 
 
+    /**
+     * 结束时间
+     */
+    private String endTime;
+
+    /**
+     * 0正常 1删除
+     */
+    private Integer isDelete;
+
+    /**
+     * 操作系统
+     */
+    private String fromDevice;
+
+    private String payDevice;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 更新时间
+     */
+    private Date updateTime;
+
 }
 }

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

@@ -126,6 +126,11 @@ public class OrderComplete implements Serializable {
      */
      */
     private String agentAdvert;
     private String agentAdvert;
 
 
+    /**
+     * 产品名称
+     */
+    private String productId;
+
     /**
     /**
      * 产品名称
      * 产品名称
      */
      */
@@ -239,7 +244,7 @@ public class OrderComplete implements Serializable {
     /**
     /**
      * 渠道
      * 渠道
      */
      */
-    private Long channel;
+    private String channel;
 
 
     /**
     /**
      * 创建时间
      * 创建时间

+ 23 - 2
game-module/game-sdk/src/main/java/com/zanxiang/sdk/common/listener/OrderPaySuccessListener.java

@@ -1,13 +1,20 @@
 package com.zanxiang.sdk.common.listener;
 package com.zanxiang.sdk.common.listener;
 
 
+import com.zanxiang.common.utils.StringUtils;
+import com.zanxiang.mybatis.entity.Order;
+import com.zanxiang.sdk.domain.dto.PlatformOrderDTO;
 import com.zanxiang.sdk.service.PerformOrderService;
 import com.zanxiang.sdk.service.PerformOrderService;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.zanxiang.sdk.service.PlatformOrderService;
+import lombok.extern.slf4j.Slf4j;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.event.EventListener;
 import org.springframework.context.event.EventListener;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
+import java.util.Objects;
 
 
 /**
 /**
  * 订单支付完成事件监听
  * 订单支付完成事件监听
@@ -17,7 +24,12 @@ import javax.annotation.Resource;
  */
  */
 @Configuration
 @Configuration
 @Component
 @Component
+@Slf4j
 public class OrderPaySuccessListener {
 public class OrderPaySuccessListener {
+    protected final Logger logger = LoggerFactory.getLogger(OrderPaySuccessListener.class);
+
+    @Resource
+    private PlatformOrderService platformOrderService;
 
 
     @Resource
     @Resource
     private PerformOrderService performOrderService;
     private PerformOrderService performOrderService;
@@ -27,7 +39,16 @@ public class OrderPaySuccessListener {
     public void onApplicationEvent(OrderPaySuccessEvent event) {
     public void onApplicationEvent(OrderPaySuccessEvent event) {
         System.out.println("OrderPaySuccessListener success!");
         System.out.println("OrderPaySuccessListener success!");
         System.out.println(event.getOrderId());
         System.out.println(event.getOrderId());
+        if (StringUtils.isEmpty(event.getOrderId())) {
+            logger.error("缺少订单ID");
+            return;
+        }
+        PlatformOrderDTO orderInfo = platformOrderService.info(event.getOrderId());
+        if (Objects.isNull(orderInfo)) {
+            logger.error("订单:{} 获取详情失败", event.getOrderId());
+            return;
+        }
         //cp推送
         //cp推送
-        performOrderService.pushCp(event.getOrderId());
+        performOrderService.pushCp(orderInfo);
     }
     }
 }
 }

+ 34 - 2
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/dto/PlatformOrderDTO.java

@@ -8,7 +8,7 @@ import java.util.Date;
 
 
 @Data
 @Data
 public class PlatformOrderDTO implements Serializable {
 public class PlatformOrderDTO implements Serializable {
-    
+
     private String id;
     private String id;
 
 
     /**
     /**
@@ -124,7 +124,7 @@ public class PlatformOrderDTO implements Serializable {
     /**
     /**
      * 最近通知时间
      * 最近通知时间
      */
      */
-    private Long lastCpNotifyTime;
+    private Date lastCpNotifyTime;
 
 
     /**
     /**
      * 客服处理: 2正常; 1纠纷
      * 客服处理: 2正常; 1纠纷
@@ -141,6 +141,11 @@ public class PlatformOrderDTO implements Serializable {
      */
      */
     private Integer cpStatus;
     private Integer cpStatus;
 
 
+    /**
+     * 是否切量  0 否 1 是
+     */
+    private Integer isSwitch;
+
     /**
     /**
      * CP附加参数
      * CP附加参数
      */
      */
@@ -165,4 +170,31 @@ public class PlatformOrderDTO implements Serializable {
      * 渠道
      * 渠道
      */
      */
     private String channel;
     private String channel;
+
+    /**
+     * 结束时间
+     */
+    private String endTime;
+
+    /**
+     * 操作系统
+     */
+    private String fromDevice;
+
+    /**
+     * 0正常 1删除
+     */
+    private Integer isDelete;
+
+    private String payDevice;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 更新时间
+     */
+    private Date updateTime;
 }
 }

+ 18 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/PayMerchantServiceImpl.java

@@ -0,0 +1,18 @@
+package com.zanxiang.sdk.service.Impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zanxiang.mybatis.entity.PayMerchant;
+import com.zanxiang.mybatis.mapper.PayMerchantMapper;
+import com.zanxiang.sdk.service.PayMerchantService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 游戏支付商户配置表 服务实现类
+ *
+ * @author xufeng
+ * @date 2022-06-16 19:04
+ */
+@Service
+public class PayMerchantServiceImpl extends ServiceImpl<PayMerchantMapper, PayMerchant> implements PayMerchantService {
+
+}

+ 110 - 29
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/PerformOrderServiceImpl.java

@@ -1,16 +1,17 @@
 package com.zanxiang.sdk.service.Impl;
 package com.zanxiang.sdk.service.Impl;
 
 
+import java.math.BigDecimal;
+
 import com.alipay.easysdk.kernel.util.Signer;
 import com.alipay.easysdk.kernel.util.Signer;
 import com.zanxiang.common.enums.CpStatusEnum;
 import com.zanxiang.common.enums.CpStatusEnum;
+import com.zanxiang.common.enums.PayDeviceEnum;
 import com.zanxiang.common.enums.ResEnum;
 import com.zanxiang.common.enums.ResEnum;
-import com.zanxiang.mybatis.entity.LogPayCp;
-import com.zanxiang.mybatis.entity.Order;
+import com.zanxiang.common.utils.StringUtils;
+import com.zanxiang.mybatis.entity.*;
 import com.zanxiang.sdk.common.util.HttpUtil;
 import com.zanxiang.sdk.common.util.HttpUtil;
 import com.zanxiang.sdk.common.util.MD5Util;
 import com.zanxiang.sdk.common.util.MD5Util;
 import com.zanxiang.sdk.domain.dto.PlatformOrderDTO;
 import com.zanxiang.sdk.domain.dto.PlatformOrderDTO;
-import com.zanxiang.sdk.service.LogPayCpService;
-import com.zanxiang.sdk.service.PerformOrderService;
-import com.zanxiang.sdk.service.PlatformOrderService;
+import com.zanxiang.sdk.service.*;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
@@ -19,10 +20,7 @@ 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;
 
 
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Locale;
-import java.util.TreeMap;
+import java.util.*;
 
 
 /**
 /**
  * 订单履约逻辑
  * 订单履约逻辑
@@ -43,28 +41,33 @@ public class PerformOrderServiceImpl implements PerformOrderService {
     @Autowired
     @Autowired
     private LogPayCpService logPayCpService;
     private LogPayCpService logPayCpService;
 
 
-    public Boolean pushCp(String orderId) {
-        PlatformOrderDTO info = platformOrderService.info(orderId);
-        if (info == null) {
-            logger.error("orderId:{} 订单不存在", orderId);
-            return false;
-        }
-        if (info.getCpStatus() == CpStatusEnum.SUCCESS.getCode()) {
+    @Autowired
+    private UserService userService;
+
+    @Autowired
+    private GamePayWayService gamePayWayService;
+
+    @Autowired
+    private PayMer
+
+    public Boolean pushCp(PlatformOrderDTO orderInfo) {
+        if (orderInfo.getCpStatus() == CpStatusEnum.SUCCESS.getCode()) {
             return true;
             return true;
         }
         }
+        String orderId = orderInfo.getId();
         //todo 待完善
         //todo 待完善
         String app_key = "111";
         String app_key = "111";
         String cpPaybackUrl = "https://baidu.com";
         String cpPaybackUrl = "https://baidu.com";
 
 
         HashMap<String, String> map = new HashMap<>();
         HashMap<String, String> map = new HashMap<>();
-        map.put("app_id", info.getGameId());
-        map.put("cp_order_id", info.getCpOrderId());
-        map.put("mem_id", info.getMgUserId());
-        map.put("order_status", String.valueOf(info.getStatus()));
-        map.put("pay_time", String.valueOf(info.getPayTime()));
-        map.put("product_id", info.getProductId());
-        map.put("product_price", String.valueOf(info.getAmount()));
-        map.put("ext", info.getExt());
+        map.put("app_id", orderInfo.getGameId());
+        map.put("cp_order_id", orderInfo.getCpOrderId());
+        map.put("mem_id", orderInfo.getMgUserId());
+        map.put("order_status", String.valueOf(orderInfo.getStatus()));
+        map.put("pay_time", String.valueOf(orderInfo.getPayTime()));
+        map.put("product_id", orderInfo.getProductId());
+        map.put("product_price", String.valueOf(orderInfo.getAmount()));
+        map.put("ext", orderInfo.getExt());
         map.put("app_key", app_key);
         map.put("app_key", app_key);
         TreeMap<String, String> keySort = new TreeMap<>(map);
         TreeMap<String, String> keySort = new TreeMap<>(map);
         //拼接字符串
         //拼接字符串
@@ -78,7 +81,7 @@ public class PerformOrderServiceImpl implements PerformOrderService {
         //拼接sign请求
         //拼接sign请求
         param += "&sign=" + sign;
         param += "&sign=" + sign;
         try {
         try {
-            Integer i = info.getCpNotifyCnt() + 1;
+            Integer i = orderInfo.getCpNotifyCnt() + 1;
             String s = HttpUtil.postData(cpPaybackUrl, param);
             String s = HttpUtil.postData(cpPaybackUrl, param);
             Boolean pushSuccess = false;
             Boolean pushSuccess = false;
             if (s.trim().toLowerCase(Locale.ROOT).equals(ResEnum.SUCCESS.getMsg())) {
             if (s.trim().toLowerCase(Locale.ROOT).equals(ResEnum.SUCCESS.getMsg())) {
@@ -93,12 +96,12 @@ public class PerformOrderServiceImpl implements PerformOrderService {
             }
             }
             LogPayCp logPayCp = new LogPayCp();
             LogPayCp logPayCp = new LogPayCp();
             logPayCp.setOrderId(orderId);
             logPayCp.setOrderId(orderId);
-            logPayCp.setCpOrderId(info.getCpOrderId());
-            logPayCp.setStatus(info.getStatus());
+            logPayCp.setCpOrderId(orderInfo.getCpOrderId());
+            logPayCp.setStatus(orderInfo.getStatus());
             logPayCp.setCpStatus(pushSuccess ? CpStatusEnum.SUCCESS.getCode() : CpStatusEnum.FAILLE.getCode());
             logPayCp.setCpStatus(pushSuccess ? CpStatusEnum.SUCCESS.getCode() : CpStatusEnum.FAILLE.getCode());
             logPayCp.setCpPaybackUrl(cpPaybackUrl);
             logPayCp.setCpPaybackUrl(cpPaybackUrl);
             logPayCp.setParams(param);
             logPayCp.setParams(param);
-            logPayCp.setExt(info.getExt());
+            logPayCp.setExt(orderInfo.getExt());
             logPayCp.setNotifyCnt(i);
             logPayCp.setNotifyCnt(i);
             logPayCpService.save(logPayCp);
             logPayCpService.save(logPayCp);
         } catch (Exception e) {
         } catch (Exception e) {
@@ -109,7 +112,85 @@ public class PerformOrderServiceImpl implements PerformOrderService {
     }
     }
 
 
     @Override
     @Override
-    public Boolean createOrderComplete(String orderId) {
+    public Boolean createOrderComplete(PlatformOrderDTO orderInfo) {
+        OrderComplete orderComplete = new OrderComplete();
+        orderComplete.setOrderId(Long.valueOf(orderInfo.getId()));
+        orderComplete.setGameId(StringUtils.isNotEmpty(orderInfo.getGameId()) ? Long.valueOf(orderInfo.getGameId()) : null);
+        orderComplete.setOrderDate(orderInfo.getCreateTime());
+        orderComplete.setCpOrderId(StringUtils.isNotEmpty(orderInfo.getCpOrderId()) ? orderInfo.getCpOrderId() : "");
+        orderComplete.setMerchantOrderNo(orderInfo.getMerchantOrderNo());
+        orderComplete.setUserId(StringUtils.isNotEmpty(orderInfo.getUserId()) ? Long.valueOf(orderInfo.getUserId()) : null);
+        orderComplete.setCpId(StringUtils.isNotEmpty(orderInfo.getCpId()) ? Long.valueOf(orderInfo.getCpId()) : null);
+        orderComplete.setProductId(orderInfo.getProductId());
+        orderComplete.setProductName(orderInfo.getProductName());
+        orderComplete.setOrderAmount(orderInfo.getAmount());
+        orderComplete.setRealAmount(orderInfo.getRealAmount());
+        orderComplete.setIsSwitch(orderInfo.getIsSwitch());
+        orderComplete.setPayTime(orderInfo.getPayTime());
+        orderComplete.setLastCpNotifyTime(orderInfo.getLastCpNotifyTime());
+        orderComplete.setStatus(orderInfo.getStatus());
+        orderComplete.setCpStatus(orderInfo.getCpStatus());
+        orderComplete.setIsDelete(orderInfo.getIsDelete());
+        orderComplete.setChannel(orderInfo.getChannel());
+        orderComplete.setCreateTime(orderInfo.getCreateTime());
+        orderComplete.setEndTime(orderInfo.getEndTime());
+        orderComplete.setPayDevice(orderInfo.getPayDevice());
+
+        /*-------支付那一刻系统------*/
+        orderComplete.setFromDevice(orderInfo.getFromDevice());
+
+
+        //todo 获取游戏信息
+        orderComplete.setGameName("");
+        orderComplete.setGameCategory("");
+        orderComplete.setGameRegional("");
+        orderComplete.setGameRole("");
+        orderComplete.setGameLevel("");
+        orderComplete.setGameVip("");
+
+        //todo 获取玩家账号信息
+        orderComplete.setUserAccount("");
+        orderComplete.setUserRegisterTime(new Date());
+        orderComplete.setUserRegisterGameId(0L);
+        orderComplete.setUserRegisterGame("");
+        orderComplete.setUserRegisterGameCategory("");
+        orderComplete.setUserRegisterChannel("");
+
+        if (StringUtils.isNotEmpty(orderInfo.getUserId())) {
+            User userInfo = userService.getById(orderInfo.getUserId());
+            if (!Objects.isNull(userInfo)) {
+                orderComplete.setUserAccount(userInfo.getUsername());
+            }
+        }
+
+        //todo 推广相关信息
+        orderComplete.setAgentId("");
+        orderComplete.setAgentAccount("");
+        orderComplete.setAgentMedia("");
+        orderComplete.setAgentAdvert("");
+
+
+        //todo 支付相关信息
+        orderComplete.setPayWayId("");
+        orderComplete.setPayWay("");
+        orderComplete.setMerchantNo("");
+        orderComplete.setMerchantName("");
+        if (StringUtils.isNotEmpty(orderInfo.getGamePaywayId())) {
+            GamePayWay gamePayWay = gamePayWayService.getInfo(orderInfo.getGamePaywayId());
+            if (!Objects.isNull(gamePayWay)) {
+                orderComplete.setPayWayId(gamePayWay.getPayWayId() > 0 ? String.valueOf(gamePayWay.getPayWayId()) : null);
+                orderComplete.setPayWay(gamePayWay.getPayWayName());
+            }
+        }
+
+
+        //todo 是否首充单独更新
+        orderComplete.setIsFirstRecharge(0);
+
+        //todo 广告通知状态
+        orderComplete.setAdvertNotifyStatus(0);
+        orderComplete.setAdvertNotifyType(0);
+
         return null;
         return null;
     }
     }
 }
 }

+ 14 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/PayMerchantService.java

@@ -0,0 +1,14 @@
+package com.zanxiang.sdk.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zanxiang.mybatis.entity.PayMerchant;
+
+/**
+ * 游戏支付商户配置表
+ *
+ * @author xufeng
+ * @date 2022-06-16 19:04
+ */
+public interface PayMerchantService extends IService<PayMerchant> {
+
+}

+ 6 - 4
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/PerformOrderService.java

@@ -1,5 +1,7 @@
 package com.zanxiang.sdk.service;
 package com.zanxiang.sdk.service;
 
 
+import com.zanxiang.sdk.domain.dto.PlatformOrderDTO;
+
 /**
 /**
  * 订单履约逻辑
  * 订单履约逻辑
  *
  *
@@ -11,15 +13,15 @@ public interface PerformOrderService {
     /**
     /**
      * cp方履约推送
      * cp方履约推送
      *
      *
-     * @param orderId
+     * @param orderInfo
      */
      */
-    public Boolean pushCp(String orderId);
+    Boolean pushCp(PlatformOrderDTO orderInfo);
 
 
     /**
     /**
      * 生成订单宽表
      * 生成订单宽表
      *
      *
-     * @param orderId
+     * @param orderInfo
      * @return
      * @return
      */
      */
-    public Boolean createOrderComplete(String orderId);
+    Boolean createOrderComplete(PlatformOrderDTO orderInfo);
 }
 }