Browse Source

feat : 完成SDK后台cp管理接口

bilingfeng 2 years ago
parent
commit
e4b2162d53
44 changed files with 628 additions and 109 deletions
  1. 19 5
      game-module/game-common/pom.xml
  2. 64 0
      game-module/game-common/src/main/java/com/zanxiang/common/base/BasePage.java
  3. 1 1
      game-module/game-common/src/main/java/com/zanxiang/common/enums/DeleteEnum.java
  4. 2 1
      game-module/game-common/src/main/java/com/zanxiang/common/enums/Pay/WxPayConfigEnum.java
  5. 5 0
      game-module/game-manage/pom.xml
  6. 13 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/config/MybatisPlusConfig.java
  7. 48 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/config/SwaggerConfig.java
  8. 52 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/CpController.java
  9. 0 4
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayApplicationController.java
  10. 0 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/TestController.java
  11. 0 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/bo/PayApplicationBO.java
  12. 0 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/dto/PayApplicationDTO.java
  13. 0 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/dto/PayBoxDTO.java
  14. 0 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/dto/PayMerchantDTO.java
  15. 69 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/CpAddUpdateParam.java
  16. 23 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/CpListParam.java
  17. 0 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayApplicationParam.java
  18. 0 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayBoxParam.java
  19. 0 2
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantListParam.java
  20. 69 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/CpVO.java
  21. 1 6
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayWayVO.java
  22. 39 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/CpService.java
  23. 123 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/CpServiceImpl.java
  24. 1 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/PayApplicationService.java
  25. 1 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/PayBoxService.java
  26. 0 2
      game-module/game-mybatis/pom.xml
  27. 28 0
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/config/MybatisConfig.java
  28. 4 2
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/Channel.java
  29. 20 13
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/Cp.java
  30. 4 2
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/Game.java
  31. 5 3
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/GameServer.java
  32. 4 2
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/GameVersion.java
  33. 0 1
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/Order.java
  34. 9 7
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayApplication.java
  35. 6 6
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayBox.java
  36. 8 6
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayMerchant.java
  37. 2 2
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/mapper/PayApplicationMapper.java
  38. 2 2
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/mapper/PayBoxMapper.java
  39. 2 2
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/mapper/PayMerchantMapper.java
  40. 0 12
      game-module/game-sdk/pom.xml
  41. 4 1
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/controller/OrderController.java
  42. 0 2
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/PlatformOrderServiceImpl.java
  43. 0 1
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/pay/AlipayServiceImpl.java
  44. 0 1
      game-module/pom.xml

+ 19 - 5
game-module/game-common/pom.xml

@@ -16,7 +16,6 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
-
         <!-- nacos配置中心 -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
@@ -27,30 +26,45 @@
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
         </dependency>
-
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-test</artifactId>
             <scope>test</scope>
         </dependency>
-
         <!-- Mybatis Plus -->
         <dependency>
             <groupId>com.baomidou</groupId>
             <artifactId>mybatis-plus-boot-starter</artifactId>
             <version>${mybatis-plus.version}</version>
         </dependency>
-
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-jdbc</artifactId>
         </dependency>
-
         <!-- Mysql Connector -->
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
         </dependency>
+        <!-- 解决validated不生效的依赖问题 -->
+        <dependency>
+            <groupId>org.hibernate.validator</groupId>
+            <artifactId>hibernate-validator</artifactId>
+            <version>6.0.17.Final</version>
+            <scope>compile</scope>
+        </dependency>
+        <!--swagger2 的集成-->
+        <dependency>
+            <groupId>io.springfox</groupId>
+            <artifactId>springfox-swagger2</artifactId>
+            <version>${swagger2.version}</version>
+        </dependency>
+        <!--swagger样式 的集成-->
+        <dependency>
+            <groupId>io.springfox</groupId>
+            <artifactId>springfox-swagger-ui</artifactId>
+            <version>${swagger2.ui.version}</version>
+        </dependency>
     </dependencies>
 
 </project>

