Procházet zdrojové kódy

Merge remote-tracking branch 'origin/package' into package

wcc před 1 rokem
rodič
revize
578e0447c0
17 změnil soubory, kde provedl 545 přidání a 0 odebrání
  1. 11 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/controller/AdsOrderDetailController.java
  2. 64 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/controller/PlayerDataController.java
  3. 21 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/dto/AdsOrderDetailDTO.java
  4. 29 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/dto/PlayerDataListDTO.java
  5. 28 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/dto/PlayerDataListTotalDTO.java
  6. 29 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/dto/PlayerRoleDataListDTO.java
  7. 28 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/dto/PlayerRoleDataListTotalDTO.java
  8. 17 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/entity/AdsOrderDetail.java
  9. 86 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/entity/TPayCallCpLog.java
  10. 16 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/AdsOrderDetailVO.java
  11. 46 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/OrderCPDetailVO.java
  12. 9 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/PlayerDataVO.java
  13. 9 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/PlayerRoleDataVO.java
  14. 4 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/IAdsOrderDetailService.java
  15. 46 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/IPlayerDataService.java
  16. 41 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/impl/AdsOrderDetailService.java
  17. 61 0
      game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/impl/PlayerDataServiceImpl.java

+ 11 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/controller/AdsOrderDetailController.java

@@ -1,10 +1,12 @@
 package com.zanxiang.game.data.serve.controller;
 
 import com.zanxiang.erp.security.annotation.PreAuthorize;
+import com.zanxiang.game.data.serve.pojo.dto.AdsOrderDetailDTO;
 import com.zanxiang.game.data.serve.pojo.dto.AdsOrderDetailListDTO;
 import com.zanxiang.game.data.serve.pojo.dto.AdsOrderDetailTotalDTO;
 import com.zanxiang.game.data.serve.pojo.vo.AdsOrderDetailTotalVO;
 import com.zanxiang.game.data.serve.pojo.vo.AdsOrderDetailVO;
+import com.zanxiang.game.data.serve.pojo.vo.OrderCPDetailVO;
 import com.zanxiang.game.data.serve.service.IAdsOrderDetailService;
 import com.zanxiang.game.data.serve.utils.Page;
 import com.zanxiang.module.util.pojo.ResultVO;
@@ -43,4 +45,13 @@ public class AdsOrderDetailController {
     public ResultVO<AdsOrderDetailTotalVO> orderTotal(@Validated @RequestBody AdsOrderDetailTotalDTO dto) {
         return ResultVO.ok(gameOrderService.orderTotal(dto));
     }
+
+    //@PreAuthorize(permissionKey = "gameData:order:detail")
+    @ApiOperation(value = "订单详情")
+    @PostMapping("/detail")
+    public ResultVO<Page<OrderCPDetailVO>> getOrderDetailList(@RequestBody AdsOrderDetailDTO dto) {
+        return ResultVO.ok(gameOrderService.getOrderDetailList(dto));
+    }
+
+
 }

+ 64 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/controller/PlayerDataController.java

