【fix sonar】 ThirdLoginController.java SysUserController.java文件
This commit is contained in:
+1
-1
@@ -399,7 +399,7 @@ public class SysUserController {
|
|||||||
@GetMapping("/generateUserId")
|
@GetMapping("/generateUserId")
|
||||||
public Result<String> generateUserId() {
|
public Result<String> generateUserId() {
|
||||||
Result<String> result = new Result<>();
|
Result<String> result = new Result<>();
|
||||||
log("我执行了,生成用户ID==============================");
|
log.info("我执行了,生成用户ID==============================");
|
||||||
String userId = UUID.randomUUID().toString().replace("-", "");
|
String userId = UUID.randomUUID().toString().replace("-", "");
|
||||||
result.setSuccess(true);
|
result.setSuccess(true);
|
||||||
result.setResult(userId);
|
result.setResult(userId);
|
||||||
|
|||||||
+25
-21
@@ -1,6 +1,7 @@
|
|||||||
package com.jero.modules.system.controller;
|
package com.jero.modules.system.controller;
|
||||||
|
|
||||||
import cn.hutool.crypto.SecureUtil;
|
import cn.hutool.crypto.SecureUtil;
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.xkcoding.justauth.AuthRequestFactory;
|
import com.xkcoding.justauth.AuthRequestFactory;
|
||||||
@@ -45,7 +46,7 @@ public class ThirdLoginController {
|
|||||||
private ISysUserService sysUserService;
|
private ISysUserService sysUserService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ISysThirdAccountService sysThirdAccountService;
|
private ISysThirdAccountService sysThirdAccountService;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private BaseCommonService baseCommonService;
|
private BaseCommonService baseCommonService;
|
||||||
@Autowired
|
@Autowired
|
||||||
@@ -53,6 +54,8 @@ public class ThirdLoginController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private AuthRequestFactory factory;
|
private AuthRequestFactory factory;
|
||||||
|
|
||||||
|
private String TOKEN = "token";
|
||||||
|
|
||||||
@RequestMapping("/render/{source}")
|
@RequestMapping("/render/{source}")
|
||||||
public void render(@PathVariable("source") String source, HttpServletResponse response) throws IOException {
|
public void render(@PathVariable("source") String source, HttpServletResponse response) throws IOException {
|
||||||
log.info("第三方登录进入render:" + source);
|
log.info("第三方登录进入render:" + source);
|
||||||
@@ -61,17 +64,17 @@ public class ThirdLoginController {
|
|||||||
log.info("第三方登录认证地址:" + authorizeUrl);
|
log.info("第三方登录认证地址:" + authorizeUrl);
|
||||||
response.sendRedirect(authorizeUrl);
|
response.sendRedirect(authorizeUrl);
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/{source}/callback")
|
@RequestMapping("/{source}/callback")
|
||||||
public String loginThird(@PathVariable("source") String source, AuthCallback callback,ModelMap modelMap) {
|
public String loginThird(@PathVariable("source") String source, AuthCallback callback,ModelMap modelMap) {
|
||||||
log.info("第三方登录进入callback:" + source + " params:" + JSONObject.toJSONString(callback));
|
log.info("第三方登录进入callback:" + source + " params:" + JSON.toJSONString(callback));
|
||||||
AuthRequest authRequest = factory.get(source);
|
AuthRequest authRequest = factory.get(source);
|
||||||
AuthResponse response = authRequest.login(callback);
|
AuthResponse response = authRequest.login(callback);
|
||||||
log.info(JSONObject.toJSONString(response));
|
log.info(JSON.toJSONString(response));
|
||||||
Result<JSONObject> result = new Result<JSONObject>();
|
Result<JSONObject> result = new Result<>();
|
||||||
if(response.getCode()==2000) {
|
if(response.getCode()==2000) {
|
||||||
|
|
||||||
JSONObject data = JSONObject.parseObject(JSONObject.toJSONString(response.getData()));
|
JSONObject data = JSON.parseObject(JSON.toJSONString(response.getData()));
|
||||||
String username = data.getString("username");
|
String username = data.getString("username");
|
||||||
String avatar = data.getString("avatar");
|
String avatar = data.getString("avatar");
|
||||||
String uuid = data.getString("uuid");
|
String uuid = data.getString("uuid");
|
||||||
@@ -79,12 +82,12 @@ public class ThirdLoginController {
|
|||||||
ThirdLoginModel tlm = new ThirdLoginModel(source, uuid, username, avatar);
|
ThirdLoginModel tlm = new ThirdLoginModel(source, uuid, username, avatar);
|
||||||
//判断有没有这个人
|
//判断有没有这个人
|
||||||
//update-begin-author:wangshuai date:20201118 for:修改成查询第三方账户表
|
//update-begin-author:wangshuai date:20201118 for:修改成查询第三方账户表
|
||||||
LambdaQueryWrapper<SysThirdAccount> query = new LambdaQueryWrapper<SysThirdAccount>();
|
LambdaQueryWrapper<SysThirdAccount> query = new LambdaQueryWrapper<>();
|
||||||
query.eq(SysThirdAccount::getThirdUserUuid, uuid);
|
query.eq(SysThirdAccount::getThirdUserUuid, uuid);
|
||||||
query.eq(SysThirdAccount::getThirdType, source);
|
query.eq(SysThirdAccount::getThirdType, source);
|
||||||
List<SysThirdAccount> thridList = sysThirdAccountService.list(query);
|
List<SysThirdAccount> thridList = sysThirdAccountService.list(query);
|
||||||
SysThirdAccount user = null;
|
SysThirdAccount user = null;
|
||||||
if(thridList==null || thridList.size()==0) {
|
if(thridList==null || thridList.isEmpty()) {
|
||||||
//否则直接创建新账号
|
//否则直接创建新账号
|
||||||
user = saveThirdUser(tlm);
|
user = saveThirdUser(tlm);
|
||||||
}else {
|
}else {
|
||||||
@@ -97,14 +100,14 @@ public class ThirdLoginController {
|
|||||||
String sysUserId = user.getSysUserId();
|
String sysUserId = user.getSysUserId();
|
||||||
SysUser sysUser = sysUserService.getById(sysUserId);
|
SysUser sysUser = sysUserService.getById(sysUserId);
|
||||||
String token = saveToken(sysUser);
|
String token = saveToken(sysUser);
|
||||||
modelMap.addAttribute("token", token);
|
modelMap.addAttribute(TOKEN, token);
|
||||||
}else{
|
}else{
|
||||||
modelMap.addAttribute("token", "绑定手机号,"+""+uuid);
|
modelMap.addAttribute(TOKEN, "绑定手机号,"+""+uuid);
|
||||||
}
|
}
|
||||||
//update-end-author:wangshuai date:20201118 for:从第三方登录查询是否存在用户id,不存在绑定手机号
|
//update-end-author:wangshuai date:20201118 for:从第三方登录查询是否存在用户id,不存在绑定手机号
|
||||||
//update-begin--Author:wangshuai Date:20200729 for:接口在签名校验失败时返回失败的标识码 issues#1441--------------------
|
//update-begin--Author:wangshuai Date:20200729 for:接口在签名校验失败时返回失败的标识码 issues#1441--------------------
|
||||||
}else{
|
}else{
|
||||||
modelMap.addAttribute("token", "登录失败");
|
modelMap.addAttribute(TOKEN, "登录失败");
|
||||||
}
|
}
|
||||||
//update-end--Author:wangshuai Date:20200729 for:接口在签名校验失败时返回失败的标识码 issues#1441--------------------
|
//update-end--Author:wangshuai Date:20200729 for:接口在签名校验失败时返回失败的标识码 issues#1441--------------------
|
||||||
result.setSuccess(false);
|
result.setSuccess(false);
|
||||||
@@ -173,7 +176,7 @@ public class ThirdLoginController {
|
|||||||
result.setSuccess(false);
|
result.setSuccess(false);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
sysUserService.updateById(user);
|
sysUserService.updateById(user);
|
||||||
result.setSuccess(true);
|
result.setSuccess(true);
|
||||||
// 生成token
|
// 生成token
|
||||||
@@ -206,14 +209,15 @@ public class ThirdLoginController {
|
|||||||
redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME / 1000);
|
redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME / 1000);
|
||||||
return token;
|
return token;
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
@RequestMapping(value = "/getLoginUser/{token}/{thirdType}", method = RequestMethod.GET)
|
// @RequestMapping(value = "/getLoginUser/{token}/{thirdType}", method = RequestMethod.GET)
|
||||||
|
@GetMapping("/getLoginUser/{token}/{thirdType}")
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public Result<JSONObject> getThirdLoginUser(@PathVariable("token") String token,@PathVariable("thirdType") String thirdType) throws Exception {
|
public Result<JSONObject> getThirdLoginUser(@PathVariable("token") String token,@PathVariable("thirdType") String thirdType) {
|
||||||
Result<JSONObject> result = new Result<JSONObject>();
|
Result<JSONObject> result ;
|
||||||
String username = JwtUtil.getUsername(token);
|
String username = JwtUtil.getUsername(token);
|
||||||
|
|
||||||
//1. 校验用户是否有效
|
//1. 校验用户是否有效
|
||||||
SysUser sysUser = sysUserService.getUserByName(username);
|
SysUser sysUser = sysUserService.getUserByName(username);
|
||||||
result = sysUserService.checkUserIsEffective(sysUser);
|
result = sysUserService.checkUserIsEffective(sysUser);
|
||||||
@@ -236,7 +240,7 @@ public class ThirdLoginController {
|
|||||||
//用户登录信息
|
//用户登录信息
|
||||||
obj.put("userInfo", sysUser);
|
obj.put("userInfo", sysUser);
|
||||||
//token 信息
|
//token 信息
|
||||||
obj.put("token", token);
|
obj.put(TOKEN, token);
|
||||||
result.setResult(obj);
|
result.setResult(obj);
|
||||||
result.setSuccess(true);
|
result.setSuccess(true);
|
||||||
result.setCode(200);
|
result.setCode(200);
|
||||||
@@ -253,7 +257,7 @@ public class ThirdLoginController {
|
|||||||
@PostMapping("/bindingThirdPhone")
|
@PostMapping("/bindingThirdPhone")
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public Result<String> bindingThirdPhone(@RequestBody JSONObject jsonObject) {
|
public Result<String> bindingThirdPhone(@RequestBody JSONObject jsonObject) {
|
||||||
Result<String> result = new Result<String>();
|
Result<String> result = new Result<>();
|
||||||
String phone = jsonObject.getString("mobile");
|
String phone = jsonObject.getString("mobile");
|
||||||
String thirdUserUuid = jsonObject.getString("thirdUserUuid");
|
String thirdUserUuid = jsonObject.getString("thirdUserUuid");
|
||||||
//校验用户有效性
|
//校验用户有效性
|
||||||
@@ -277,4 +281,4 @@ public class ThirdLoginController {
|
|||||||
result.setResult(token);
|
result.setResult(token);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user