Преглед на файлове

feat : ip封禁管理接口提交

bilingfeng преди 2 години
родител
ревизия
40ca11ba71
променени са 24 файла, в които са добавени 489 реда и са изтрити 42 реда
  1. 21 4
      game-module/game-manage/src/main/java/com/zanxiang/manage/controller/BanController.java
  2. 99 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/dto/UserDTO.java
  3. 19 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/UserBanAddParam.java
  4. 55 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/UserBanListParam.java
  5. 30 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/UserBanUpdateParam.java
  6. 3 3
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/IpBanVO.java
  7. 54 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/UserBanVO.java
  8. 1 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/IpBanServiceImpl.java
  9. 100 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/UserBanServiceImpl.java
  10. 31 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/UserServiceImpl.java
  11. 21 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/UserBanService.java
  12. 20 0
      game-module/game-manage/src/main/java/com/zanxiang/manage/service/UserService.java
  13. 1 1
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/User.java
  14. 7 7
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/UserBan.java
  15. 1 1
      game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/UserToken.java
  16. 1 1
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/common/resolver/TokenArgumentResolver.java
  17. 1 1
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/controller/UserController.java
  18. 1 1
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/dto/UserTokenDTO.java
  19. 1 1
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/params/CommonParam.java
  20. 8 8
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/RegisterLoginServiceImpl.java
  21. 1 1
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/SmsServiceImpl.java
  22. 2 2
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/UserServiceImpl.java
  23. 7 7
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/UserTokenServiceImpl.java
  24. 4 4
      game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/UserTokenService.java

+ 21 - 4
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/BanController.java

@@ -2,11 +2,11 @@ package com.zanxiang.manage.controller;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.zanxiang.common.domain.ResultVo;
-import com.zanxiang.manage.domain.params.IpBanAddParam;
-import com.zanxiang.manage.domain.params.IpBanListParam;
-import com.zanxiang.manage.domain.params.IpBanUpdateParam;
+import com.zanxiang.manage.domain.params.*;
 import com.zanxiang.manage.domain.vo.IpBanVO;
+import com.zanxiang.manage.domain.vo.UserBanVO;
 import com.zanxiang.manage.service.IpBanService;
+import com.zanxiang.manage.service.UserBanService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiResponse;
@@ -33,6 +33,9 @@ public class BanController {
     @Autowired
     private IpBanService ipBanService;
 
+    @Autowired
+    private UserBanService userBanService;
+
     @ApiOperation(value = "查询ip封禁列表")
     @PostMapping(value = "/ip/list")
     @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = IpBanVO.class)})
@@ -47,10 +50,24 @@ public class BanController {
         return new ResultVo<>(ipBanService.addIp(param));
     }
 
-    @ApiOperation(value = "添加封禁ip")
+    @ApiOperation(value = "ip封禁或者解封")
     @PostMapping(value = "/ip/update")
     @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
     public ResultVo<Boolean> ipBanOrRemove(@Validated @RequestBody IpBanUpdateParam param) {
         return new ResultVo<>(ipBanService.ipBanOrRemove(param));
     }
+
+    @ApiOperation(value = "查询玩家封禁列表")
+    @PostMapping(value = "/user/list")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserBanVO.class)})
+    public ResultVo<IPage<UserBanVO>> list(@Validated @RequestBody UserBanListParam param) {
+        return new ResultVo<>(userBanService.list(param));
+    }
+
+    @ApiOperation(value = "玩家封禁添加或者更新")
+    @PostMapping(value = "/user/add/or/update")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
+    public ResultVo<Boolean> addOrUpdate(@Validated @RequestBody UserBanUpdateParam param) {
+        return new ResultVo<>(userBanService.addOrUpdate(param));
+    }
 }

+ 99 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/dto/UserDTO.java

