From 7130d28d70a63767975c9c59e10cc555511976ce Mon Sep 17 00:00:00 2001 From: ‘liusuyi’ <1951119284@qq.com> Date: 星期六, 16 九月 2023 16:21:06 +0800 Subject: [PATCH] 优化 --- ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java | 48 ++++++++---------------------------------------- 1 files changed, 8 insertions(+), 40 deletions(-) diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java index cd67a89..f3fa8aa 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java @@ -50,6 +50,7 @@ @Autowired private ISysConfigService configService; + @Resource RongCloudService rongCloudService; @@ -63,6 +64,8 @@ * @return 缁撴灉 */ public String login(String username, String password, String code, String uuid) { + + boolean captchaEnabled = configService.selectCaptchaEnabled(); // 楠岃瘉鐮佸紑鍏� if (captchaEnabled) { @@ -89,47 +92,10 @@ AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"))); LoginUser loginUser = (LoginUser) authentication.getPrincipal(); recordLoginInfo(loginUser.getUserId()); + + getRongCloudToken(loginUser); // 鐢熸垚token String token = tokenService.createToken(loginUser); - //鑾峰彇铻嶄簯token - getRongCloudToken(loginUser); - return token; - } - public String login(String username, String password, String code, String uuid,Boolean isApp) { - boolean captchaEnabled = configService.selectCaptchaEnabled(); - // 楠岃瘉鐮佸紑鍏� - if (captchaEnabled) { - validateCaptcha(username, code, uuid); - } - // 鐢ㄦ埛楠岃瘉 - Authentication authentication = null; - try { - UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(username, password); - AuthenticationContextHolder.setContext(authenticationToken); - // 璇ユ柟娉曚細鍘昏皟鐢║serDetailsServiceImpl.loadUserByUsername - authentication = authenticationManager.authenticate(authenticationToken); - } catch (Exception e) { - if (e instanceof BadCredentialsException) { - AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.password.not.match"))); - throw new UserPasswordNotMatchException(); - } else { - AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, e.getMessage())); - throw new ServiceException(e.getMessage()); - } - } finally { - AuthenticationContextHolder.clearContext(); - } - AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"))); - LoginUser loginUser = (LoginUser) authentication.getPrincipal(); - recordLoginInfo(loginUser.getUserId()); - // 鐢熸垚token - if(StringUtils.isNotNull(isApp)) - { - loginUser.setIsApp(isApp); - } - String token = tokenService.createToken(loginUser); - //鑾峰彇铻嶄簯token - getRongCloudToken(loginUser); return token; } /** @@ -171,15 +137,17 @@ * * @param loginUser 鐧诲綍鐢ㄦ埛 */ - public void getRongCloudToken(LoginUser loginUser) { + public String getRongCloudToken(LoginUser loginUser) { try { String userId = loginUser.getUserId(); String nickName = loginUser.getUser().getNickName(); String token = rongCloudService.getToken(userId, nickName); + loginUser.setRongCloudToken(token); SysUser sysUser = new SysUser(); sysUser.setUserId(userId); sysUser.setRongCloudToken(token); userService.updateUserProfile(sysUser); + return token; } catch (Exception ex) { throw ex; } -- Gitblit v1.9.3