feat(新增): 用户退出登录
This commit is contained in:
parent
15176c0b5a
commit
175e238852
|
@ -30,7 +30,7 @@ open class BaseContext {
|
|||
}
|
||||
|
||||
@JvmStatic
|
||||
fun getLoginVo(): LoginVo {
|
||||
fun getLoginVo(): LoginVo? {
|
||||
return loginVo.get()
|
||||
}
|
||||
|
||||
|
|
|
@ -9,13 +9,12 @@ import lombok.Data
|
|||
class RedisUserConstant {
|
||||
companion object {
|
||||
// 管理员用户
|
||||
private const val ADMIN_LOGIN_INFO_PREFIX: String = "ADMIN::LOGIN_INFO::"
|
||||
private const val ADMIN_EMAIL_CODE_PREFIX: String = "ADMIN::EMAIL_CODE::"
|
||||
private const val ADMIN_LOGIN_INFO_PREFIX: String = "admin::login_info::"
|
||||
private const val ADMIN_EMAIL_CODE_PREFIX: String = "admin::email_code::"
|
||||
|
||||
// 普通用户
|
||||
private const val USER_LOGIN_INFO_PREFIX: String = "USER::LOGIN_INFO::"
|
||||
private const val USER_EMAIL_CODE_PREFIX: String = "USER::EMAIL_CODE::"
|
||||
private const val USER_DO_LIKE_PREFIX: String = "USER::doLike::"
|
||||
private const val USER_LOGIN_INFO_PREFIX: String = "user::login_info::"
|
||||
private const val USER_EMAIL_CODE_PREFIX: String = "user::email_code::"
|
||||
|
||||
/**
|
||||
* * 管理员用户登录信息
|
||||
|
@ -60,16 +59,5 @@ class RedisUserConstant {
|
|||
fun getUserEmailCodePrefix(user: String): String {
|
||||
return USER_EMAIL_CODE_PREFIX + user
|
||||
}
|
||||
|
||||
/**
|
||||
* * 用户点赞操作
|
||||
*
|
||||
* @param user 用户名
|
||||
* @return 用户点赞key
|
||||
*/
|
||||
@JvmStatic
|
||||
fun getUserDoLikePrefix(user: String): String {
|
||||
return USER_DO_LIKE_PREFIX + user
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
package cn.bunny.dao.pojo.enums
|
||||
|
||||
/**
|
||||
* 数据库操作类型
|
||||
*/
|
||||
enum class OperationTypes {
|
||||
UPDATE, INSERT
|
||||
}
|
|
@ -9,7 +9,7 @@ import lombok.Getter
|
|||
enum class ResultCodeEnum(val code: Int, val message: String) {
|
||||
// 成功操作 200
|
||||
SUCCESS(200, "操作成功"),
|
||||
SUCCESS_LOGOUT(200, "退出成功"),
|
||||
LOGOUT_SUCCESS(200, "退出成功"),
|
||||
EMAIL_CODE_SEND_SUCCESS(200, "邮箱验证码已发送"),
|
||||
|
||||
// 验证错误 201
|
||||
|
|
|
@ -14,7 +14,7 @@ import org.springframework.web.bind.annotation.RestController;
|
|||
*/
|
||||
@Tag(name = "系统路由", description = "系统路由相关接口")
|
||||
@RestController
|
||||
@RequestMapping("/router")
|
||||
@RequestMapping("admin/router")
|
||||
public class RouterController {
|
||||
|
||||
}
|
||||
|
|
|
@ -43,4 +43,11 @@ class UserController {
|
|||
val vo: RefreshTokenVo = userService.refreshToken(dto)
|
||||
return Result.success(vo)
|
||||
}
|
||||
|
||||
@Operation(summary = "退出登录", description = "退出登录")
|
||||
@PostMapping("logOut")
|
||||
fun logOut(): Result<String> {
|
||||
userService.logOut()
|
||||
return Result.success(ResultCodeEnum.LOGOUT_SUCCESS)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,4 +31,9 @@ public interface UserService extends IService<AdminUser> {
|
|||
*/
|
||||
@NotNull
|
||||
RefreshTokenVo refreshToken(@NotNull RefreshTokenDto dto);
|
||||
|
||||
/**
|
||||
* * 退出登录
|
||||
*/
|
||||
void logOut();
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package cn.bunny.services.service.impl
|
||||
|
||||
import cn.bunny.common.service.context.BaseContext
|
||||
import cn.bunny.common.service.exception.BunnyException
|
||||
import cn.bunny.common.service.utils.JwtHelper
|
||||
import cn.bunny.dao.dto.system.RefreshTokenDto
|
||||
|
@ -89,5 +90,13 @@ internal class UserServiceImpl : ServiceImpl<UserMapper?, AdminUser?>(), UserSer
|
|||
|
||||
return refreshTokenVo
|
||||
}
|
||||
|
||||
/**
|
||||
* * 退出登录
|
||||
*/
|
||||
override fun logOut() {
|
||||
val loginVo = BaseContext.getLoginVo() ?: throw BunnyException(ResultCodeEnum.FAIL_REQUEST_NOT_AUTH)
|
||||
redisTemplate.delete(RedisUserConstant.getAdminLoginInfoPrefix(loginVo.username!!))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue