diff --git a/mallinkCApi/src/main/java/com/simple/controller/WxUserGrantController.java b/mallinkCApi/src/main/java/com/simple/controller/WxUserGrantController.java index 1c19c5c5f..594cde93c 100755 --- a/mallinkCApi/src/main/java/com/simple/controller/WxUserGrantController.java +++ b/mallinkCApi/src/main/java/com/simple/controller/WxUserGrantController.java @@ -233,6 +233,36 @@ public class WxUserGrantController extends BaseController { } } + /** + * 检查用户状态 + * @return + */ + @GetMapping("/checkUserStatus") + @ApiOperation(value = "判断是否是老用户", notes="") + public ResultData checkUserStatus() { + Map resultMap = new HashMap(); + WxCUser user = getUser(); + if (!StringUtils.isBlank(user.getUnionId())) { + resultMap.put("unionId", user.getUnionId()); + } + if (!StringUtils.isBlank(user.getPhone())) { + resultMap.put("phone", user.getPhone()); + } + if (StringUtils.isBlank(user.getUnionId())) { + logger.warn("用户昵称未授权,跳转到用户授权页!"); + return new ResultData(ErrorCode.NICK_NAME_NOT_FOUND.getCode(), "用户昵称未授权,请跳转到用户昵称授权页!", resultMap); + } + if (StringUtils.isBlank(user.getPhone())) { + logger.warn("用户手机号未授权,跳转到授权手机号页!"); + return new ResultData(ErrorCode.PHONE_NOT_FOUND.getCode(), "用户手机号未授权,请跳转到授权手机号页!", resultMap); + } + if (user.getPhone().contains("*")) { + logger.warn("用户手机号已加密,跳转到手工输入手机号页!"); + return new ResultData(ErrorCode.PHONE_IS_ENCRYPTED.getCode(), "用户手机号已加密,手工输入手机号页!", resultMap); + } + return new ResultData(Result.SUCCESS, "是老用户,已完成所有授权", resultMap); + } + @ApiOperation("获取当前用户信息") @GetMapping("/userinfo") public ResultData getUserInfo() { diff --git a/mallinkService/src/main/java/com/simple/common/ErrorCode.java b/mallinkService/src/main/java/com/simple/common/ErrorCode.java index 967a792a3..8c86b9ec7 100644 --- a/mallinkService/src/main/java/com/simple/common/ErrorCode.java +++ b/mallinkService/src/main/java/com/simple/common/ErrorCode.java @@ -95,7 +95,10 @@ public enum ErrorCode{ */ SESSION_KEY_DECODE_ERR(11001, "session_key/openId解密失败"), NICK_NAME_DECODE_ERR(11002, "nickName,unionId解密失败"), - PHONE_DECODE_ERR(11002, "Phoned解密失败"), + PHONE_DECODE_ERR(11003, "Phone解密失败"), + NICK_NAME_NOT_FOUND(11004, "nickName,unionId未授权"), + PHONE_NOT_FOUND(11005, "Phone未授权"), + PHONE_IS_ENCRYPTED(11006, "Phone已加密"), /**