Преглед изворни кода

Merge remote-tracking branch 'origin/dev0.0.1' into dev0.0.1

xufeng пре 2 година
родитељ
комит
bf45663828

+ 9 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/constant/RedisPrefixConst.java

@@ -0,0 +1,9 @@
+package com.zanxiang.sdk.domain.constant;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-07
+ * @description : redis缓存key通用前缀
+ */
+public class RedisPrefixConst {
+}

+ 99 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/enums/DeviceTypeEnum.java

@@ -0,0 +1,99 @@
+package com.zanxiang.sdk.domain.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-07
+ * @description : 设备类型枚举
+ */
+@Getter
+@AllArgsConstructor
+public enum DeviceTypeEnum {
+
+    /**
+     * 苹果正版sdk
+     */
+    DEVICE_TYPE_IOSAPPLESDK("iosapplesdk", "苹果正版sdk"),
+
+    /**
+     * 苹果免越狱sdk
+     */
+    DEVICE_TYPE_IOSSDK("iossdk", "苹果免越狱sdk"),
+
+    /**
+     * 苹果app
+     */
+    DEVICE_TYPE_IOSAPP("iosapp", "苹果app"),
+
+    /**
+     * 苹果h5app
+     */
+    DEVICE_TYPE_IOSH5APP("iosh5app", "苹果h5app"),
+
+    /**
+     * safari浏览器
+     */
+    DEVICE_TYPE_SAFARI("safari", "safari浏览器"),
+
+    /**
+     * 安卓sdk
+     */
+    DEVICE_TYPE_ANDSDK("andsdk", "安卓sdk"),
+
+    /**
+     * 安卓app
+     */
+    DEVICE_TYPE_ANDAPP("andapp", "安卓app"),
+
+    /**
+     * 安卓h5app
+     */
+    DEVICE_TYPE_ANDH5APP("andh5app", "安卓h5app"),
+
+    /**
+     * 安卓浏览器
+     */
+    DEVICE_TYPE_ANDBROWSER("andbrowser", "安卓浏览器"),
+
+    /**
+     * 微信
+     */
+    DEVICE_TYPE_WEIXIN("weixin", "微信"),
+
+    /**
+     * 电脑
+     */
+    DEVICE_TYPE_PC("pc", "电脑"),
+
+    /**
+     * 广告平台
+     */
+    DEVICE_TYPE_AGENT("agent", "广告平台"),
+
+    /**
+     * 普通wap
+     */
+    DEVICE_TYPE_WAP("wap", "普通wap"),
+
+    /**
+     * 微信小程序
+     */
+    DEVICE_TYPE_MP("mp", "微信小程序"),
+
+    /**
+     * 微信盒子
+     */
+    DEVICE_TYPE_BOX("box", "微信盒子");
+
+    /**
+     * 设备类型
+     */
+    private String deviceType;
+
+    /**
+     * 描述
+     */
+    private String describe;
+}

+ 59 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/enums/SmsTypeEnum.java

@@ -0,0 +1,59 @@
+package com.zanxiang.sdk.domain.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-07
+ * @description : 手机验证码类型枚举
+ */
+@Getter
+@AllArgsConstructor
+public enum SmsTypeEnum {
+
+    /**
+     * 注册
+     */
+    SMS_REG(1, "注册"),
+
+    /**
+     * 注册
+     */
+    SMS_LOGIN(2, "登陆"),
+
+    /**
+     * 修改密码
+     */
+    SMS_MODIFY(3, "修改密码"),
+
+    /**
+     * 身份验证
+     */
+    SMS_ID_VERIFY(4, "身份验证"),
+
+    /**
+     * 找回密码
+     */
+    SMS_FIND_PWD(5, "找回密码"),
+
+    /**
+     * 绑定手机
+     */
+    SMS_BIND(6, "绑定手机"),
+
+    /**
+     * 其他,增加时这个放最后
+     */
+    SMS_OTHER(7, "其他,增加时这个放最后");
+
+    /**
+     * 类型
+     */
+    private Integer type;
+
+    /**
+     * 描述
+     */
+    private String describe;
+}

+ 319 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/enums/UserStatusEnum.java