@@ -0,0 +1,64 @@
+package com.zanxiang.game.data.serve.controller;
+
+import com.zanxiang.game.data.serve.pojo.dto.PlayerDataListDTO;
+import com.zanxiang.game.data.serve.pojo.dto.PlayerDataListTotalDTO;
+import com.zanxiang.game.data.serve.pojo.dto.PlayerRoleDataListDTO;
+import com.zanxiang.game.data.serve.pojo.dto.PlayerRoleDataListTotalDTO;
+import com.zanxiang.game.data.serve.pojo.vo.PlayerDataVO;
+import com.zanxiang.game.data.serve.pojo.vo.PlayerRoleDataVO;
+import com.zanxiang.game.data.serve.service.IPlayerDataService;
+import com.zanxiang.game.data.serve.utils.Page;
+import com.zanxiang.module.util.pojo.ResultVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+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 tianhua
+ * @time 2023/9/6
+ * @Description 玩家数据控制层
+ **/
+@Api(tags = "玩家数据")
+@RestController
+@RequestMapping("/player")
+@Slf4j
+public class PlayerDataController {
+
+    @Autowired
+    private IPlayerDataService playerDataService;
+
+    @ApiOperation("玩家列表")
+    //@PreAuthorize(permissionKey = "playerData:player:list")
+    @PostMapping("/list")
+    public ResultVO<Page<PlayerDataVO>> getPlayerDataList(@RequestBody PlayerDataListDTO dto) {
+        return ResultVO.ok(playerDataService.getPlayerDataList(dto));
+    }
+
+    @ApiOperation("玩家列表总计一栏")
+    //@PreAuthorize(permissionKey = "playerData:player:listTotal")
+    @PostMapping("/listTotal")
+    public ResultVO<PlayerDataVO> getPlayerDataListTotal(@RequestBody PlayerDataListTotalDTO dto) {
+        return ResultVO.ok(playerDataService.getPlayerDataListTotal(dto));
+    }
+
+    @ApiOperation("玩家角色列表")
+    //@PreAuthorize(permissionKey = "playerData:role:list")
+    @PostMapping("/role/list")
+    public ResultVO<Page<PlayerRoleDataVO>> getPlayerRoleDataList(@RequestBody PlayerRoleDataListDTO dto) {
+        return ResultVO.ok(playerDataService.getPlayerRoleDataList(dto));
+    }
+
+    @ApiOperation("玩家角色列表总计一栏")
+    //@PreAuthorize(permissionKey = "playerData:role:listTotal")
+    @PostMapping("/role/listTotal")
+    public ResultVO<PlayerRoleDataVO> getPlayerRoleDataListTotal(@RequestBody PlayerRoleDataListTotalDTO dto) {
+        return ResultVO.ok(playerDataService.getPlayerRoleDataListTotal(dto));
+    }
+
+
+}

+ 21 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/dto/AdsOrderDetailDTO.java

@@ -0,0 +1,21 @@
+package com.zanxiang.game.data.serve.pojo.dto;
+
+import com.zanxiang.game.data.serve.pojo.base.BasePage;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author tianhua
+ * @time 2023/9/6
+ * @Description 操作里面的订单详情(主要查询cp回调信息)
+ **/
+@Data
+public class AdsOrderDetailDTO extends BasePage {
+
+    /**
+     * 商户订单号
+     */
+    @ApiModelProperty(notes = "商户订单号")
+    private String orderId;
+
+}

+ 29 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/dto/PlayerDataListDTO.java

@@ -0,0 +1,29 @@
+package com.zanxiang.game.data.serve.pojo.dto;
+
+import com.zanxiang.game.data.serve.pojo.base.BasePage;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDate;
+
+/**
+ * @author tianhua
+ * @time 2023/9/6
+ * @Description 前端玩家列表查询参数实体
+ **/
+@Data
+public class PlayerDataListDTO extends BasePage {
+
+    /**
+     * 注册开始时间
+     */
+    @ApiModelProperty("注册开始时间")
+    private LocalDate beginDate;
+
+    /**
+     * 注册结束时间
+     */
+    @ApiModelProperty("注册结束时间")
+    private LocalDate endDate;
+
+}

+ 28 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/dto/PlayerDataListTotalDTO.java

@@ -0,0 +1,28 @@
+package com.zanxiang.game.data.serve.pojo.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDate;
+
+/**
+ * @author tianhua
+ * @time 2023/9/6
+ * @Description 前端玩家列表总计查询参数实体
+ **/
+@Data
+public class PlayerDataListTotalDTO {
+
+    /**
+     * 注册开始时间
+     */
+    @ApiModelProperty("注册开始时间")
+    private LocalDate beginDate;
+
+    /**
+     * 注册结束时间
+     */
+    @ApiModelProperty("注册结束时间")
+    private LocalDate endDate;
+
+}

+ 29 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/dto/PlayerRoleDataListDTO.java