@@ -0,0 +1,99 @@
+package com.zanxiang.manage.domain.dto;
+
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-09
+ * @description : 用户信息
+ */
+@Data
+public class UserDTO {
+
+    /**
+     * id
+     */
+    private Long id;
+
+    /**
+     * 所属渠道ID
+     */
+    private Long agentId;
+
+    /**
+     * 用户名
+     */
+    private String username;
+
+    /**
+     * 昵称
+     */
+    private String nickname;
+
+    /**
+     * 注册手机号
+     */
+    private String regMobile;
+
+    /**
+     * 注册邮箱
+     */
+    private String regEmail;
+
+    /**
+     * 密码
+     */
+    private String password;
+
+    /**
+     * 绑定邮箱
+     */
+    private String email;
+
+    /**
+     * 绑定手机号码
+     */
+    private String mobile;
+
+    /**
+     * 设备来源 mobile,android,iphone,ipad,web,pc,mac,wxapp
+     */
+    private String fromDevice;
+
+    /**
+     * 设备ID android 为imei ios 为idfa
+     */
+    private String deviceId;
+
+    /**
+     * 设备类型
+     */
+    private String deviceType;
+
+    /**
+     * -1 为冻结状态, 1 为试玩状态 2为正常状态
+     */
+    private Integer status;
+
+    /**
+     * 头像
+     */
+    private String avatar;
+
+    /**
+     * 渠道
+     */
+    private Long channel;
+
+    /**
+     * 注册时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 更改时间
+     */
+    private LocalDateTime updateTime;
+}

+ 19 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/UserBanAddParam.java

@@ -0,0 +1,19 @@
+package com.zanxiang.manage.domain.params;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-29
+ * @description : 玩家封禁添加
+ */
+@Data
+public class UserBanAddParam {
+
+    /**
+     * 玩家id
+     */
+    @ApiModelProperty(notes = "玩家id")
+    private Long userId;
+}

+ 55 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/UserBanListParam.java

@@ -0,0 +1,55 @@
+package com.zanxiang.manage.domain.params;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.zanxiang.common.base.BasePage;
+import com.zanxiang.mybatis.entity.UserBan;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalDate;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-29
+ * @description : 玩家封禁列表查询
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class UserBanListParam extends BasePage<UserBan> {
+
+    /**
+     * 玩家id
+     */
+    @ApiModelProperty(notes = "玩家id")
+    private String userId;
+
+    /**
+     * 用户账号
+     */
+    @ApiModelProperty(notes = "玩家账号")
+    private String userName;
+
+    /**
+     * 用户昵称
+     */
+    @ApiModelProperty(notes = "玩家昵称")
+    private String userNickName;
+
+    /**
+     * 注册开始时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty(notes = "注册开始时间")
+    private LocalDate regBeginTime;
+
+    /**
+     * 注册结束时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty(notes = "注册结束时间")
+    private LocalDate regEndTime;
+}

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

@@ -0,0 +1,30 @@
+package com.zanxiang.manage.domain.params;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-29
+ * @description : 玩家封禁更新
+ */
+@Data
+public class UserBanUpdateParam {
+
+    /**
+     * 玩家id
+     */
+    @NotNull(message = "玩家id参数不可为空")
+    @ApiModelProperty(notes = "玩家id")
+    private Long userId;
+
+    /**
+     * 状态
+     */
+    @NotNull(message = "封禁状态不可为空")
+    @ApiModelProperty(notes = "状态, 0 : 解封, 1 : 封禁")
+    private Integer status;
+}

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

@@ -3,7 +3,7 @@ package com.zanxiang.manage.domain.vo;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import java.util.Date;
+import java.time.LocalDateTime;
 
 /**
  * @author : lingfeng
@@ -29,13 +29,13 @@ public class IpBanVO {
      * 封禁时间
      */
     @ApiModelProperty(notes = "封禁时间")
-    private Date banTime;
+    private LocalDateTime banTime;
 
     /**
      * 更新时间
      */
     @ApiModelProperty(notes = "更新时间")
-    private Date updateTime;
+    private LocalDateTime updateTime;
 
     /**
      * 状态, 0 正常 1 封禁

+ 54 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/UserBanVO.java

@@ -1,9 +1,63 @@
 package com.zanxiang.manage.domain.vo;
 
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
 /**
  * @author : lingfeng
  * @time : 2022-06-28
  * @description : 玩家封禁信息
  */
+@Data
 public class UserBanVO {
+
+    /**
+     * 主键
+     */
+    @ApiModelProperty(notes = "主键")
+    private Long id;
+
+    /**
+     * 用户id
+     */
+    @ApiModelProperty(notes = "用户id")
+    private String userId;
+
+    /**
+     * 用户账号
+     */
+    @ApiModelProperty(notes = "用户账号")
+    private String userName;
+
+    /**
+     * 用户昵称
+     */
+    @ApiModelProperty(notes = "用户昵称")
+    private String userNickName;
+
+    /**
+     * 注册时间
+     */
+    @ApiModelProperty(notes = "注册时间")
+    private LocalDateTime regTime;
+
+    /**
+     * 封禁时间
+     */
+    @ApiModelProperty(notes = "封禁时间")
+    private LocalDateTime banTime;
+
+    /**
+     * 更新时间
+     */
+    @ApiModelProperty(notes = "更新时间")
+    private LocalDateTime updateTime;
+
+    /**
+     * 状态, 0 正常 1 封禁
+     */
+    @ApiModelProperty(notes = "状态, 0 正常 1 封禁")
+    private Integer status;
 }

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

@@ -115,6 +115,7 @@ public class IpBanServiceImpl extends ServiceImpl<IpBanMapper, IpBan> implements
                 .set(IpBan::getOperateId, 1L)
                 .set(IpBan::getOperateName, "赞象 admin")
                 .set(IpBan::getUpdateTime, LocalDateTime.now())
+                .eq(IpBan::getIp, param.getIp())
         );
     }
 }

+ 100 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/UserBanServiceImpl.java

@@ -1,12 +1,30 @@
 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.extension.service.impl.ServiceImpl;
+import com.zanxiang.common.enums.BanStatusEnum;
+import com.zanxiang.common.exception.BaseException;
+import com.zanxiang.common.utils.StringUtils;
+import com.zanxiang.common.utils.bean.BeanUtils;
+import com.zanxiang.manage.domain.dto.UserDTO;
+import com.zanxiang.manage.domain.params.UserBanListParam;
+import com.zanxiang.manage.domain.params.UserBanUpdateParam;
+import com.zanxiang.manage.domain.vo.UserBanVO;
 import com.zanxiang.manage.service.UserBanService;
+import com.zanxiang.manage.service.UserService;
 import com.zanxiang.mybatis.entity.UserBan;
 import com.zanxiang.mybatis.mapper.UserBanMapper;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.time.LocalDateTime;
+import java.time.LocalTime;
+import java.util.Objects;
+
 /**
  * @author : lingfeng
  * @time : 2022-06-28
@@ -15,4 +33,86 @@ import org.springframework.stereotype.Service;
 @Slf4j
 @Service
 public class UserBanServiceImpl extends ServiceImpl<UserBanMapper, UserBan> implements UserBanService {
+
+    @Autowired
+    private UserService userService;
+
+    /**
+     * 查询ip封禁列表
+     *
+     * @param param : 查询参数
+     * @return : 返回单页数据
+     */
+    @Override
+    public IPage<UserBanVO> list(UserBanListParam param) {
+        return page(param.toPage(), new QueryWrapper<UserBan>().lambda()
+                .eq(param.getUserId() != null, UserBan::getUserId, param.getUserId())
+                .eq(StringUtils.isNotBlank(param.getUserName()), UserBan::getUserName, param.getUserName())
+                .eq(StringUtils.isNotBlank(param.getUserNickName()), UserBan::getUserNickName, param.getUserNickName())
+                .ge(param.getRegBeginTime() != null, UserBan::getRegTime, param.getRegBeginTime() == null ? null : LocalDateTime.of(param.getRegBeginTime(), LocalTime.MIN))
+                .le(param.getRegEndTime() != null, UserBan::getRegTime, param.getRegEndTime() == null ? null : LocalDateTime.of(param.getRegEndTime(), LocalTime.MAX))
+                .ge(param.getBeginDate() != null, UserBan::getBanTime, param.getBeginDate() == null ? null : LocalDateTime.of(param.getBeginDate(), LocalTime.MIN))
+                .le(param.getEndDate() != null, UserBan::getBanTime, param.getEndDate() == null ? null : LocalDateTime.of(param.getEndDate(), LocalTime.MAX))
+                .orderByDesc(UserBan::getCreateTime))
+                .convert(this::toVo);
+    }
+
+    /**
+     * 游戏标签对象转换
+     *
+     * @param userBan : 玩家封禁信息
+     * @return : 返回玩家封禁详情
+     */
+    private UserBanVO toVo(UserBan userBan) {
+        if (Objects.isNull(userBan)) {
+            return null;
+        }
+        return BeanUtils.copy(userBan, UserBanVO.class);
+    }
+
+
+    /**
+     * 玩家封禁添加或者更新
+     *
+     * @param param : 玩家封禁更新参数
+     * @return : 返回更新结果
+     */
+    @Override
+    public Boolean addOrUpdate(UserBanUpdateParam param) {
+        //查询玩家
+        UserBan userBan = super.getOne(new LambdaQueryWrapper<UserBan>().eq(UserBan::getUserId, param.getUserId()));
+        //已存在的玩家直接更新
+        if (userBan != null) {
+            return super.update(new LambdaUpdateWrapper<UserBan>()
+                    .set(UserBan::getStatus, param.getStatus())
+                    .set(UserBan::getBanTime, Objects.equals(param.getStatus(), BanStatusEnum.BAN_STATUS.getStatus()) ? LocalDateTime.now() : null)
+                    .set(UserBan::getOperateId, 1L)
+                    .set(UserBan::getOperateName, "赞象 admin")
+                    .set(UserBan::getUpdateTime, LocalDateTime.now())
+                    .eq(UserBan::getUserId, param.getUserId())
+            );
+        }
+        //玩家信息不存在, 并且是解封状态, 直接过
+        if (Objects.equals(param.getStatus(), BanStatusEnum.NORMAL_STATUS.getStatus())) {
+            return Boolean.TRUE;
+        }
+        //查询玩家用户信息
+        UserDTO userDTO = userService.getById(param.getUserId());
+        if (userDTO == null) {
+            throw new BaseException("参数错误, 玩家信息不存在");
+        }
+        return super.save(UserBan.builder()
+                .userId(userDTO.getId())
+                .userName(userDTO.getUsername())
+                .userNickName(userDTO.getNickname())
+                .regTime(userDTO.getCreateTime())
+                .banTime(LocalDateTime.now())
+                .status(BanStatusEnum.BAN_STATUS.getStatus())
+                .operateId(1L)
+                .operateName("赞象 admin")
+                .createTime(LocalDateTime.now())
+                .updateTime(LocalDateTime.now())
+                .build());
+    }
+
 }

+ 31 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/Impl/UserServiceImpl.java

@@ -0,0 +1,31 @@
+package com.zanxiang.manage.service.Impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zanxiang.common.utils.bean.BeanUtils;
+import com.zanxiang.manage.domain.dto.UserDTO;
+import com.zanxiang.manage.service.UserService;
+import com.zanxiang.mybatis.entity.User;
+import com.zanxiang.mybatis.mapper.UserMapper;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-07
+ * @description : 用户信息
+ */
+@Slf4j
+@Service
+public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
+
+    /**
+     * 根据用户id查询信息
+     *
+     * @return : 返回用户信息
+     */
+    @Override
+    public UserDTO getById(Long userId) {
+        return BeanUtils.copy(super.getById(userId), UserDTO.class);
+    }
+
+}

+ 21 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/UserBanService.java

@@ -1,9 +1,30 @@
 package com.zanxiang.manage.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.zanxiang.manage.domain.params.UserBanListParam;
+import com.zanxiang.manage.domain.params.UserBanUpdateParam;
+import com.zanxiang.manage.domain.vo.UserBanVO;
+
 /**
  * @author : lingfeng
  * @time : 2022-06-28
  * @description : 玩家封禁管理
  */
 public interface UserBanService {
+
+    /**
+     * 查询ip封禁列表
+     *
+     * @param param : 查询参数
+     * @return : 返回单页数据
+     */
+    IPage<UserBanVO> list(UserBanListParam param);
+
+    /**
+     * 玩家封禁添加或者更新
+     *
+     * @param param : 玩家封禁更新参数
+     * @return : 返回更新结果
+     */
+    Boolean addOrUpdate(UserBanUpdateParam param);
 }

+ 20 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/UserService.java

@@ -0,0 +1,20 @@
+package com.zanxiang.manage.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zanxiang.manage.domain.dto.UserDTO;
+import com.zanxiang.mybatis.entity.User;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-08
+ * @description : 用户信息
+ */
+public interface UserService extends IService<User> {
+
+    /**
+     * 根据用户id查询信息
+     *
+     * @return : 返回用户信息
+     */
+    UserDTO getById(Long userId);
+}

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

@@ -79,7 +79,7 @@ public class User {
     /**
      * 设备类型
      */
-    private String deviceType;
+    private Integer deviceType;
 
     /**
      * -1 为冻结状态, 1 为试玩状态 2为正常状态

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

@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.*;
 
-import java.util.Date;
+import java.time.LocalDateTime;
 
 /**
  * @author : lingfeng
@@ -28,9 +28,9 @@ public class UserBan {
     private Long id;
 
     /**
-     * ip
+     * 用户id
      */
-    private String userId;
+    private Long userId;
 
     /**
      * 用户账号
@@ -45,12 +45,12 @@ public class UserBan {
     /**
      * 注册时间
      */
-    private Date regTime;
+    private LocalDateTime regTime;
 
     /**
      * 封禁时间
      */
-    private Date banTime;
+    private LocalDateTime banTime;
 
     /**
      * 状态, 0 正常 1 封禁
@@ -76,10 +76,10 @@ public class UserBan {
     /**
      * 创建时间
      */
-    private Date createTime;
+    private LocalDateTime createTime;
 
     /**
      * 更新时间
      */
-    private Date updateTime;
+    private LocalDateTime updateTime;
 }

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