+ 64 - 0
game-module/game-common/src/main/java/com/zanxiang/common/base/BasePage.java

@@ -0,0 +1,64 @@
+package com.zanxiang.common.base;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.validation.constraints.Max;
+import javax.validation.constraints.Min;
+import javax.validation.constraints.NotNull;
+import java.time.LocalDate;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-22
+ * @description : 分页通用参数
+ */
+@Data
+public class BasePage<T> {
+
+    /**
+     * 当前记录起始索引
+     */
+    @NotNull(message = "当前页数不可为空")
+    @Min(value = 1, message = "起始页最小为 1")
+    @ApiModelProperty(value = "当前记录起始索引")
+    private Integer pageNum;
+
+    /**
+     * 每页显示记录数
+     */
+    @NotNull(message = "单页数量不可为空")
+    @Min(value = 1, message = "页面大小(2~200)之间")
+    @Max(value = 200, message = "页面大小(2~200)之间")
+    @ApiModelProperty(value = "每页显示记录数")
+    private Integer pageSize;
+
+    /**
+     * 开始时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty(value = "开始时间")
+    private LocalDate beginDate;
+
+    /**
+     * 结束时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty(value = "结束时间")
+    private LocalDate endDate;
+
+    /**
+     * 构造方法
+     *
+     * @return : 返回分页对象
+     */
+    public IPage<T> toPage() {
+        return new Page<>(pageNum, pageSize);
+    }
+}

+ 1 - 1
game-module/game-common/src/main/java/com/zanxiang/common/enums/DeleteEnum.java

@@ -10,7 +10,7 @@ import lombok.NoArgsConstructor;
 @Getter
 @NoArgsConstructor
 public enum DeleteEnum {
-    NO(2, "正常"),
+    NO(0, "正常"),
     YES(1, "已删除");
 
     private int code;

+ 2 - 1
game-module/game-common/src/main/java/com/zanxiang/common/enums/Pay/WxPayConfigEnum.java

@@ -1,6 +1,7 @@
 package com.zanxiang.common.enums.Pay;
 
-import java.util.*;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @author xufeng

+ 5 - 0
game-module/game-manage/pom.xml

@@ -21,6 +21,11 @@
             <artifactId>fastjson</artifactId>
             <version>${alibaba.fastjson.version}</version>
         </dependency>
+        <dependency>
+            <groupId>com.zanxiang.game</groupId>
+            <artifactId>game-common-redis</artifactId>
+            <version>${game-common-redis.vertion}</version>
+        </dependency>
     </dependencies>
 
 </project>

+ 13 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/config/MybatisPlusConfig.java

@@ -0,0 +1,13 @@
+package com.zanxiang.manage.config;
+
+import com.zanxiang.mybatis.config.MybatisConfig;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-22
+ * @description : 数据库分页插件
+ */
+@Configuration
+public class MybatisPlusConfig extends MybatisConfig {
+}

+ 48 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/config/SwaggerConfig.java

@@ -0,0 +1,48 @@
+package com.zanxiang.manage.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import springfox.documentation.builders.ApiInfoBuilder;
+import springfox.documentation.builders.PathSelectors;
+import springfox.documentation.builders.RequestHandlerSelectors;
+import springfox.documentation.service.ApiInfo;
+import springfox.documentation.spi.DocumentationType;
+import springfox.documentation.spring.web.plugins.Docket;
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-3-31
+ * @description : Swagger2 配置
+ */
+@Configuration
+@EnableSwagger2
+public class SwaggerConfig {
+
+    /**
+     * 包扫描
+     */
+    @Bean
+    public Docket createRestApi() {
+        return new Docket(DocumentationType.SWAGGER_2)
+                .useDefaultResponseMessages(false)
+                .apiInfo(apiInfo())
+                .select()
+                .apis(RequestHandlerSelectors
+                        .basePackage("com.zanxiang.manage"))
+                .paths(PathSelectors.any())
+                .build();
+    }
+
+    /**
+     * api文档构造
+     *
+     * @return : 返回api模板
+     */
+    private ApiInfo apiInfo() {
+        return new ApiInfoBuilder()
+                .title("游戏管理后台服务")
+                .version("1.0")
+                .build();
+    }
+}

+ 52 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/CpController.java

@@ -0,0 +1,52 @@
+package com.zanxiang.manage.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.zanxiang.common.domain.ResultVo;
+import com.zanxiang.manage.domain.params.CpAddUpdateParam;
+import com.zanxiang.manage.domain.params.CpListParam;
+import com.zanxiang.manage.domain.vo.CpVO;
+import com.zanxiang.manage.service.CpService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-22
+ * @description : cp管理接口
+ */
+@Api(tags = {"cp管理接口"})
+@RestController
+@RequestMapping("/cp")
+@Slf4j
+public class CpController {
+
+    @Autowired
+    private CpService cpService;
+
+    @ApiOperation(value = "cp新增或者更新")
+    @PostMapping(value = "/add/or/update")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
+    public ResultVo<Boolean> addOrUpdate(@Validated @RequestBody CpAddUpdateParam param) {
+        return new ResultVo<>(cpService.addOrUpdate(param));
+    }
+
+    @ApiOperation(value = "cp列表查询")
+    @PostMapping(value = "/list")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = CpVO.class)})
+    public ResultVo<IPage<CpVO>> list(@Validated @RequestBody CpListParam param) {
+        return new ResultVo<>(cpService.list(param));
+    }
+
+    @ApiOperation(value = "cp删除")
+    @DeleteMapping(value = "/delete")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
+    public ResultVo<Boolean> deleteById(@RequestParam Long id) {
+        return new ResultVo<>(cpService.deleteById(id));
+    }
+}

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