@@ -0,0 +1,319 @@
+package com.zanxiang.sdk.domain.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-07
+ * @description : 用户状态
+ */
+@Getter
+@AllArgsConstructor
+public enum UserStatusEnum {
+
+    /**
+     * 未知错误
+     */
+    UNKNOWN_ERROR(-9999, "未知错误"),
+
+    /**
+     * 用户名为空
+     */
+    USERNAME_EMPTY(41101, "用户名为空"),
+
+    /**
+     * 用户名含敏感字
+     */
+    USERNAME_SENSITIVE(41102, "用户名含敏感字"),
+
+    /**
+     * 用户名已存在
+     */
+    USERNAME_EXISTS(41103, "用户名已存在"),
+
+    /**
+     * 用户名不存在
+     */
+    USERNAME_NOT_EXISTS(41114, "用户名不存在"),
+
+    /**
+     * 用户名或密码错误
+     */
+    USERNAME_OR_PASSWORD_ERR(41104, "用户名或密码错误"),
+
+    /**
+     * 用户名太短
+     */
+    USERNAME_TOO_SHORT(41105, "用户名太短"),
+
+    /**
+     * 用户名太长
+     */
+    USERNAME_TOO_LONG(41106, "用户名太长"),
+
+    /**
+     * 用户名必须为数字字母组合
+     */
+    USERNAME_BAD_CHAR(41107, "用户名必须为数字字母组合"),
+
+    /**
+     * 账号停用
+     */
+    ACCOUNT_HALT(41108, "账号停用"),
+
+    /**
+     * 账户未绑定邮箱
+     */
+    ACCOUNT_NOT_BIND_EMAIL(41109, "账户未绑定邮箱"),
+
+    /**
+     * 账户未绑定手机
+     */
+    ACCOUNT_NOT_BIND_PHONE(41110, "账户未绑定手机"),
+
+    /**
+     * 用户ID不存在
+     */
+    UID_NOT_EXISTS(41111, "用户ID不存在"),
+
+    /**
+     * 用户ID非法
+     */
+    UID_INVALID(41112, "用户ID非法"),
+
+    /**
+     * 手机号请使用手机注册
+     */
+    USERNAME_LIKE_MOBILE(41113, "手机号请使用手机注册"),
+
+    /**
+     * 密码为空
+     */
+    PASSWORD_EMPTY(41201, "密码为空"),
+
+    /**
+     * 密码必须为英文字符
+     */
+    PASSWORD_BAD_CHAR(41202, "密码必须为英文字符"),
+
+    /**
+     * 密码太长
+     */
+    PASSWORD_TOO_LONG(41203, "密码太长"),
+
+    /**
+     * 密码太短
+     */
+    PASSWORD_TOO_SHORT(41204, "密码太短"),
+
+    /**
+     * 密码错误
+     */
+    PASSWORD_ERROR(41205, "密码错误"),
+
+    /**
+     * 手机号为空
+     */
+    PHONE_EMPTY(41301, "手机号为空"),
+
+    /**
+     * 手机号格式错误
+     */
+    PHONE_ERROR(41302, "手机号格式错误"),
+
+    /**
+     * 手机号或邮箱为空
+     */
+    PHONE_EMAIL_EMPTY(41303, "手机号或邮箱为空"),
+
+    /**
+     * 未绑定手机号
+     */
+    PHONE_NOT_BIND(41304, "未绑定手机号"),
+
+    /**
+     * 手机号已绑定
+     */
+    PHONE_IS_BIND(41305, "手机号已绑定"),
+
+    /**
+     * 验证码发送过于频繁
+     */
+    PHONE_SEND_MORE(41306, "验证码发送过于频繁"),
+
+    /**
+     * 验证码发送失败
+     */
+    PHONE_SEND_ERROR(41307, "验证码发送失败"),
+
+    /**
+     * 验证码已发送请稍后再试
+     */
+    PHONE_HAS_SEND(41308, "验证码已发送请稍后再试"),
+
+    /**
+     * 手机号已注册
+     */
+    PHONE_IS_REG(41309, "手机号已注册"),
+
+    /**
+     * 手机号未注册
+     */
+    PHONE_NOT_REG(41310, "手机号未注册"),
+
+    /**
+     * 请先校验原有手机号
+     */
+    PHONE_NOT_CHECK(41311, "请先校验原有手机号"),
+
+    /**
+     * 手机号绑定账号过多
+     */
+    PHONE_BIND_TOOMUCH(41312, "手机号绑定账号过多"),
+
+    /**
+     * email为空
+     */
+    EMAIL_EMPTY(41351, "email为空"),
+
+    /**
+     * email格式错误
+     */
+    EMAIL_ERROR(41352, "email格式错误"),
+
+    /**
+     * 邮箱未绑定
+     */
+    EMAIL_NOT_BIND(41353, "邮箱未绑定"),
+
+    /**
+     * 邮箱已绑定
+     */
+    EMAIL_IS_BIND(41354, "邮箱已绑定"),
+
+    /**
+     * 验证码发送过于频繁
+     */
+    EMAIL_SEND_MORE(41355, "验证码发送过于频繁"),
+
+    /**
+     * 邮件发送失败
+     */
+    EMAIL_SEND_ERROR(41356, "邮件发送失败"),
+
+    /**
+     * 验证码错误
+     */
+    CODE_ERROR(41601, "验证码错误"),
+
+    /**
+     * 验证码类型错误
+     */
+    CODE_TYPE_ERROR(41602, "验证码类型错误"),
+
+    /**
+     * 验证码类型错误
+     */
+    CODE_NOT_SEND(41603, "验证码类型错误"),
+
+    /**
+     * 验证码已过期
+     */
+    CODE_IS_EXPIRED(41604, "验证码已过期"),
+
+    /**
+     * 配置错误
+     */
+    CONFIG_ERROR(41699, "配置错误"),
+
+    /**
+     * 第三方登录失败
+     */
+    OAUTH_LOGIN_FAIL(41312, "第三方登录失败"),
+
+    /**
+     * 性别错误
+     */
+    GENDER_ERROR(41313, "性别错误"),
+
+    /**
+     * 第三方参数错误
+     */
+    OAUTH_TYPE_ERROR(41314, "第三方参数错误"),
+
+    /**
+     * 参数非法
+     */
+    INVALID_PARAMS(1000, "参数非法"),
+
+    /**
+     * 登陆已过期
+     */
+    LOGIN_IS_OUT(1002, "登陆已过期"),
+
+    /**
+     * 玩家已登录
+     */
+    HAS_LOGIN(1003, "玩家已登录"),
+
+    /**
+     * 积分不足
+     */
+    ITG_NOT_ENOUGH(44001, "积分不足"),
+
+    /**
+     * 昵称为空
+     */
+    NICKNAME_EMPTY(41401, "昵称为空"),
+
+    /**
+     * 昵称含敏感字
+     */
+    NICKNAME_SENSITIVE(41402, "昵称含敏感字"),
+
+    /**
+     * 昵称太短
+     */
+    NICKNAME_TOO_SHORT(41403, "昵称太短"),
+
+    /**
+     * 昵称太长
+     */
+    NICKNAME_TOO_LONG(41404, "昵称太长"),
+
+    /**
+     * 你不是渠道,不能进行此操作
+     */
+    YOU_ARE_NOT_AGENT(41405, "你不是渠道,不能进行此操作"),
+
+    /**
+     * 账号异常,不能进行此操作
+     */
+    MEM_ACCOUNT_ANOMALY(41406, "账号异常,不能进行此操作"),
+
+    /**
+     * 支付宝账号已绑定
+     */
+    ALIPAY_IS_BIND(41407, "支付宝账号已绑定"),
+
+    /**
+     * 请选择账号
+     */
+    SELECT_USERNAME_ERR(41407, "请选择账号"),
+
+    /**
+     * 玩家充值未达标
+     */
+    MEM_NOT_REACH_STAND(41407, "玩家充值未达标");
+
+    /**
+     * 回传类型
+     */
+    private final Integer code;
+
+    /**
+     * 回传名称
+     */
+    private final String msg;
+}

