正在显示
1 个修改的文件
包含
19 行增加
和
0 行删除
| @@ -8,15 +8,20 @@ import org.springframework.security.authentication.UsernamePasswordAuthenticatio | @@ -8,15 +8,20 @@ import org.springframework.security.authentication.UsernamePasswordAuthenticatio | ||
| 8 | import org.springframework.security.core.Authentication; | 8 | import org.springframework.security.core.Authentication; |
| 9 | import org.springframework.stereotype.Component; | 9 | import org.springframework.stereotype.Component; |
| 10 | import com.ruoyi.common.constant.Constants; | 10 | import com.ruoyi.common.constant.Constants; |
| 11 | +import com.ruoyi.common.core.domain.entity.SysUser; | ||
| 11 | import com.ruoyi.common.core.domain.model.LoginUser; | 12 | import com.ruoyi.common.core.domain.model.LoginUser; |
| 12 | import com.ruoyi.common.core.redis.RedisCache; | 13 | import com.ruoyi.common.core.redis.RedisCache; |
| 13 | import com.ruoyi.common.exception.CustomException; | 14 | import com.ruoyi.common.exception.CustomException; |
| 14 | import com.ruoyi.common.exception.user.CaptchaException; | 15 | import com.ruoyi.common.exception.user.CaptchaException; |
| 15 | import com.ruoyi.common.exception.user.CaptchaExpireException; | 16 | import com.ruoyi.common.exception.user.CaptchaExpireException; |
| 16 | import com.ruoyi.common.exception.user.UserPasswordNotMatchException; | 17 | import com.ruoyi.common.exception.user.UserPasswordNotMatchException; |
| 18 | +import com.ruoyi.common.utils.DateUtils; | ||
| 17 | import com.ruoyi.common.utils.MessageUtils; | 19 | import com.ruoyi.common.utils.MessageUtils; |
| 20 | +import com.ruoyi.common.utils.ServletUtils; | ||
| 21 | +import com.ruoyi.common.utils.ip.IpUtils; | ||
| 18 | import com.ruoyi.framework.manager.AsyncManager; | 22 | import com.ruoyi.framework.manager.AsyncManager; |
| 19 | import com.ruoyi.framework.manager.factory.AsyncFactory; | 23 | import com.ruoyi.framework.manager.factory.AsyncFactory; |
| 24 | +import com.ruoyi.system.service.ISysUserService; | ||
| 20 | 25 | ||
| 21 | /** | 26 | /** |
| 22 | * 登录校验方法 | 27 | * 登录校验方法 |
| @@ -35,6 +40,9 @@ public class SysLoginService | @@ -35,6 +40,9 @@ public class SysLoginService | ||
| 35 | @Autowired | 40 | @Autowired |
| 36 | private RedisCache redisCache; | 41 | private RedisCache redisCache; |
| 37 | 42 | ||
| 43 | + @Autowired | ||
| 44 | + private ISysUserService userService; | ||
| 45 | + | ||
| 38 | /** | 46 | /** |
| 39 | * 登录验证 | 47 | * 登录验证 |
| 40 | * | 48 | * |
| @@ -82,7 +90,18 @@ public class SysLoginService | @@ -82,7 +90,18 @@ public class SysLoginService | ||
| 82 | } | 90 | } |
| 83 | AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"))); | 91 | AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"))); |
| 84 | LoginUser loginUser = (LoginUser) authentication.getPrincipal(); | 92 | LoginUser loginUser = (LoginUser) authentication.getPrincipal(); |
| 93 | + recordLoginInfo(loginUser.getUser()); | ||
| 85 | // 生成token | 94 | // 生成token |
| 86 | return tokenService.createToken(loginUser); | 95 | return tokenService.createToken(loginUser); |
| 87 | } | 96 | } |
| 97 | + | ||
| 98 | + /** | ||
| 99 | + * 记录登录信息 | ||
| 100 | + */ | ||
| 101 | + public void recordLoginInfo(SysUser user) | ||
| 102 | + { | ||
| 103 | + user.setLoginIp(IpUtils.getIpAddr(ServletUtils.getRequest())); | ||
| 104 | + user.setLoginDate(DateUtils.getNowDate()); | ||
| 105 | + userService.updateUserProfile(user); | ||
| 106 | + } | ||
| 88 | } | 107 | } |
-
请 注册 或 登录 后发表评论