@@ -4,13 +4,9 @@ import com.zanxiang.common.domain.ResultVo;
 import com.zanxiang.common.enums.HttpStatusEnum;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.bo.PayApplicationBO;
-import com.zanxiang.manage.domain.bo.PayMerchantBO;
 import com.zanxiang.manage.domain.dto.PayApplicationDTO;
-import com.zanxiang.manage.domain.dto.PayMerchantDTO;
 import com.zanxiang.manage.domain.params.PayApplicationParam;
-import com.zanxiang.manage.domain.params.PayMerchantParam;
 import com.zanxiang.manage.domain.vo.PayApplicationVO;
-import com.zanxiang.manage.domain.vo.PayMerchantVO;
 import com.zanxiang.manage.service.PayApplicationService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;

+ 0 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/TestController.java

@@ -6,10 +6,8 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiResponse;
 import io.swagger.annotations.ApiResponses;
-import lombok.extern.slf4j.Slf4j;
 import org.apache.tomcat.jni.Time;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;

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

@@ -1,13 +1,10 @@
 package com.zanxiang.manage.domain.bo;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
-import java.util.Date;
 
 /**
  * 注释游戏应用表

+ 0 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/dto/PayApplicationDTO.java

@@ -1,7 +1,5 @@
 package com.zanxiang.manage.domain.dto;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;

+ 0 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/dto/PayBoxDTO.java

@@ -1,7 +1,5 @@
 package com.zanxiang.manage.domain.dto;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;

+ 0 - 2
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/dto/PayMerchantDTO.java

@@ -1,7 +1,5 @@
 package com.zanxiang.manage.domain.dto;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 

+ 69 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/CpAddUpdateParam.java

@@ -0,0 +1,69 @@
+package com.zanxiang.manage.domain.params;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-22
+ * @description : cp新增或者更新参数
+ */
+@ApiModel
+@Data
+public class CpAddUpdateParam {
+
+    /**
+     * id
+     */
+    @ApiModelProperty(notes = "传id为修改, 不传id为新增")
+    private Long id;
+
+    /**
+     * cp名称
+     */
+    @NotBlank(message = "cp名称不可为空")
+    @ApiModelProperty(notes = "cp名称")
+    private String cpName;
+
+    /**
+     * 公司名称
+     */
+    @NotBlank(message = "公司名称不可为空")
+    @ApiModelProperty(notes = "公司名称")
+    private String companyName;
+
+    /**
+     * 联系人
+     */
+    @ApiModelProperty(notes = "联系人")
+    private String linkMan;
+
+    /**
+     * 联系人手机号
+     */
+    @ApiModelProperty(notes = "手机号")
+    private String mobile;
+
+    /**
+     * 对接状态
+     */
+    @NotNull(message = "对接状态不可为空")
+    @ApiModelProperty(notes = "对接状态")
+    private Integer status;
+
+    /**
+     * 备注
+     */
+    @ApiModelProperty(notes = "备注")
+    private String remark;
+
+    /**
+     * 渠道
+     */
+    @ApiModelProperty(notes = "渠道, 暂时没有用到, 不传值")
+    private Long channel;
+}

