Optimize code

This commit is contained in:
2023-10-31 15:38:48 +08:00
parent 7b2ee34917
commit a8ba913ee2
32 changed files with 156 additions and 58 deletions

View File

@@ -2,8 +2,8 @@ package top.fatweb.api.service.permission
import jakarta.servlet.http.HttpServletRequest
import top.fatweb.api.entity.permission.User
import top.fatweb.api.vo.authentication.LoginVo
import top.fatweb.api.vo.authentication.TokenVo
import top.fatweb.api.vo.permission.LoginVo
import top.fatweb.api.vo.permission.TokenVo
interface IAuthenticationService {
fun login(request: HttpServletRequest, user: User): LoginVo

View File

@@ -5,7 +5,7 @@ import top.fatweb.api.entity.permission.UserInfo
/**
* <p>
* 用户信息表 服务类
* 用户资料表 服务类
* </p>
*
* @author FatttSnake

View File

@@ -7,17 +7,17 @@ import org.slf4j.LoggerFactory
import org.springframework.security.authentication.AuthenticationManager
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken
import org.springframework.stereotype.Service
import top.fatweb.api.constant.SecurityConstants
import top.fatweb.api.entity.permission.LoginUser
import top.fatweb.api.entity.permission.User
import top.fatweb.api.exception.TokenHasExpiredException
import top.fatweb.api.properties.SecurityProperties
import top.fatweb.api.service.permission.IAuthenticationService
import top.fatweb.api.service.permission.IUserService
import top.fatweb.api.util.JwtUtil
import top.fatweb.api.util.RedisUtil
import top.fatweb.api.util.WebUtil
import top.fatweb.api.vo.authentication.LoginVo
import top.fatweb.api.vo.authentication.TokenVo
import top.fatweb.api.vo.permission.LoginVo
import top.fatweb.api.vo.permission.TokenVo
import java.time.LocalDateTime
import java.time.ZoneOffset
@@ -54,18 +54,18 @@ class AuthenticationServiceImpl(
throw RuntimeException("Login failed")
}
val redisKey = "${SecurityConstants.jwtIssuer}_login:" + jwt
redisUtil.setObject(redisKey, loginUser, SecurityConstants.redisTtl, SecurityConstants.redisTtlUnit)
val redisKey = "${SecurityProperties.jwtIssuer}_login:" + jwt
redisUtil.setObject(redisKey, loginUser, SecurityProperties.redisTtl, SecurityProperties.redisTtlUnit)
return LoginVo(jwt, loginUser.user.currentLoginTime, loginUser.user.currentLoginIp)
}
override fun logout(token: String): Boolean = redisUtil.delObject("${SecurityConstants.jwtIssuer}_login:" + token)
override fun logout(token: String): Boolean = redisUtil.delObject("${SecurityProperties.jwtIssuer}_login:" + token)
override fun renewToken(token: String): TokenVo {
val loginUser = WebUtil.getLoginUser() ?: let { throw TokenHasExpiredException() }
val oldRedisKey = "${SecurityConstants.jwtIssuer}_login:" + token
val oldRedisKey = "${SecurityProperties.jwtIssuer}_login:" + token
redisUtil.delObject(oldRedisKey)
val jwt = JwtUtil.createJwt(WebUtil.getLoginUserId().toString())
@@ -73,9 +73,9 @@ class AuthenticationServiceImpl(
throw RuntimeException("Login failed")
}
val redisKey = "${SecurityConstants.jwtIssuer}_login:" + jwt
val redisKey = "${SecurityProperties.jwtIssuer}_login:" + jwt
redisUtil.setObject(
redisKey, loginUser, SecurityConstants.redisTtl, SecurityConstants.redisTtlUnit
redisKey, loginUser, SecurityProperties.redisTtl, SecurityProperties.redisTtlUnit
)
return TokenVo(jwt)

View File

@@ -8,7 +8,7 @@ import top.fatweb.api.service.permission.IUserInfoService
/**
* <p>
* 用户信息表 服务实现类
* 用户资料表 服务实现类
* </p>
*
* @author FatttSnake