@@ -47,7 +47,7 @@ public class UserToken implements Serializable {
     /**
      * 设备类型;mobile,android,iphone,ipad,web,pc,mac,wxapp
      */
-    private String deviceType;
+    private Integer deviceType;
 
     /**
      * 创建时间

+ 1 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/common/resolver/TokenArgumentResolver.java

@@ -56,7 +56,7 @@ public class TokenArgumentResolver implements HandlerMethodArgumentResolver {
         if (StringUtils.isEmpty(token)) {
             return data;
         }
-        UserTokenDTO tokenInfoByTokenDevice = userTokenService.getTokenInfoByTokenDevice(token, deviceType.toString());
+        UserTokenDTO tokenInfoByTokenDevice = userTokenService.getTokenInfoByTokenDevice(token, deviceType);
         if (tokenInfoByTokenDevice == null) {
             return data;
         }

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

@@ -39,7 +39,7 @@ public class UserController {
     @ApiOperation(value = "用户获取信息详情")
     @PostMapping("/get/user/detail")
     @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
-    public ResultVo getUserDetail(@Validated @RequestBody UserDetailParam userDetailParam, @ValidLogin UserData userData) {
+    public ResultVo getUserDetail(@Validated @RequestBody UserDetailParam userDetailParam, UserData userData) {
         return userService.getUserDetail(userDetailParam, userData);
     }
 }

+ 1 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/dto/UserTokenDTO.java

@@ -35,7 +35,7 @@ public class UserTokenDTO {
     /**
      * 设备类型;mobile,android,iphone,ipad,web,pc,mac,wxapp
      */
-    private String deviceType;
+    private Integer deviceType;
 
     /**
      * 创建时间

+ 1 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/params/CommonParam.java

@@ -37,7 +37,7 @@ public class CommonParam {
 
     @ApiModelProperty("设备类型")
     @JsonAlias("device-type")
-    private String deviceType;
+    private Integer deviceType;
 
 //            "device-os":"",
 //            "device-os_version":"",

+ 8 - 8
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/RegisterLoginServiceImpl.java

@@ -116,7 +116,7 @@ public class RegisterLoginServiceImpl implements RegisterLoginService {
     public ResultVo<UserLoginVO> qqLoginCallback(QqLoginCallbackParam qqLoginCallbackParam, HttpServletRequest request, UserData userData) {
         String code = qqLoginCallbackParam.getCode();
         String state = qqLoginCallbackParam.getState();
-        String deviceType = userData.getDeviceType().toString();
+        Integer deviceType = userData.getDeviceType();
         //验证state,如果不一致,可能被CSRF攻击
         this.checkState(state);
         //获取用户信息
@@ -173,7 +173,7 @@ public class RegisterLoginServiceImpl implements RegisterLoginService {
      */
     @Override
     public ResultVo<UserLoginVO> vxLoginCallback(QqLoginCallbackParam qqLoginCallbackParam, HttpServletRequest request, UserData userData) {
-        String deviceType = userData.getDeviceType().toString();
+        Integer deviceType = userData.getDeviceType();
         String code = qqLoginCallbackParam.getCode();
         String state = qqLoginCallbackParam.getState();
         //验证state,如果不一致,可能被CSRF攻击
@@ -231,7 +231,7 @@ public class RegisterLoginServiceImpl implements RegisterLoginService {
         //插入用户登录记录
         userLoginLogService.addUserLoginLog(realIp, user, registerPasswordParam.getGameId());
         //获取token
-        String userToken = userTokenService.getUserToken(user.getId(), userData.getDeviceType().toString());
+        String userToken = userTokenService.getUserToken(user.getId(), userData.getDeviceType());
         //返回用户token
         return new ResultVo<>(new UserLoginVO(userToken));
     }
@@ -272,14 +272,14 @@ public class RegisterLoginServiceImpl implements RegisterLoginService {
                 .mobile(mobile)
                 .password(RegisterUtil.cmfPassword(password))
                 .deviceId(registerMobileParam.getDeviceId())
-                .deviceType(registerMobileParam.getDeviceType())
+                .deviceType(userData.getDeviceType())
                 .status(AccountStatusEnum.NORMAL_STATUS.getStatus())
                 .createTime(LocalDateTime.now())
                 .updateTime(LocalDateTime.now())
                 .build();
         userService.save(user);
         //获取token
-        String userToken = userTokenService.getUserToken(user.getId(), userData.getDeviceType().toString());
+        String userToken = userTokenService.getUserToken(user.getId(), userData.getDeviceType());
         //登录的ip
         String realIp = IpUtils.getRealIp(request);
         //插入用户登录记录
@@ -323,7 +323,7 @@ public class RegisterLoginServiceImpl implements RegisterLoginService {
             return new ResultVo<>(HttpStatusEnum.USERNAME_OR_PASSWORD_ERR);
         }
         //验证通过, 获取token
-        String userToken = userTokenService.getUserToken(user.getId(), userData.getDeviceType().toString());
+        String userToken = userTokenService.getUserToken(user.getId(), userData.getDeviceType());
         //登录的ip
         String realIp = IpUtils.getRealIp(request);
         //插入用户登录记录
@@ -363,7 +363,7 @@ public class RegisterLoginServiceImpl implements RegisterLoginService {
             return new ResultVo<>(HttpStatusEnum.ACCOUNT_HALT);
         }
         //验证通过, 获取token
-        String userToken = userTokenService.getUserToken(user.getId(), userData.getDeviceType().toString());
+        String userToken = userTokenService.getUserToken(user.getId(), userData.getDeviceType());
         //登录的ip
         String realIp = IpUtils.getRealIp(request);
         //插入用户登录记录
@@ -380,7 +380,7 @@ public class RegisterLoginServiceImpl implements RegisterLoginService {
      * @param userOauthDTO : 用户授权信息
      * @return : 返回应用用户信息
      */
-    private User getUserByUserOauth(String deviceType, Map<String, String> userInfoMap, UserOauthDTO userOauthDTO) {
+    private User getUserByUserOauth(Integer deviceType, Map<String, String> userInfoMap, UserOauthDTO userOauthDTO) {
         if (userOauthDTO != null) {
             return userService.getById(userOauthDTO.getUserId());
         }

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

@@ -118,7 +118,7 @@ public class SmsServiceImpl implements SmsService {
             return new ResultVo<>(HttpStatusEnum.PHONE_NOT_REG);
         }
         //获取token
-        String userToken = userTokenService.getUserToken(userDTO.getId(), userData.getDeviceType().toString());
+        String userToken = userTokenService.getUserToken(userDTO.getId(), userData.getDeviceType());
         //返回
         return new ResultVo<>(HttpStatusEnum.SUCCESS, userToken);
     }

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

@@ -63,7 +63,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
             return new ResultVo<>(HttpStatusEnum.USERNAME_NOT_EXISTS);
         }
         //验证token是否存在
-        HttpStatusEnum checkUserTokenEnum = userTokenService.checkUserToken(token, user.getId(), userData.getDeviceType().toString());
+        HttpStatusEnum checkUserTokenEnum = userTokenService.checkUserToken(token, user.getId(), userData.getDeviceType());
         if (!Objects.equals(HttpStatusEnum.SUCCESS, checkUserTokenEnum)) {
             return new ResultVo<>(checkUserTokenEnum);
         }
@@ -91,7 +91,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
     @Override
     public ResultVo<UserVO> getUserDetail(UserDetailParam userDetailParam, UserData userData) {
         String token = userDetailParam.getToken();
-        String deviceType = userData.getDeviceType().toString();
+        Integer deviceType = userData.getDeviceType();
         UserTokenDTO userTokenDTO = userTokenService.getTokenInfoByTokenDevice(token, deviceType);
         if (userTokenDTO == null) {
             return new ResultVo<>(HttpStatusEnum.INVALID_PARAMS);

+ 7 - 7
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/UserTokenServiceImpl.java

@@ -45,7 +45,7 @@ public class UserTokenServiceImpl extends ServiceImpl<UserTokenMapper, UserToken
      * @return : 返回用户token详情
      */
     @Override
-    public UserTokenDTO getTokenInfoByTokenDevice(String token, String deviceType) {
+    public UserTokenDTO getTokenInfoByTokenDevice(String token, Integer deviceType) {
         //查询缓存信息
         String tokenInfoKey = this.getTokenInfoKey(token, deviceType);
         UserToken userToken = redisUtil.getCache(tokenInfoKey);
@@ -76,7 +76,7 @@ public class UserTokenServiceImpl extends ServiceImpl<UserTokenMapper, UserToken
      * @return : 返回token
      */
     @Override
-    public UserTokenDTO getTokenInfoByUserDevice(Long userId, String deviceType) {
+    public UserTokenDTO getTokenInfoByUserDevice(Long userId, Integer deviceType) {
         //查询缓存信息
         String userTokenKey = this.getUserTokenKey(userId, deviceType);
         UserToken userToken = redisUtil.getCache(userTokenKey);
@@ -108,7 +108,7 @@ public class UserTokenServiceImpl extends ServiceImpl<UserTokenMapper, UserToken
      * @return : 返回token校验结果
      */
     @Override
-    public HttpStatusEnum checkUserToken(String token, Long userId, String deviceType) {
+    public HttpStatusEnum checkUserToken(String token, Long userId, Integer deviceType) {
         UserTokenDTO userTokenDTO = this.getTokenInfoByUserDevice(userId, deviceType);
         if (userTokenDTO != null && Objects.equals(userTokenDTO.getToken(), token)) {
             return HttpStatusEnum.SUCCESS;
@@ -124,7 +124,7 @@ public class UserTokenServiceImpl extends ServiceImpl<UserTokenMapper, UserToken
      * @return : 返回token
      */
     @Override
-    public String getUserToken(Long userId, String deviceType) {
+    public String getUserToken(Long userId, Integer deviceType) {
         //获取token
         String token = this.createToken(userId, deviceType);
         //查询数据库token信息
@@ -189,7 +189,7 @@ public class UserTokenServiceImpl extends ServiceImpl<UserTokenMapper, UserToken
      * @param deviceType : 设备类型
      * @return : 返回token
      */
-    private String createToken(Long userId, String deviceType) {
+    private String createToken(Long userId, Integer deviceType) {
         //生成随机数
         String random = userId + deviceType + UUID.randomUUID().toString() + System.currentTimeMillis();
         //创建token
@@ -208,7 +208,7 @@ public class UserTokenServiceImpl extends ServiceImpl<UserTokenMapper, UserToken
      * @param deviceType : 设备类型
      * @return : 返回用户token的缓存key
      */
-    private String getUserTokenKey(Long userId, String deviceType) {
+    private String getUserTokenKey(Long userId, Integer deviceType) {
         return RedisKeyConstant.USER_TOKEN_KEY + "_" + userId + "_" + deviceType;
     }
 
@@ -219,7 +219,7 @@ public class UserTokenServiceImpl extends ServiceImpl<UserTokenMapper, UserToken
      * @param deviceType : 设备类型
      * @return : 返回用户token的缓存key
      */
-    private String getTokenInfoKey(String token, String deviceType) {
+    private String getTokenInfoKey(String token, Integer deviceType) {
         return RedisKeyConstant.TOKEN_INFO_KEY + "_" + token + "_" + deviceType;
     }
 }

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

@@ -19,7 +19,7 @@ public interface UserTokenService extends IService<UserToken> {
      * @param deviceType : 设备类型
      * @return : 返回用户token详情
      */
-    UserTokenDTO getTokenInfoByTokenDevice(String token, String deviceType);
+    UserTokenDTO getTokenInfoByTokenDevice(String token, Integer deviceType);
 
     /**
      * 通过用户设备获取token详情
@@ -28,7 +28,7 @@ public interface UserTokenService extends IService<UserToken> {
      * @param deviceType : 设备类型
      * @return : 返回token
      */
-    UserTokenDTO getTokenInfoByUserDevice(Long userId, String deviceType);
+    UserTokenDTO getTokenInfoByUserDevice(Long userId, Integer deviceType);
 
     /**
      * 用户token校验
@@ -38,7 +38,7 @@ public interface UserTokenService extends IService<UserToken> {
      * @param deviceType : 设备类型
      * @return : 返回token校验结果
      */
-    HttpStatusEnum checkUserToken(String token, Long userId, String deviceType);
+    HttpStatusEnum checkUserToken(String token, Long userId, Integer deviceType);
 
     /**
      * 获取用户token
@@ -47,7 +47,7 @@ public interface UserTokenService extends IService<UserToken> {
      * @param deviceType : 设备类型
      * @return : 返回token
      */
-    String getUserToken(Long userId, String deviceType);
+    String getUserToken(Long userId, Integer deviceType);
 
     /**
      * 删除用户token