+ 23 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/CpListParam.java

@@ -0,0 +1,23 @@
+package com.zanxiang.manage.domain.params;
+
+import com.zanxiang.common.base.BasePage;
+import com.zanxiang.mybatis.entity.Cp;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-22
+ * @description : cp查询参数
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class CpListParam extends BasePage<Cp> {
+
+    /**
+     * cp名称
+     */
+    @ApiModelProperty(notes = "cp名称")
+    private String cpName;
+}

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

@@ -1,13 +1,10 @@
 package com.zanxiang.manage.domain.params;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
-import java.util.Date;
 
 /**
  * 注释游戏应用表

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

@@ -2,11 +2,8 @@ package com.zanxiang.manage.domain.params;
 
 import lombok.Data;
 import lombok.NoArgsConstructor;
-import lombok.NonNull;
 
 import java.io.Serializable;
-import java.math.BigDecimal;
-import java.util.Date;
 
 /**
  * @author xufeng

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

@@ -4,8 +4,6 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
-import java.math.BigDecimal;
-import java.util.Date;
 
 /**
  * @author xufeng

+ 69 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/CpVO.java

@@ -0,0 +1,69 @@
+package com.zanxiang.manage.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-22
+ * @description : cp信息
+ */
+@Data
+public class CpVO {
+
+    /**
+     * id
+     */
+    @ApiModelProperty(notes = "id")
+    private Long id;
+
+    /**
+     * cp名称
+     */
+    @ApiModelProperty(notes = "cp名称")
+    private String cpName;
+
+    /**
+     * 公司名称
+     */
+    @ApiModelProperty(notes = "公司名称")
+    private String companyName;
+
+    /**
+     * 联系人
+     */
+    @ApiModelProperty(notes = "联系人")
+    private String linkMan;
+
+    /**
+     * 手机号
+     */
+    @ApiModelProperty(notes = "手机号")
+    private String mobile;
+
+    /**
+     * 对接状态
+     */
+    @ApiModelProperty(notes = "对接状态")
+    private Integer status;
+
+    /**
+     * 备注
+     */
+    @ApiModelProperty(notes = "备注")
+    private String describe;
+
+    /**
+     * 创建时间
+     */
+    @ApiModelProperty(notes = "创建时间")
+    private LocalDateTime createTime;
+
+    /**
+     * 更新时间
+     */
+    @ApiModelProperty(notes = "更新时间")
+    private LocalDateTime updateTime;
+}

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

@@ -1,11 +1,6 @@
 package com.zanxiang.manage.domain.vo;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.*;