@@ -0,0 +1,29 @@
+package com.zanxiang.game.data.serve.pojo.dto;
+
+import com.zanxiang.game.data.serve.pojo.base.BasePage;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDate;
+
+/**
+ * @author tianhua
+ * @time 2023/9/6
+ * @Description 前端玩家角色列表查询参数实体
+ **/
+@Data
+public class PlayerRoleDataListDTO extends BasePage {
+
+    /**
+     * 注册开始时间
+     */
+    @ApiModelProperty("注册开始时间")
+    private LocalDate beginDate;
+
+    /**
+     * 注册结束时间
+     */
+    @ApiModelProperty("注册结束时间")
+    private LocalDate endDate;
+
+}

+ 28 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/dto/PlayerRoleDataListTotalDTO.java

@@ -0,0 +1,28 @@
+package com.zanxiang.game.data.serve.pojo.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDate;
+
+/**
+ * @author tianhua
+ * @time 2023/9/6
+ * @Description 前端玩家角色列表总计查询参数实体
+ **/
+@Data
+public class PlayerRoleDataListTotalDTO {
+
+    /**
+     * 注册开始时间
+     */
+    @ApiModelProperty("注册开始时间")
+    private LocalDate beginDate;
+
+    /**
+     * 注册结束时间
+     */
+    @ApiModelProperty("注册结束时间")
+    private LocalDate endDate;
+
+}

+ 17 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/entity/AdsOrderDetail.java

