|
@@ -144,6 +144,52 @@ public class SysLoginService {
|
|
return tokenService.createToken(loginUser);
|
|
return tokenService.createToken(loginUser);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public String nologin(String thirdToken) {
|
|
|
|
+ // 用户验证
|
|
|
|
+ Authentication authentication;
|
|
|
|
+ String password = Constants.DEFAULT_PASSWORD;
|
|
|
|
+ try {
|
|
|
|
+ // 保存用户
|
|
|
|
+ // 查询第三方用户信息
|
|
|
|
+ String getResult = HttpUtil.createGet(dajiaoguan_token).header("Authorization", Constants.TOKEN_PREFIX + thirdToken).execute().body();
|
|
|
|
+ JSONObject getJson = JSONUtil.parseObj(getResult);
|
|
|
|
+ int infoCode = getJson.getInt("code");
|
|
|
|
+ if (infoCode == 1) {
|
|
|
|
+ // 校验用户是否存在
|
|
|
|
+// String username = getJson.getStr("account");
|
|
|
|
+ String username = "qinxq@zjgmsa";
|
|
|
|
+ if (UserConstants.UNIQUE.equals(userService.checkUserNameUnique(username))) {
|
|
|
|
+ SysUser sysUser = new SysUser();
|
|
|
|
+ // 将此用户新增入系统
|
|
|
|
+ JSONObject data = getJson.getJSONObject("data");
|
|
|
|
+ sysUser.setUserId(data.getLong("userId"));
|
|
|
|
+ sysUser.setUserName(username);
|
|
|
|
+ sysUser.setDeptId(data.getStr("depId"));
|
|
|
|
+ sysUser.setPhonenumber(data.getStr("phone"));
|
|
|
|
+ sysUser.setDelFlag("0");
|
|
|
|
+ sysUser.setStatus("0");
|
|
|
|
+ sysUser.setNickName(data.getStr("name"));
|
|
|
|
+ // 新加入的用户属于普通用户角色
|
|
|
|
+ sysUser.setRoleIds(new Long[]{2L});
|
|
|
|
+ sysUser.setPassword(SecurityUtils.encryptPassword(password));
|
|
|
|
+ userService.insertUser(sysUser);
|
|
|
|
+ }
|
|
|
|
+ // 该方法会去调用UserDetailsServiceImpl.loadUserByUsername
|
|
|
|
+ authentication = authenticationManager
|
|
|
|
+ .authenticate(new UsernamePasswordAuthenticationToken(username, password));
|
|
|
|
+ AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")));
|
|
|
|
+ } else {
|
|
|
|
+ return "";
|
|
|
|
+ }
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ return "";
|
|
|
|
+ }
|
|
|
|
+ LoginUser loginUser = (LoginUser) authentication.getPrincipal();
|
|
|
|
+ recordLoginInfo(loginUser.getUser());
|
|
|
|
+ // 生成token
|
|
|
|
+ return tokenService.createToken(loginUser);
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 校验验证码
|
|
* 校验验证码
|
|
*
|
|
*
|