-
-import java.time.LocalDateTime;
+import lombok.Data;
 
 /**
  * @author : lingfeng

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

@@ -0,0 +1,39 @@
+package com.zanxiang.manage.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zanxiang.manage.domain.params.CpAddUpdateParam;
+import com.zanxiang.manage.domain.params.CpListParam;
+import com.zanxiang.manage.domain.vo.CpVO;
+import com.zanxiang.mybatis.entity.Cp;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-22
+ * @description : cp管理
+ */
+public interface CpService extends IService<Cp> {
+
+    /**
+     * 新增或者更新cp信息
+     *
+     * @param param : 新增或者更新的参数
+     */
+    boolean addOrUpdate(CpAddUpdateParam param);
+
+    /**
+     * 查询cp列表
+     *
+     * @param param : cp列表查询参数
+     * @return : 返回分页信息
+     */
+    IPage<CpVO> list(CpListParam param);
+
+    /**
+     * 删除cp信息
+     *
+     * @param id : 要删除的cp信息id
+     * @return : 返回删除结果
+     */
+    boolean deleteById(Long id);
+}

+ 123 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/CpServiceImpl.java

@@ -0,0 +1,123 @@
+package com.zanxiang.manage.service.Impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zanxiang.common.exception.BaseException;
+import com.zanxiang.common.utils.StringUtils;
+import com.zanxiang.common.utils.bean.BeanUtils;
+import com.zanxiang.manage.domain.params.CpAddUpdateParam;
+import com.zanxiang.manage.domain.params.CpListParam;
+import com.zanxiang.manage.domain.vo.CpVO;
+import com.zanxiang.manage.service.CpService;
+import com.zanxiang.mybatis.entity.Cp;
+import com.zanxiang.mybatis.mapper.CpMapper;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.logging.log4j.util.Strings;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.Objects;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-22
+ * @description : cp管理
+ */
+@Slf4j
+@Service
+public class CpServiceImpl extends ServiceImpl<CpMapper, Cp> implements CpService {
+
+    /**
+     * 新增或者更新cp信息
+     *
+     * @param param : 新增或者更新的参数
+     */
+    @Override
+    public boolean addOrUpdate(CpAddUpdateParam param) {
+        Long id = param.getId();
+        //更新
+        if (id != null) {
+            Cp cp = super.getById(id);
+            if (cp == null) {
+                throw new BaseException("参数错误, 更新的cp信息不存在");
+            }
+            cp.setCpName(param.getCpName());
+            cp.setCompanyName(param.getCompanyName());
+            cp.setLinkMan(param.getLinkMan());
+            cp.setMobile(param.getMobile());
+            cp.setStatus(param.getStatus());
+            cp.setRemark(param.getRemark());
+            cp.setUpdateTime(LocalDateTime.now());
+            return super.updateById(cp);
+        }
+        //判断cp名称是否已经存在
+        int count = super.count(new LambdaQueryWrapper<Cp>()
+                .eq(Cp::getCpName, param.getCpName()));
+        if (count > 0) {
+            throw new BaseException("cp名称已经存在");
+        }
+        //创建
+        Cp cp = Cp.builder()
+                .cpName(param.getCpName())
+                .companyName(param.getCompanyName())
+                .linkMan(param.getLinkMan())
+                .mobile(param.getMobile())
+                .status(param.getStatus())
+                .remark(param.getRemark())
+                .createTime(LocalDateTime.now())
+                .updateTime(LocalDateTime.now())
+                .build();
+        return super.save(cp);
+    }
+
+    /**
+     * 查询cp列表
+     *
+     * @param param : cp列表查询参数
+     * @return : 返回分页信息
+     */
+    @Override
+    public IPage<CpVO> list(CpListParam param) {
+        LambdaQueryWrapper<Cp> queryWrapper = Wrappers.lambdaQuery();
+        if (Strings.isNotBlank(param.getCpName())) {
+            queryWrapper.like(Cp::getCpName, param.getCpName());
+        }
+        queryWrapper.orderByDesc(Cp::getCreateTime);
+        return page(param.toPage(), new QueryWrapper<Cp>().lambda()
+                .like(StringUtils.isNotBlank(param.getCpName()), Cp::getCpName, param.getCpName())
+                .orderByDesc(Cp::getCreateTime)
+        ).convert(this::toVo);
+    }
+
+    /**
+     * cp对象转换
+     *
+     * @param cp : cp信息
+     * @return : 返回cpVo
+     */
+    private CpVO toVo(Cp cp) {
+        if (Objects.isNull(cp)) {
+            return null;
+        }
+        return BeanUtils.copy(cp, CpVO.class);
+    }
+
+    /**
+     * 删除cp信息
+     *
+     * @param id : 要删除的cp信息id
+     * @return : 返回删除结果
+     */
+    @Override
+    public boolean deleteById(Long id) {
+        return super.update(new LambdaUpdateWrapper<Cp>()
+                .set(Cp::getIsDelete, Boolean.TRUE)
+                .set(Cp::getDeleteTime, LocalDateTime.now())
+                .eq(Cp::getId, id));
+    }
+
+}

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