@@ -58,6 +58,12 @@ public class AdsOrderDetail implements Serializable {
     @Column
     private String cpName;
 
+    /**
+     * CP通知状态,1为待处理,2为成功,-1为失败
+     */
+    @Column
+    private String cpStatus;
+
     /**
      * 第三方支付订单号
      */
@@ -184,6 +190,12 @@ public class AdsOrderDetail implements Serializable {
     @Column
     private String orderGameClassify;
 
+    /**
+     * 游戏商品id
+     */
+    @Column
+    private String productId;
+
     /**
      * 游戏商品名称
      */
@@ -291,5 +303,10 @@ public class AdsOrderDetail implements Serializable {
     @Column
     private String isFirstRecharge;
 
+    /**
+     * cp最后通知时间
+     */
+    @Column
+    private LocalDateTime lastCpNotifyTime;
 
 }

+ 86 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/entity/TPayCallCpLog.java

@@ -0,0 +1,86 @@
+package com.zanxiang.game.data.serve.pojo.entity;
+
+import lombok.Data;
+import org.nutz.dao.entity.annotation.Column;
+import org.nutz.dao.entity.annotation.PK;
+import org.nutz.dao.entity.annotation.Table;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+@Data
+@Table(TPayCallCpLog.TABLE_NAME)
+@PK({"id"})
+public class TPayCallCpLog implements Serializable {
+    private static final long serialVersionUID = 1L;
+    public static final String TABLE_NAME = "t_pay_call_cp_log";
+     
+    /**
+    * 自增ID
+    */
+    private Long id;
+    
+    /**
+    * 订单号
+    */    
+    @Column
+    private String orderId;
+    
+    /**
+    * CP订单号
+    */    
+    @Column
+    private String cpOrderId;
+    
+    /**
+    * 充值成功标志,1为待处理,2为成功,3为失败
+    */    
+    @Column
+    private Integer status;
+    
+    /**
+    * 充值回调标志,1为待处理,2为成功,3为失败
+    */    
+    @Column
+    private Integer cpStatus;
+    
+    /**
+    * CP回调地址
+    */    
+    @Column
+    private String cpPaybackUrl;
+    
+    /**
+    * CP回调参数
+    */    
+    @Column
+    private String params;
+    
+    /**
+    * CP附加参数
+    */    
+    @Column
+    private String ext;
+    
+    /**
+    * 通知次数
+    */    
+    @Column
+    private Integer notifyCnt;
+    
+    /**
+    * 创建时间
+    */    
+    @Column
+    private LocalDateTime createTime;
+    
+    /**
+    * 更新时间
+    */    
+    @Column
+    private LocalDateTime updateTime;
+    
+  
+}
+
+

+ 16 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/AdsOrderDetailVO.java

@@ -25,6 +25,12 @@ public class AdsOrderDetailVO {
     @ApiModelProperty(notes = "CP名称")
     private String cpName;
 
+    /**
+     * CP通知状态,1为待处理,2为成功,-1为失败
+     */
+    @ApiModelProperty(notes = "CP通知状态,1为待处理,2为成功,-1为失败")
+    private String cpStatus;
+
     @ApiModelProperty(notes = "第三方支付订单号")
     private String merchantOrderNo;
 
@@ -88,6 +94,9 @@ public class AdsOrderDetailVO {
     @ApiModelProperty(notes = "充值游戏类型")
     private String orderGameClassify;
 
+    @ApiModelProperty(notes = "游戏商品id(产品Id)")
+    private String productId;
+
     @ApiModelProperty(notes = "游戏商品名称")
     private String productName;
 
@@ -141,4 +150,11 @@ public class AdsOrderDetailVO {
 
     @ApiModelProperty(notes = "是否首充:1是,0否")
     private String isFirstRecharge;
+
+    /**
+     * cp最后通知时间
+     */
+    @ApiModelProperty(notes = "cp最后通知时间")
+    private LocalDateTime lastCpNotifyTime;
+
 }

+ 46 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/OrderCPDetailVO.java

@@ -0,0 +1,46 @@
+package com.zanxiang.game.data.serve.pojo.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+/**
+ * @author tianhua
+ * @time 2023/9/6
+ * @Description 订单详情中的cp回调数据显示实体
+ **/
+@Data
+public class OrderCPDetailVO {
+
+    @ApiModelProperty(notes = "主键id")
+    private Long id;
+
+    @ApiModelProperty(notes = "订单号")
+    private String orderId;
+
+    @ApiModelProperty(notes = "CP订单号")
+    private String cpOrderId;
+
+    @ApiModelProperty(notes = "充值成功标志,1为待处理,2为成功,3为失败")
+    private Integer status;
+
+    @ApiModelProperty(notes = "充值回调标志,1为待处理,2为成功,3为失败")
+    private Integer cpStatus;
+
+    @ApiModelProperty(notes = "CP回调地址")
+    private String cpPaybackUrl;
+
+    @ApiModelProperty(notes = "CP回调参数")
+    private String params;
+
+    @ApiModelProperty(notes = "CP附加参数")
+    private String ext;
+
+    @ApiModelProperty(notes = "通知次数")
+    private Integer notifyCnt;
+
+    @ApiModelProperty(notes = "创建时间")
+    private LocalDateTime createTime;
+
+}

+ 9 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/PlayerDataVO.java

@@ -0,0 +1,9 @@
+package com.zanxiang.game.data.serve.pojo.vo;
+
+/**
+ * @author tianhua
+ * @time 2023/9/6
+ * @Description 返给前端的玩家列表实体(玩家列表、玩家列表总计使用)
+ **/
+public class PlayerDataVO {
+}

+ 9 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/PlayerRoleDataVO.java

@@ -0,0 +1,9 @@
+package com.zanxiang.game.data.serve.pojo.vo;
+
+/**
+ * @author tianhua
+ * @time 2023/9/6
+ * @Description 返给前端的玩家角色列表实体(玩家角色列表、玩家角色列表总计使用)
+ **/
+public class PlayerRoleDataVO {
+}

+ 4 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/IAdsOrderDetailService.java

@@ -1,9 +1,11 @@
 package com.zanxiang.game.data.serve.service;
 
+import com.zanxiang.game.data.serve.pojo.dto.AdsOrderDetailDTO;
 import com.zanxiang.game.data.serve.pojo.dto.AdsOrderDetailListDTO;
 import com.zanxiang.game.data.serve.pojo.dto.AdsOrderDetailTotalDTO;
 import com.zanxiang.game.data.serve.pojo.vo.AdsOrderDetailTotalVO;
 import com.zanxiang.game.data.serve.pojo.vo.AdsOrderDetailVO;
+import com.zanxiang.game.data.serve.pojo.vo.OrderCPDetailVO;
 import com.zanxiang.game.data.serve.utils.Page;
 
 public interface IAdsOrderDetailService {
@@ -11,4 +13,6 @@ public interface IAdsOrderDetailService {
     Page<AdsOrderDetailVO> listOfPage(AdsOrderDetailListDTO dto);
 
     AdsOrderDetailTotalVO orderTotal(AdsOrderDetailTotalDTO dto);
+
+    Page<OrderCPDetailVO> getOrderDetailList(AdsOrderDetailDTO dto);
 }

+ 46 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/IPlayerDataService.java

@@ -0,0 +1,46 @@
+package com.zanxiang.game.data.serve.service;
+
+import com.zanxiang.game.data.serve.pojo.dto.PlayerDataListDTO;
+import com.zanxiang.game.data.serve.pojo.dto.PlayerDataListTotalDTO;
+import com.zanxiang.game.data.serve.pojo.dto.PlayerRoleDataListDTO;
+import com.zanxiang.game.data.serve.pojo.dto.PlayerRoleDataListTotalDTO;
+import com.zanxiang.game.data.serve.pojo.vo.PlayerDataVO;
+import com.zanxiang.game.data.serve.pojo.vo.PlayerRoleDataVO;
+import com.zanxiang.game.data.serve.utils.Page;
+
+/**
+ * @author tianhua
+ * @time 2023/9/6
+ * @Description
+ **/
+public interface IPlayerDataService {
+
+    /**
+     * 玩家列表
+     * @param dto PlayerDataListDTO
+     * @return Page<PlayerDataVO>
+     */
+    Page<PlayerDataVO> getPlayerDataList(PlayerDataListDTO dto);
+
+    /**
+     * 玩家列表总计一栏
+     * @param dto PlayerDataListTotalDTO
+     * @return PlayerDataVO
+     */
+    PlayerDataVO getPlayerDataListTotal(PlayerDataListTotalDTO dto);
+
+    /**
+     * 玩家角色列表
+     * @param dto PlayerRoleDataListDTO
+     * @return Page<PlayerRoleDataVO>
+     */
+    Page<PlayerRoleDataVO> getPlayerRoleDataList(PlayerRoleDataListDTO dto);
+
+    /**
+     * 玩家角色列表总计一栏
+     * @param dto PlayerRoleDataListTotalDTO
+     * @return PlayerRoleDataVO
+     */
+    PlayerRoleDataVO getPlayerRoleDataListTotal(PlayerRoleDataListTotalDTO dto);
+
+}

+ 41 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/impl/AdsOrderDetailService.java

@@ -2,12 +2,15 @@ package com.zanxiang.game.data.serve.service.impl;
 
 import com.zanxiang.erp.security.util.SecurityUtil;
 import com.zanxiang.game.data.serve.component.DataPowerComponent;
+import com.zanxiang.game.data.serve.pojo.dto.AdsOrderDetailDTO;
 import com.zanxiang.game.data.serve.pojo.dto.AdsOrderDetailListDTO;
 import com.zanxiang.game.data.serve.pojo.dto.AdsOrderDetailTotalDTO;
 import com.zanxiang.game.data.serve.pojo.entity.AdsOrderDetail;
+import com.zanxiang.game.data.serve.pojo.entity.TPayCallCpLog;
 import com.zanxiang.game.data.serve.pojo.enums.OrderByEnum;
 import com.zanxiang.game.data.serve.pojo.vo.AdsOrderDetailTotalVO;
 import com.zanxiang.game.data.serve.pojo.vo.AdsOrderDetailVO;
+import com.zanxiang.game.data.serve.pojo.vo.OrderCPDetailVO;
 import com.zanxiang.game.data.serve.service.IAdsOrderDetailService;
 import com.zanxiang.game.data.serve.utils.Page;
 import com.zanxiang.module.util.bean.BeanUtil;
@@ -228,6 +231,30 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
         return sql.getObject(AdsOrderDetailTotalVO.class);
     }
 
+    @Override
+    public Page<OrderCPDetailVO> getOrderDetailList(AdsOrderDetailDTO dto) {
+        //未传递参数,显示空结果
+        if (StringUtils.isBlank(dto.getOrderId())) {
+            return null;
+        }
+        //查询条件
+        Criteria cri = Cnd.cri();
+        cri.where().andEquals("order_id", dto.getOrderId());
+        //拼接默认排序条件
+        cri.getOrderBy().desc("create_time");
+        //pager对象
+        Pager pager = dto.toPage();
+        //得到查询的结果
+        List<OrderCPDetailVO> records = dao.query(TPayCallCpLog.class, cri, pager).stream().map(this::toVO).collect(Collectors.toList());
+        pager.setRecordCount(dao.count(TPayCallCpLog.class, cri));
+        return new Page<>(records, pager);
+    }
+
+    /**
+     * 订单详情列表
+     * @param gameOrder 原始表中的数据
+     * @return AdsOrderDetailVO
+     */
     private AdsOrderDetailVO toVO(AdsOrderDetail gameOrder) {
         if (gameOrder == null) {
             return null;
@@ -238,4 +265,18 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
         }
         return BeanUtil.copy(gameOrder, AdsOrderDetailVO.class);
     }
+
+    /**
+     * cp回调信息
+     * @param tPayCallCpLog 原始表中的数据
+     * @return OrderCPDetailVO
+     */
+    private OrderCPDetailVO toVO(TPayCallCpLog tPayCallCpLog) {
+        if (tPayCallCpLog == null) {
+            return null;
+        }
+        return BeanUtil.copy(tPayCallCpLog, OrderCPDetailVO.class);
+    }
+
+
 }

+ 61 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/impl/PlayerDataServiceImpl.java

@@ -0,0 +1,61 @@
+package com.zanxiang.game.data.serve.service.impl;
+
+import com.zanxiang.game.data.serve.pojo.dto.PlayerDataListDTO;
+import com.zanxiang.game.data.serve.pojo.dto.PlayerDataListTotalDTO;
+import com.zanxiang.game.data.serve.pojo.dto.PlayerRoleDataListDTO;
+import com.zanxiang.game.data.serve.pojo.dto.PlayerRoleDataListTotalDTO;
+import com.zanxiang.game.data.serve.pojo.vo.PlayerDataVO;
+import com.zanxiang.game.data.serve.pojo.vo.PlayerRoleDataVO;
+import com.zanxiang.game.data.serve.service.IPlayerDataService;
+import com.zanxiang.game.data.serve.utils.Page;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author tianhua
+ * @time 2023/9/6
+ * @Description 玩家数据的逻辑实现层
+ **/
+@Service
+public class PlayerDataServiceImpl implements IPlayerDataService {
+
+    /**
+     * 玩家列表
+     * @param dto PlayerDataListDTO
+     * @return Page<PlayerDataVO>
+     */
+    @Override
+    public Page<PlayerDataVO> getPlayerDataList(PlayerDataListDTO dto) {
+        return null;
+    }
+
+    /**
+     * 玩家列表总计一栏
+     * @param dto PlayerDataListTotalDTO
+     * @return PlayerDataVO
+     */
+    @Override
+    public PlayerDataVO getPlayerDataListTotal(PlayerDataListTotalDTO dto) {
+        return null;
+    }
+
+    /**
+     * 玩家角色列表
+     * @param dto PlayerRoleDataListDTO
+     * @return Page<PlayerRoleDataVO>
+     */
+    @Override
+    public Page<PlayerRoleDataVO> getPlayerRoleDataList(PlayerRoleDataListDTO dto) {
+        return null;
+    }
+
+    /**
+     * 玩家角色列表总计一栏
+     * @param dto PlayerRoleDataListTotalDTO
+     * @return PlayerRoleDataVO
+     */
+    @Override
+    public PlayerRoleDataVO getPlayerRoleDataListTotal(PlayerRoleDataListTotalDTO dto) {
+        return null;
+    }
+
+}