+ 44 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/params/LoginMobileParam.java

@@ -0,0 +1,44 @@
+package com.zanxiang.sdk.domain.params;
+
+import com.fasterxml.jackson.annotation.JsonAlias;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-07
+ * @description :
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class LoginMobileParam extends CommonParam {
+
+    /**
+     * 验证码类型
+     */
+    @JsonAlias("sms-type")
+    private Integer type;
+
+    /**
+     * 手机号
+     */
+    @JsonAlias("sms-mobile")
+    private Long mobile;
+
+    /**
+     * 验证码
+     */
+    @JsonAlias("sms-code")
+    private Integer code;
+
+    /**
+     * 重定向地址
+     */
+    @JsonAlias("redirect_url")
+    private String redirectUrl;
+
+    /**
+     * json类型
+     */
+    private String format;
+}

+ 27 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/params/LoginPasswordParam.java

@@ -0,0 +1,27 @@
+package com.zanxiang.sdk.domain.params;
+
+import com.fasterxml.jackson.annotation.JsonAlias;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-07
+ * @description : 用户登录参数
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class LoginPasswordParam extends CommonParam {
+
+    /**
+     * 用户名
+     */
+    @JsonAlias("mem-username")
+    private String username;
+
+    /**
+     * 密码
+     */
+    @JsonAlias("mem-password")
+    private String password;
+}