@@ -1,11 +1,9 @@
 package com.zanxiang.manage.service;
 
+import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.manage.domain.bo.PayApplicationBO;
-import com.zanxiang.manage.domain.bo.PayMerchantBO;
 import com.zanxiang.manage.domain.dto.PayApplicationDTO;
-import com.zanxiang.manage.domain.dto.PayMerchantDTO;
 import com.zanxiang.mybatis.entity.PayApplication;
-import com.baomidou.mybatisplus.extension.service.IService;
 
 import java.util.List;
 

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

@@ -1,11 +1,9 @@
 package com.zanxiang.manage.service;
 
+import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.manage.domain.bo.PayBoxBO;
-import com.zanxiang.manage.domain.bo.PayMerchantBO;
 import com.zanxiang.manage.domain.dto.PayBoxDTO;
-import com.zanxiang.manage.domain.dto.PayMerchantDTO;
 import com.zanxiang.mybatis.entity.PayBox;
-import com.baomidou.mybatisplus.extension.service.IService;
 
 import java.util.List;
 

+ 0 - 2
game-module/game-mybatis/pom.xml

@@ -17,7 +17,6 @@
     </properties>
 
     <dependencies>
-
         <dependency>
             <artifactId>game-common</artifactId>
             <groupId>com.zanxiang.game</groupId>
@@ -34,7 +33,6 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-jdbc</artifactId>
         </dependency>
-
         <!-- Mysql Connector -->
         <dependency>
             <groupId>mysql</groupId>

+ 28 - 0
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/config/MybatisConfig.java

@@ -0,0 +1,28 @@
+package com.zanxiang.mybatis.config;
+
+import com.baomidou.mybatisplus.annotation.DbType;
+import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.context.annotation.Bean;
+import org.springframework.transaction.annotation.EnableTransactionManagement;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-04-01
+ * @description : 数据库分页插件
+ */
+@EnableTransactionManagement
+@MapperScan({"com.zanxiang.mybatis.mapper"})
+public class MybatisConfig {
+
+    /**
+     * 分页插件
+     */
+    @Bean
+    public MybatisPlusInterceptor mybatisPlusInterceptor() {
+        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
+        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
+        return interceptor;
+    }
+}

+ 4 - 2
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/Channel.java

@@ -2,6 +2,7 @@ package com.zanxiang.mybatis.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.*;
 
@@ -52,9 +53,10 @@ public class Channel {
     private String position;
 
     /**
-     * 1 伪删除  2 正常
+     * 1 删除  0 正常
      */
-    private Boolean isDelete;
+    @TableLogic
+    private Integer isDelete;
 
     /**
      * 删除时间

+ 20 - 13
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/Cp.java

@@ -1,8 +1,6 @@
 package com.zanxiang.mybatis.entity;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import lombok.*;
 
 import java.time.LocalDateTime;
@@ -26,6 +24,11 @@ public class Cp {
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
+    /**
+     * cp名称
+     */
+    private String cpName;
+
     /**
      * 公司名称
      */
@@ -34,37 +37,41 @@ public class Cp {
     /**
      * 联系人
      */
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private String linkMan;
 
     /**
      * 手机号
      */
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private String mobile;
 
     /**
-     * 职位
+     * 对接状态
      */
-    private String position;
+    private Integer status;
 
     /**
-     * 1 cp 2 媒体
+     * 备注
      */
-    private Byte type;
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String remark;
 
     /**
-     * 1 伪删除  2 正常
+     * 渠道
      */
-    private Boolean isDelete;
+    private Long channel;
 
     /**
-     * 删除时间
+     * 1 删除  0 正常
      */
-    private LocalDateTime deleteTime;
+    @TableLogic
+    private Integer isDelete;
 
     /**
-     * 渠道
+     * 删除时间
      */
-    private Long channel;
+    private LocalDateTime deleteTime;
 
     /**
      * 创建时间

+ 4 - 2
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/Game.java

@@ -2,6 +2,7 @@ package com.zanxiang.mybatis.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.*;
 
@@ -132,9 +133,10 @@ public class Game {
     private LocalDateTime onlineTime;
 
     /**
-     * 1 伪删除  2 正常
+     * 1 删除  0 正常
      */
-    private Boolean isDelete;
+    @TableLogic
+    private Integer isDelete;
 
     /**
      * 删除时间

+ 5 - 3
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/GameServer.java

@@ -2,6 +2,7 @@ package com.zanxiang.mybatis.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.*;
 
@@ -54,12 +55,13 @@ public class GameServer {
     /**
      * 新服状态,1为预告,2为已开服
      */
-    private Boolean status;
+    private Integer status;
 
     /**
-     * 伪删除,2 正常,1 删除
+     * 1 删除  0 正常
      */
-    private Boolean isDelete;
+    @TableLogic
+    private Integer isDelete;
 
     /**
      * 删除时间

+ 4 - 2
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/GameVersion.java

@@ -2,6 +2,7 @@ package com.zanxiang.mybatis.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.*;
 
@@ -62,9 +63,10 @@ public class GameVersion {
     private Boolean isDefault;
 
     /**
-     * 1 已删除  2 正常
+     * 1 删除  0 正常
      */
-    private Boolean isDelete;
+    @TableLogic
+    private Integer isDelete;
 
     /**
      * 删除时间

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

@@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.*;
-import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
 import java.util.Date;

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

@@ -1,13 +1,14 @@
 package com.zanxiang.mybatis.entity;
 
-import java.io.Serializable;
-import java.util.Date;
-
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
-import lombok.AllArgsConstructor;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.IdType;
+
+import java.io.Serializable;
+import java.util.Date;
 
 /**
  * 游戏应用表
@@ -71,8 +72,9 @@ public class PayApplication implements Serializable {
     private String remark;
 
     /**
-     * 是否已删除 1 已删除 2 正常
+     * 1 删除  0 正常
      */
+    @TableLogic
     private Integer isDelete;
 
     /**

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

@@ -1,13 +1,13 @@
 package com.zanxiang.mybatis.entity;
 
-import java.io.Serializable;
-import java.util.Date;
-
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
-import lombok.AllArgsConstructor;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.IdType;
+
+import java.io.Serializable;
+import java.util.Date;
 
 /**
  * 支付盒子

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

@@ -1,14 +1,15 @@
 package com.zanxiang.mybatis.entity;
 
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
 import java.io.Serializable;
 import java.math.BigDecimal;
 import java.util.Date;
 
-import lombok.Data;
-import lombok.NoArgsConstructor;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.IdType;
-
 /**
  * 游戏支付商户配置表
  *
@@ -125,8 +126,9 @@ public class PayMerchant implements Serializable {
     private String remark;
 
     /**
-     * 是否已删除 1 已删除 2 正常
+     * 1 删除  0 正常
      */
+    @TableLogic
     private Integer isDelete;
 
     /**

+ 2 - 2
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/mapper/PayApplicationMapper.java

@@ -1,8 +1,8 @@
 package com.zanxiang.mybatis.mapper;
 
-import org.apache.ibatis.annotations.Mapper;
-import com.zanxiang.mybatis.entity.PayApplication;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zanxiang.mybatis.entity.PayApplication;
+import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 注释游戏应用表 Mapper

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

@@ -1,8 +1,8 @@
 package com.zanxiang.mybatis.mapper;
 
-import org.apache.ibatis.annotations.Mapper;
-import com.zanxiang.mybatis.entity.PayBox;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zanxiang.mybatis.entity.PayBox;
+import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 注释支付盒子 Mapper

+ 2 - 2
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/mapper/PayMerchantMapper.java

@@ -1,8 +1,8 @@
 package com.zanxiang.mybatis.mapper;
 
-import org.apache.ibatis.annotations.Mapper;
-import com.zanxiang.mybatis.entity.PayMerchant;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zanxiang.mybatis.entity.PayMerchant;
+import org.apache.ibatis.annotations.Mapper;
 
 /**
  * 注释游戏支付商户配置表 Mapper

+ 0 - 12
game-module/game-sdk/pom.xml

@@ -30,24 +30,12 @@
             <artifactId>zx-sms</artifactId>
             <version>1.0.0-SNAPSHOT</version>
         </dependency>
-        <!-- 解决validated不生效的依赖问题 -->
-        <dependency>
-            <groupId>org.hibernate.validator</groupId>
-            <artifactId>hibernate-validator</artifactId>
-            <version>6.0.17.Final</version>
-            <scope>compile</scope>
-        </dependency>
         <!--    支付相关pom  -->
         <dependency>
             <groupId>com.alipay.sdk</groupId>
             <artifactId>alipay-easysdk</artifactId>
             <version>2.1.0</version>
         </dependency>
-        <!--        <dependency>-->
-        <!--            <groupId>dom4j</groupId>-->
-        <!--            <artifactId>dom4j</artifactId>-->
-        <!--            <version>1.6.1</version>-->
-        <!--        </dependency>-->
         <dependency>
             <groupId>jdom</groupId>
             <artifactId>jdom</artifactId>

+ 4 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/controller/OrderController.java

@@ -8,7 +8,10 @@ import com.zanxiang.sdk.service.PlatformOrderService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 /**
  * @author xufeng

+ 0 - 2
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/PlatformOrderServiceImpl.java

@@ -2,9 +2,7 @@ package com.zanxiang.sdk.service.Impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.zanxiang.common.enums.HttpStatusEnum;
 import com.zanxiang.common.enums.OrderStateEnum;
-import com.zanxiang.common.exception.CustomException;
 import com.zanxiang.common.exception.ParamNullException;
 import com.zanxiang.common.utils.StringUtils;
 import com.zanxiang.common.utils.bean.BeanUtils;

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

@@ -11,7 +11,6 @@ import com.alipay.easysdk.payment.page.models.AlipayTradePagePayResponse;
 import com.alipay.easysdk.payment.wap.models.AlipayTradeWapPayResponse;
 import com.zanxiang.common.domain.ResultMap;
 import com.zanxiang.common.enums.OrderStateEnum;
-import com.zanxiang.common.enums.PayDeviceEnum;
 import com.zanxiang.common.enums.ResEnum;
 import com.zanxiang.common.utils.URIUtil;
 import com.zanxiang.sdk.domain.bo.PlatformOrderBO;

+ 0 - 1
game-module/pom.xml

@@ -38,7 +38,6 @@
             <version>${swagger2.ui.version}</version>
         </dependency>
 
-
     </dependencies>
 
 </project>