+ 80 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/vo/ResultVO.java

@@ -0,0 +1,80 @@
+package com.zanxiang.sdk.domain.vo;
+
+import com.zanxiang.sdk.domain.enums.UserStatusEnum;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+/**
+ * 响应信息主体
+ *
+ * @author ruoyi
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+public class ResultVO<T> implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 成功code
+     */
+    public static final Integer CODE_SUCCESS = 200;
+
+    /**
+     * 成功msg
+     */
+    public static final String CODE_SUCCESS_MSG = "成功";
+
+    /**
+     * 错误码
+     */
+    private Integer code;
+
+    /**
+     * 错误消息
+     */
+    private String msg;
+
+    /**
+     * 返回数据
+     */
+    private T data;
+
+    /**
+     * 构造方法
+     *
+     * @param code : 错误码
+     * @param msg  : 错误消息
+     */
+    private ResultVO(int code, String msg) {
+        this(code, msg, null);
+    }
+
+    /**
+     * 错误信息构造
+     *
+     * @param userStatusEnum : 错误枚举
+     * @param <T>            : 泛型
+     * @return : 返回
+     */
+    public static <T> ResultVO<T> fail(UserStatusEnum userStatusEnum) {
+        return new ResultVO<>(userStatusEnum.getCode(), userStatusEnum.getMsg());
+    }
+
+    /**
+     * 成功返回数据
+     *
+     * @param data : 数据
+     * @param <T>  : 泛型
+     * @return : 返回
+     */
+    public static <T> ResultVO<T> ok(T data) {
+        return new ResultVO<>(CODE_SUCCESS, "成功", data);
+    }
+}

+ 17 - 0
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/vo/UserLoginVO.java

@@ -0,0 +1,17 @@
+package com.zanxiang.sdk.domain.vo;
+
+import lombok.Data;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-07
+ * @description : 用户登录信息返回
+ */
+@Data
+public class UserLoginVO {
+
+    /**
+     * 登录授权的token
+     */
+    private String token;
+}

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

@@ -0,0 +1,14 @@
+package com.zanxiang.sdk.service.Impl;
+
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-07
+ * @description : 用户token管理
+ */
+@Slf4j
+@Service
+public class TokenServiceImpl {
+}

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

@@ -0,0 +1,34 @@
+package com.zanxiang.sdk.service.Impl;
+
+import com.zanxiang.sdk.domain.params.LoginPasswordParam;
+import com.zanxiang.sdk.domain.vo.UserLoginVO;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author : lingfeng
+ * @time : 2022-06-07
+ * @description : 用户信息
+ */
+@Slf4j
+@Service
+public class UserServiceImpl {
+
+    /**
+     * 用户名密码登录
+     *
+     * @param userLoginParam : 登录参数
+     * @return : 返回登录token
+     */
+    public UserLoginVO loginPassword(LoginPasswordParam userLoginParam) {
+        return null;
+    }
+
+    /**
+     * 手机号登录
+     */
+    public UserLoginVO loginMobile(LoginPasswordParam userLoginParam) {
+        return null;
+    }
+
+}